{
  "components": {
    "headers": {},
    "parameters": {},
    "requestBodies": {},
    "responses": {},
    "schemas": {
      "A2PComplianceDTO": {
        "properties": {
          "a2pOptInForm1": {
            "description": "A2P Opt In Form 1",
            "example": "I agree to receive marketing communications from [business name]",
            "type": "string"
          },
          "a2pOptInForm1PreChecked": {
            "description": "Pre-checked state for A2P Opt In Form 1 checkbox",
            "example": false,
            "type": "boolean"
          },
          "a2pOptInForm1ShowCheckbox": {
            "description": "Show checkbox for A2P Opt In Form 1",
            "example": true,
            "type": "boolean"
          },
          "a2pOptInForm2": {
            "description": "A2P Opt In Form 2",
            "example": "I agree to receive marketing communications from [business name]",
            "type": "string"
          },
          "a2pOptInForm2PreChecked": {
            "description": "Pre-checked state for A2P Opt In Form 2 checkbox",
            "example": false,
            "type": "boolean"
          },
          "a2pOptInForm2ShowCheckbox": {
            "description": "Show checkbox for A2P Opt In Form 2",
            "example": true,
            "type": "boolean"
          },
          "enableA2PCompliance": {
            "description": "Enable A2P Compliance",
            "example": true,
            "type": "boolean"
          },
          "isA2POptInForm1": {
            "description": "Is A2P Opt In Form 1 enabled",
            "example": true,
            "type": "boolean"
          },
          "isA2POptInForm2": {
            "description": "Is A2P Opt In Form 2",
            "example": true,
            "type": "boolean"
          },
          "messageType": {
            "description": "Message Type",
            "example": "A2P",
            "type": "string"
          },
          "privacyPolicyLink": {
            "description": "Privacy Policy Link",
            "example": "https://example.com/privacy-policy",
            "type": "string"
          },
          "termsOfServiceLink": {
            "description": "Terms of Service",
            "example": "https://example.com/terms-of-service",
            "type": "string"
          }
        },
        "type": "object"
      },
      "AccountsListResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Accounts",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountsListResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "accounts": [
                {
                  "id": "aF3KhyL8JIuBwzK3m7Ly_Lx1EI6YIgQYMQi0ytFXv_12554616564525983496",
                  "name": "Sample Account",
                  "platform": "google"
                }
              ],
              "groups": [
                {
                  "id": "6284c43d519161e96cc09c13",
                  "name": "Primary"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "AccountsListResponseSchema": {
        "properties": {
          "accounts": {
            "description": "Array of connected social media accounts",
            "example": [
              {
                "id": "aF3KhyL8JIuBwzK3m7Ly_Lx1EI6YIgQYMQi0ytFXv_12554616564525983496",
                "name": "Sample Account",
                "platform": "google",
                "type": "location"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GetAccountSchema"
            },
            "type": "array"
          },
          "groups": {
            "description": "Array of account groups",
            "example": [
              {
                "accountIds": [
                  "6494063f4260855c1c5776b5_mhoUgTPkz19vjF5Qu7Av_2774080328752823730"
                ],
                "id": "6284c43d519161e96cc09c13",
                "name": "Primary"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GetGroupSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "AcknowledgementDetailsDTO": {
        "properties": {
          "icon": {
            "description": "Icon",
            "example": "check",
            "type": "string"
          },
          "liveChatIcon": {
            "description": "Icon for live chat",
            "example": "check",
            "type": "string"
          },
          "liveChatPlaceholderColor": {
            "description": "Placeholder color for live chat",
            "example": "#000",
            "type": "string"
          },
          "placeholderColor": {
            "description": "Placeholder color",
            "example": "#000",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ActionDataDTO": {
        "properties": {
          "agentId": {
            "description": "Agent ID where the action belongs",
            "example": "agentId123",
            "type": "string"
          },
          "details": {
            "description": "Action-specific details. The structure depends on the action type. For TRIGGER_WORKFLOW use triggerWorkflowDto, for UPDATE_CONTACT_FIELD use updateContactFieldDto, for APPOINTMENT_BOOKING use appointmentBookingDto, for STOP_BOT use stopBotDto, for HUMAN_HAND_OVER use humanHandOverDto, for ADVANCED_FOLLOWUP use advancedFollowupDto, and for TRANSFER_BOT use transferBotDto.",
            "oneOf": [
              {
                "$ref": "#/components/schemas/triggerWorkflowDto"
              },
              {
                "$ref": "#/components/schemas/updateContactFieldDto"
              },
              {
                "$ref": "#/components/schemas/appointmentBookingDto"
              },
              {
                "$ref": "#/components/schemas/stopBotDto"
              },
              {
                "$ref": "#/components/schemas/humanHandOverDto"
              },
              {
                "$ref": "#/components/schemas/advancedFollowupDto"
              },
              {
                "$ref": "#/components/schemas/transferBotDto"
              }
            ]
          },
          "id": {
            "description": "Unique identifier for the action",
            "example": "actionId123",
            "type": "string"
          },
          "name": {
            "description": "Name of the action",
            "example": "Trigger Workflow",
            "type": "string"
          },
          "type": {
            "description": "Type of the action",
            "enum": [
              "triggerWorkflow",
              "updateContactField",
              "appointmentBooking",
              "stopBot",
              "humanHandOver",
              "advancedFollowup",
              "transferBot"
            ],
            "example": "triggerWorkflow",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "type",
          "details"
        ],
        "type": "object"
      },
      "ActionsIdDto": {
        "properties": {
          "id": {
            "description": "Unique identifier for the action.",
            "example": "actionId123",
            "type": "string"
          },
          "type": {
            "description": "type of action.",
            "enum": [
              "triggerWorkflow",
              "updateContactField",
              "appointmentBooking",
              "stopBot",
              "humanHandOver",
              "advancedFollowup",
              "transferBot"
            ],
            "example": "triggerWorkflow",
            "type": "string"
          }
        },
        "required": [
          "id",
          "type"
        ],
        "type": "object"
      },
      "AdCampaignDTO": {
        "properties": {
          "adCampaignGroupId": {
            "description": "Parent campaign group identifier",
            "example": "cg_abc123",
            "type": "string"
          },
          "adCampaignId": {
            "description": "LinkedIn campaign resource ID",
            "example": "123456789",
            "type": "string"
          },
          "ads": {
            "description": "Ads in the campaign",
            "example": [
              {
                "headline": "Your next career move",
                "name": "Ad 1"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/LinkedInAdDTO"
            },
            "type": "array"
          },
          "audience": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudienceDTO"
              }
            ],
            "description": "Campaign audience targeting",
            "example": {
              "geoLocations": [],
              "targetAudience": {
                "exclude": [],
                "include": []
              }
            }
          },
          "campaignType": {
            "description": "LinkedIn campaign type",
            "example": "SPONSORED_UPDATES",
            "type": "string"
          },
          "id": {
            "description": "Internal campaign identifier",
            "example": "camp_abc123",
            "type": "string"
          },
          "linkedInError": {
            "description": "LinkedIn API error message",
            "example": "Bid below minimum",
            "type": "string"
          },
          "locale": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocaleDTO"
              }
            ],
            "description": "Campaign locale",
            "example": {
              "country": "US",
              "language": "en"
            }
          },
          "mediaType": {
            "description": "Creative media type for the campaign",
            "enum": [
              "STANDARD_UPDATE",
              "SINGLE_VIDEO",
              "CAROUSEL"
            ],
            "example": "STANDARD_UPDATE",
            "type": "string"
          },
          "meta": {
            "description": "Additional campaign metadata",
            "example": {},
            "type": "object"
          },
          "name": {
            "description": "Campaign name",
            "example": "Q1 Lead Gen Campaign",
            "type": "string"
          },
          "publishingStatus": {
            "description": "Publishing status",
            "enum": [
              "DRAFT",
              "SCHEDULED",
              "PUBLISHED",
              "PUBLISHING",
              "FAILED",
              "IN_REVIEW",
              "PAUSED",
              "ARCHIVED",
              "WITH_ISSUES",
              "REJECTED"
            ],
            "example": "PUBLISHED",
            "type": "string"
          },
          "unitCost": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UnitCostDTO"
              }
            ],
            "description": "Bid unit cost",
            "example": {
              "amount": 500
            }
          }
        },
        "type": "object"
      },
      "AdCampaignGroupDataDTO": {
        "properties": {
          "adBudgetOptimization": {
            "description": "Ad budget optimization mode",
            "enum": [
              "MAXIMUM_DELIVERY",
              "COST_CAP"
            ],
            "example": "MAX_REACH",
            "type": "string"
          },
          "adCampaignGroupId": {
            "description": "LinkedIn campaign group resource ID",
            "example": "123456789",
            "type": "string"
          },
          "adCampaigns": {
            "description": "Child ad campaigns",
            "example": [
              {
                "name": "Campaign 1",
                "publishingStatus": "PUBLISHED"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AdCampaignDTO"
            },
            "type": "array"
          },
          "budget": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedInBudgetDTO"
              }
            ],
            "description": "Campaign group budget",
            "example": {
              "amount": 10000,
              "budgetType": "DAILY"
            }
          },
          "id": {
            "description": "Internal ID",
            "example": "cg_abc123",
            "type": "string"
          },
          "linkedInAdAccountId": {
            "description": "LinkedIn ad account identifier",
            "example": "12345678",
            "type": "string"
          },
          "linkedInError": {
            "description": "LinkedIn API error message",
            "example": "Budget below minimum",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "loc_abc123",
            "type": "string"
          },
          "meta": {
            "description": "Additional metadata",
            "example": {},
            "type": "object"
          },
          "name": {
            "description": "Campaign group name",
            "example": "Q1 Lead Gen",
            "type": "string"
          },
          "objectiveType": {
            "description": "Campaign group objective",
            "enum": [
              "LEAD_GENERATION",
              "WEBSITE_VISIT"
            ],
            "example": "LEAD_GENERATION",
            "type": "string"
          },
          "publishingStatus": {
            "description": "Publishing status",
            "enum": [
              "DRAFT",
              "SCHEDULED",
              "PUBLISHED",
              "PUBLISHING",
              "FAILED",
              "IN_REVIEW",
              "PAUSED",
              "ARCHIVED",
              "WITH_ISSUES",
              "REJECTED"
            ],
            "example": "PUBLISHED",
            "type": "string"
          },
          "unpublishedChanges": {
            "description": "Whether the campaign group has unpublished changes",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "AdScheduleTargetDTO": {
        "properties": {
          "dayOfWeek": {
            "description": "Day of the week for this schedule",
            "enum": [
              "MONDAY",
              "TUESDAY",
              "WEDNESDAY",
              "THURSDAY",
              "FRIDAY",
              "SATURDAY",
              "SUNDAY"
            ],
            "example": "MONDAY",
            "type": "string"
          },
          "endHour": {
            "description": "End hour in 24h format (0-23)",
            "example": 17,
            "type": "number"
          },
          "endMinute": {
            "description": "Minute mark the schedule ends at",
            "enum": [
              "ZERO",
              "FIFTEEN",
              "THIRTY",
              "FORTY_FIVE"
            ],
            "example": "ZERO",
            "type": "string"
          },
          "startHour": {
            "description": "Start hour in 24h format (0-23)",
            "example": 9,
            "type": "number"
          },
          "startMinute": {
            "description": "Minute mark the schedule starts at",
            "enum": [
              "ZERO",
              "FIFTEEN",
              "THIRTY",
              "FORTY_FIVE"
            ],
            "example": "ZERO",
            "type": "string"
          }
        },
        "required": [
          "startMinute",
          "endMinute",
          "dayOfWeek",
          "startHour",
          "endHour"
        ],
        "type": "object"
      },
      "AddContactToCampaignDto": {
        "properties": {},
        "type": "object"
      },
      "AddFaqDTO": {
        "properties": {
          "answer": {
            "description": "faq answer as a string",
            "example": "The capital of France is Paris.",
            "type": "string"
          },
          "knowledgeBaseId": {
            "description": "knowledge base ID as string",
            "example": "710KoEzy793Fxubft0bc",
            "type": "string"
          },
          "locationId": {
            "description": "location ID as string",
            "example": "HqDZpF8GH3qvgJTmKCoL",
            "type": "string"
          },
          "question": {
            "description": "faq question as a string",
            "example": "What is the capital of France?",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "question",
          "answer",
          "knowledgeBaseId"
        ],
        "type": "object"
      },
      "AddMessageAttachmentsDto": {
        "properties": {
          "attachments": {
            "description": "Array of attachment URLs to set on the message (replaces existing). Maximum 5 URLs.",
            "example": [
              "https://provider.com/recordings/call-123.mp3"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "attachments"
        ],
        "type": "object"
      },
      "AdditionalDetailsDTO": {
        "properties": {
          "calendarEvents": {
            "description": "Include calendar events in the response",
            "example": false,
            "type": "boolean"
          },
          "notes": {
            "description": "Include notes in the response",
            "example": false,
            "type": "boolean"
          },
          "tasks": {
            "description": "Include tasks in the response",
            "example": false,
            "type": "boolean"
          },
          "unReadConversations": {
            "description": "Include unread conversations count in the response",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "notes",
          "tasks",
          "calendarEvents",
          "unReadConversations"
        ],
        "type": "object"
      },
      "AdditionalEmailsDto": {
        "properties": {
          "email": {
            "example": "alex@example.com",
            "type": "string"
          }
        },
        "required": [
          "email"
        ],
        "type": "object"
      },
      "Address": {
        "properties": {
          "addressLine1": {
            "type": "string"
          },
          "addressLine2": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "countryCode": {
            "enum": [
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CA",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "KR",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "GB",
              "UA",
              "AE",
              "US",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "type": "string"
          },
          "postalCode": {
            "type": "string"
          },
          "state": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "AddressDto": {
        "properties": {
          "addressLine1": {
            "description": "Address Line 1",
            "example": "9931 Beechwood",
            "type": "string"
          },
          "addressLine2": {
            "description": "Address Line 2",
            "example": "Beechwood",
            "type": "string"
          },
          "city": {
            "description": "City",
            "example": "St. Houston",
            "type": "string"
          },
          "countryCode": {
            "description": "Country Code",
            "example": "US",
            "type": "string"
          },
          "postalCode": {
            "description": "Postal Code",
            "example": "559-6993",
            "type": "string"
          },
          "state": {
            "description": "State",
            "example": "TX",
            "type": "string"
          }
        },
        "type": "object"
      },
      "AdvanceSettingsDTO": {
        "properties": {
          "aTwoPCompliance": {
            "allOf": [
              {
                "$ref": "#/components/schemas/A2PComplianceDTO"
              }
            ],
            "description": "A2P Compliance",
            "example": {
              "a2pComplianceMessage": "This is a A2P compliance message",
              "enableA2PCompliance": true,
              "isA2POptInForm2": true,
              "marketingComplianceMessage": "This is a marketing compliance message",
              "privacyPolicyLink": "https://example.com/privacy-policy",
              "termsOfServiceLink": "https://example.com/terms-of-service"
            }
          },
          "allInOneChatTypes": {
            "description": "Chat types included in the all-in-one widget",
            "example": [
              "liveChat",
              "waChat"
            ],
            "items": {
              "enum": [
                "liveChat",
                "waChat",
                "emailChat",
                "allInOneChat",
                "voiceAiChat",
                "facebookChat",
                "instagramChat",
                "webChat"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "allInOneInitialMsg": {
            "description": "All In One Initial Msg",
            "example": "Choose a chat option to get started.",
            "type": "string"
          },
          "brandingTitle": {
            "description": "Branding Title",
            "example": "Agency",
            "type": "string"
          },
          "businessOfficeHours": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessOfficeHoursDTO"
              }
            ],
            "description": "Business Office Hours",
            "example": {
              "enableBusinessHours": false,
              "timezone": "UTC"
            }
          },
          "contactFormIntroMessage": {
            "description": "Contact Form Intro Message",
            "example": "Please share contact details",
            "type": "string"
          },
          "contactFormOptions": {
            "description": "Contact form field configuration",
            "example": [
              {
                "dataType": "STANDARD_FIELD",
                "label": "Email",
                "required": true,
                "value": "email"
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "contactFormSystemMessage": {
            "description": "Contact Form System Message",
            "example": "Please share contact details",
            "type": "string"
          },
          "defaultConsentCheck": {
            "description": "By default consent check for contact form",
            "example": true,
            "type": "boolean"
          },
          "enableContactForm": {
            "description": "Boolean for showing contact form at start",
            "example": true,
            "type": "boolean"
          },
          "fbPage": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FBPageDTO"
              }
            ],
            "description": "Facebook Page",
            "example": {
              "facebookPageId": "1234567890",
              "facebookPageName": "My Page"
            }
          },
          "instagramPage": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InstagramPageDTO"
              }
            ],
            "description": "Instagram Page",
            "example": {
              "instagramPageId": "1234567890",
              "instagramUsername": "mypage"
            }
          },
          "playNotificationSound": {
            "description": "Play Notification Sound",
            "example": false,
            "type": "boolean"
          },
          "prefilledMessageText": {
            "description": "Prefilled Message Text",
            "example": "I want to know more",
            "type": "string"
          },
          "redirect": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RedirectDTO"
              }
            ],
            "description": "Redirect Object",
            "example": {
              "redirectAction": false,
              "redirectWebsite": "https://example.com"
            }
          },
          "voiceAiAgent": {
            "description": "Voice AI Agent",
            "example": {},
            "type": "object"
          },
          "voiceAiSendActionText": {
            "description": "Voice Ai Send Action Text",
            "example": "Call Now",
            "type": "string"
          }
        },
        "type": "object"
      },
      "AffiliateListMetaResponseDto": {
        "properties": {
          "count": {
            "description": "Total affiliates matching the applied filters",
            "example": 42,
            "type": "number"
          }
        },
        "required": [
          "count"
        ],
        "type": "object"
      },
      "AgencyPlanResponseDto": {
        "properties": {
          "addOns": {
            "description": "Array of add-ons included in the plan",
            "example": [
              "CONVERSATIONS_AI",
              "CP_BRANDED_APP_49",
              "WORDPRESS_V1"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "categoryId": {
            "description": "Category ID for the plan",
            "example": "66911cdc98508ec2731979b9",
            "type": "string"
          },
          "contactLimit": {
            "description": "Contact limit for the plan",
            "example": 50,
            "type": "number"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-07-31T07:54:41.885Z",
            "type": "string"
          },
          "description": {
            "description": "Description of the plan",
            "example": "AED 1.5",
            "type": "string"
          },
          "isSaaSV2": {
            "description": "Indicates if this is a SaaS V2 plan",
            "example": true,
            "type": "boolean"
          },
          "planId": {
            "description": "Unique identifier for the plan",
            "example": "66c4d36534f21f900dc2a265",
            "type": "string"
          },
          "planLevel": {
            "description": "Level of the plan (0-4)",
            "example": 0,
            "type": "number"
          },
          "prices": {
            "description": "Pricing information for the plan",
            "items": {
              "properties": {
                "active": {
                  "description": "Indicates if the price is active",
                  "example": true,
                  "type": "boolean"
                },
                "amount": {
                  "description": "Amount of the price",
                  "example": 150,
                  "type": "number"
                },
                "billingInterval": {
                  "description": "Billing interval for the plan",
                  "enum": [
                    "month",
                    "year"
                  ],
                  "example": "month",
                  "type": "string"
                },
                "currency": {
                  "description": "Currency of the price",
                  "example": "AED",
                  "type": "string"
                },
                "id": {
                  "description": "ID of the price",
                  "example": "66a9edbfcc6c505a22db7976",
                  "type": "string"
                },
                "symbol": {
                  "description": "Symbol of the price",
                  "example": "$",
                  "type": "string"
                }
              },
              "type": "object"
            },
            "type": "array"
          },
          "productId": {
            "description": "Product ID for the plan",
            "example": "66a9edbfcc6c5090bedb7974",
            "type": "string"
          },
          "providerLocationId": {
            "description": "Provider location ID",
            "example": "r06mdj4OrrERzYDvsOdh",
            "type": "string"
          },
          "saasProducts": {
            "description": "Array of SaaS products included in the plan",
            "example": [
              "2-way-text-messaging",
              "gmb-messaging",
              "web-chat",
              "reputation-management"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "snapshotId": {
            "description": "Snapshot ID for the plan",
            "example": "G8KmpIeLnZc7ZMoJoxDx",
            "type": "string"
          },
          "title": {
            "description": "Title of the plan",
            "example": "AED 1.5 changed",
            "type": "string"
          },
          "trialPeriod": {
            "description": "Trial period in days",
            "example": 16,
            "type": "number"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2025-04-01T12:27:29.167Z",
            "type": "string"
          },
          "userLimit": {
            "description": "User limit for the plan",
            "example": 50,
            "type": "number"
          }
        },
        "required": [
          "planId",
          "title",
          "description",
          "saasProducts",
          "planLevel",
          "trialPeriod",
          "prices",
          "isSaaSV2",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "AgentActionResponseDTO": {
        "properties": {
          "actionParameters": {
            "description": "Action parameters - structure varies by actionType",
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallTransferActionParameters"
              },
              {
                "$ref": "#/components/schemas/DataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/InCallDataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/WorkflowTriggerParameters"
              },
              {
                "$ref": "#/components/schemas/SMSParameters"
              },
              {
                "$ref": "#/components/schemas/AppointmentBookingActionParameters"
              },
              {
                "$ref": "#/components/schemas/CustomActionParameters"
              },
              {
                "$ref": "#/components/schemas/KnowledgeBaseParameters"
              }
            ]
          },
          "actionType": {
            "description": "Type of action",
            "enum": [
              "CALL_TRANSFER",
              "DATA_EXTRACTION",
              "IN_CALL_DATA_EXTRACTION",
              "WORKFLOW_TRIGGER",
              "SMS",
              "APPOINTMENT_BOOKING",
              "CUSTOM_ACTION",
              "KNOWLEDGE_BASE"
            ],
            "example": "CALL_TRANSFER",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for this action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for this action",
            "example": "Transfer to Manager",
            "type": "string"
          }
        },
        "required": [
          "id",
          "actionType",
          "name",
          "actionParameters"
        ],
        "type": "object"
      },
      "AgentCreationRequestDTO": {
        "properties": {
          "agentName": {
            "description": "Display name for the voice AI agent, between 1-40 characters. Default: \"My Agent {random 3 digit number}\"",
            "example": "Customer Support Agent",
            "maxLength": 40,
            "minLength": 1,
            "type": "string"
          },
          "agentPrompt": {
            "description": "Custom instructions defining the agent's behavior and personality. Default: Basic prompt generated automatically",
            "example": "You are a helpful customer service representative. Always be polite and professional.",
            "type": "string"
          },
          "agentWorkingHours": {
            "description": "Time intervals defining when the agent accepts calls, organized by day of week. Default: [] (available 24/7)",
            "items": {
              "$ref": "#/components/schemas/AgentWorkingHoursDTO"
            },
            "type": "array"
          },
          "businessName": {
            "description": "Name of the business this agent represents. Default: Uses location name",
            "example": "Acme Corporation",
            "minLength": 1,
            "type": "string"
          },
          "callEndWorkflowIds": {
            "description": "Array of workflow IDs to trigger automatically when calls end. Default: []",
            "example": [
              "wf_507f1f77bcf86cd799439011",
              "wf_507f1f77bcf86cd799439012"
            ],
            "items": {
              "type": "string"
            },
            "maxItems": 10,
            "type": "array"
          },
          "inboundNumber": {
            "description": "Phone number for receiving inbound calls to this agent. Default: null",
            "example": "+1234567890",
            "type": "string"
          },
          "isAgentAsBackupDisabled": {
            "description": "Prevents this agent from being used as a fallback option. Default: false (Available as backup agent)",
            "example": false,
            "type": "boolean"
          },
          "language": {
            "$ref": "#/components/schemas/VoiceAILanguage",
            "example": "en-US"
          },
          "locationId": {
            "description": "Unique identifier for the location where this agent will operate",
            "example": "LOC123456789ABCDEF",
            "type": "string"
          },
          "maxCallDuration": {
            "description": "Maximum call duration in seconds, between 180-900 (3-15 minutes). Default: 300 seconds (5 minutes)",
            "example": 600,
            "maximum": 900,
            "minimum": 180,
            "type": "number"
          },
          "numberPoolId": {
            "description": "Identifier for the number pool managing phone number allocation. Default: null",
            "example": "pool_507f1f77bcf86cd799439011",
            "type": "string"
          },
          "patienceLevel": {
            "$ref": "#/components/schemas/PatienceLevel",
            "example": "low"
          },
          "reminderAfterIdleTimeSeconds": {
            "description": "Seconds to wait before sending idle reminders, between 1-20. Default: 8 seconds",
            "example": 5,
            "maximum": 20,
            "minimum": 1,
            "type": "number"
          },
          "sendPostCallNotificationTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendPostCallNotificationDTO"
              }
            ],
            "description": "Configuration for post-call email notifications to various recipients. Default: []"
          },
          "sendUserIdleReminders": {
            "description": "Enables automatic reminders when callers are silent. Default: true",
            "example": true,
            "type": "boolean"
          },
          "timezone": {
            "description": "IANA timezone identifier affecting working hours and scheduling. Default: Location timezone",
            "example": "America/New_York",
            "pattern": "^[A-Za-z_]+/[A-Za-z_]+$",
            "type": "string"
          },
          "translation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranslationDTO"
              }
            ],
            "description": "Language translation settings including enablement flag and target language code. Rules: (1) translation.enabled can only be true if the agent's language is not en-US; (2) when enabled, translation.language must be either the agent's language or en-US; (3) when enabled, translation.language is required."
          },
          "voiceId": {
            "description": "Identifier for the speech synthesis voice from available voice options. Default: Auto generated",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "welcomeMessage": {
            "description": "Initial greeting spoken when the agent answers calls. Default: Auto generated",
            "example": "Hello! Thank you for calling Acme Corporation. How can I assist you today?",
            "maxLength": 190,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "AgentStudioInternalServerErrorDTO": {
        "properties": {
          "message": {
            "example": "Internal Server Error",
            "type": "string"
          },
          "statusCode": {
            "example": 500,
            "type": "number"
          }
        },
        "type": "object"
      },
      "AgentWorkingHoursDTO": {
        "properties": {
          "dayOfTheWeek": {
            "description": "Day of the week for this working hours configuration (Monday=1 to Sunday=7)",
            "enum": [
              1,
              2,
              3,
              4,
              5,
              6,
              7
            ],
            "example": 1,
            "type": "number"
          },
          "intervals": {
            "description": "Array of time intervals when the agent is available on this day",
            "example": [
              {
                "endHour": 17,
                "endMinute": 30,
                "startHour": 9,
                "startMinute": 0
              }
            ],
            "items": {
              "$ref": "#/components/schemas/IntervalDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "dayOfTheWeek",
          "intervals"
        ],
        "type": "object"
      },
      "AipErrorBodyDto": {
        "properties": {
          "code": {
            "description": "Machine-readable error code (see AipErrorCode enum in @platform-core/aip-framework)",
            "example": "RESOURCE_NOT_FOUND",
            "type": "string"
          },
          "details": {
            "additionalProperties": true,
            "description": "Additional error context (field name, identifier, etc.)",
            "example": {
              "identifier": "abc",
              "resource": "App"
            },
            "type": "object"
          },
          "message": {
            "description": "Human-readable error message",
            "example": "The requested App 'abc' was not found.",
            "type": "string"
          },
          "resolution": {
            "description": "Suggested resolution for the caller",
            "example": "Verify the App exists and you have permission to access it.",
            "type": "string"
          }
        },
        "required": [
          "code",
          "message"
        ],
        "type": "object"
      },
      "AipErrorResponseDto": {
        "properties": {
          "error": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AipErrorBodyDto"
              }
            ],
            "description": "AIP-compliant error envelope"
          }
        },
        "required": [
          "error"
        ],
        "type": "object"
      },
      "AllGroupsSuccessfulResponseDTO": {
        "properties": {
          "groups": {
            "items": {
              "$ref": "#/components/schemas/GroupDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "AllowAttachRebillingDto": {
        "properties": {
          "attachedRebillingConfig": {
            "additionalProperties": {
              "$ref": "#/components/schemas/AttachedRebillingProductConfigDto"
            },
            "description": "Map of rebilling product code to its config. When provided, this gets stored on the sub-account so it can be applied when the rebilling config is created. Omit to only mark the sub-account as awaiting rebilling attach without any pre-configured products. Possible product keys: `contentAI`, `workflow_premium_actions`, `workflow_ai`, `conversationAI`, `whatsApp`, `reviewsAI`, `EmailVerification`, `funnelAI`, `domainPurchase`, `Phone`, `Email`, `agentStudio`, `askai`, `aiStudio`.",
            "example": {
              "EmailVerification": {
                "enabled": true,
                "markup": 4,
                "price": 0.0025
              },
              "Phone": {
                "enabled": true,
                "markup": 3
              },
              "agentStudio": {
                "enabled": true,
                "markup": 8,
                "price": 0.25
              },
              "contentAI": {
                "enabled": true,
                "markup": 5,
                "price": 0.09
              },
              "domainPurchase": {
                "enabled": true,
                "markup": 3
              }
            },
            "type": "object"
          },
          "companyId": {
            "description": "Company ID owning the location",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "type": "string"
          }
        },
        "required": [
          "companyId"
        ],
        "type": "object"
      },
      "AllowAttachRebillingResponseDto": {
        "properties": {
          "attachedRebillingConfig": {
            "description": "Stored rebilling configuration on the location. Markup is the internal percentage value converted from the request multiplier (e.g. 4 -> 300%, 3 -> 200%).",
            "example": {
              "EmailVerification": {
                "enabled": true,
                "markup": 300,
                "price": 0.0025
              },
              "Phone": {
                "enabled": true,
                "markup": 200
              }
            },
            "type": "object"
          },
          "locationId": {
            "description": "Location ID the rebilling config was attached to",
            "example": "AUKAtFVo0lWezBsBQ3FE",
            "type": "string"
          },
          "success": {
            "description": "Indicates if the allow attach rebilling operation succeeded",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "locationId",
          "attachedRebillingConfig"
        ],
        "type": "object"
      },
      "AltDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType"
        ],
        "type": "object"
      },
      "AmountSummary": {
        "properties": {
          "discount": {
            "description": "Discount value on order.",
            "example": "10",
            "type": "number"
          },
          "subtotal": {
            "description": "Order sub-total value.",
            "example": "100",
            "type": "number"
          }
        },
        "required": [
          "subtotal"
        ],
        "type": "object"
      },
      "ApplyToFuturePaymentsConfig": {
        "properties": {
          "duration": {
            "description": "Duration the coupon to be applied in a subscription",
            "example": 5,
            "type": "number"
          },
          "durationType": {
            "description": "Type of the duration",
            "enum": [
              "months"
            ],
            "example": "months",
            "type": "string"
          },
          "type": {
            "description": "Type of the config",
            "enum": [
              "forever",
              "fixed"
            ],
            "example": "forever | fixed",
            "type": "string"
          }
        },
        "required": [
          "type",
          "duration",
          "durationType"
        ],
        "type": "object"
      },
      "ApplyToFuturePaymentsConfigDto": {
        "properties": {
          "duration": {
            "description": "Duration value for fixed type configurations",
            "example": 3,
            "type": "number"
          },
          "durationType": {
            "description": "Duration type for fixed configurations (e.g. months)",
            "example": "months",
            "type": "string"
          },
          "type": {
            "description": "Type of future payments configuration",
            "enum": [
              "forever",
              "fixed"
            ],
            "example": "fixed",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "AppointmentBookingActionParameters": {
        "properties": {
          "calendarId": {
            "description": "Calendar ID to book appointments in",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "daysOfOfferingDates": {
            "description": "Number of days ahead to offer booking dates",
            "example": 3,
            "type": "number"
          },
          "hoursBetweenSlots": {
            "description": "Hours between available slots",
            "example": 1,
            "type": "number"
          },
          "slotsPerDay": {
            "description": "Number of available slots per day",
            "example": 3,
            "type": "number"
          }
        },
        "required": [
          "calendarId",
          "daysOfOfferingDates",
          "slotsPerDay",
          "hoursBetweenSlots"
        ],
        "type": "object"
      },
      "AppointmentCreateSchema": {
        "properties": {
          "address": {
            "description": "Appointment Address",
            "example": "Zoom",
            "type": "string"
          },
          "appointmentStatus": {
            "enum": [
              "new",
              "confirmed",
              "cancelled",
              "showed",
              "noshow",
              "invalid",
              "completed",
              "active"
            ],
            "example": "confirmed",
            "type": "string"
          },
          "assignedUserId": {
            "description": "Assigned User Id",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "calendarId": {
            "description": "Calendar Id",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "contactId": {
            "description": "Contact Id",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "description": {
            "description": "Appointment Description",
            "example": "Booking a call to discuss the project",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2021-06-23T04:30:00+05:30",
            "type": "string"
          },
          "ignoreDateRange": {
            "description": "If set to true, the minimum scheduling notice and date range would be ignored",
            "example": false,
            "type": "boolean"
          },
          "ignoreFreeSlotValidation": {
            "description": "If true the time slot validation would be avoided for any appointment creation (even the ignoreDateRange)",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location Id",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "meetingLocationId": {
            "default": "default",
            "description": "The unique identifier for the meeting location.\n- This value can be found in `calendar.locationConfigurations`or `calendar.teamMembers[].locationConfigurations`",
            "example": "custom_0",
            "type": "string"
          },
          "meetingLocationType": {
            "description": "Meeting location type. \n- If `address` is provided in the request body, the `meetingLocationType` defaults to **custom**.",
            "enum": [
              "custom",
              "zoom",
              "gmeet",
              "phone",
              "address",
              "ms_teams",
              "google"
            ],
            "example": "custom",
            "type": "string"
          },
          "overrideLocationConfig": {
            "description": "Flag to override location config\n- **false** - If only `meetingLocationId` is provided\n- **true** - If only `meetingLocationType` is provided\n",
            "example": true,
            "type": "boolean"
          },
          "rrule": {
            "description": "RRULE as per the iCalendar (RFC 5545) specification for recurring events. DTSTART is not required, instance ids are calculated on the basis of startTime of the event. The rrule only be applied if ignoreFreeSlotValidation is true.",
            "examples": [
              "RRULE:FREQ=DAILY;INTERVAL=1;COUNT=5",
              "RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20210623T043000Z\nEXDATE:20211105T040000Z,20211105T040000Z"
            ],
            "type": "string"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "Test Event",
            "type": "string"
          },
          "toNotify": {
            "default": true,
            "description": "If set to false, the automations will not run. Defaults to true",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "calendarId",
          "locationId",
          "contactId",
          "startTime"
        ],
        "type": "object"
      },
      "AppointmentEditSchema": {
        "properties": {
          "address": {
            "description": "Appointment Address",
            "example": "Zoom",
            "type": "string"
          },
          "appointmentStatus": {
            "enum": [
              "new",
              "confirmed",
              "cancelled",
              "showed",
              "noshow",
              "invalid",
              "completed",
              "active"
            ],
            "example": "confirmed",
            "type": "string"
          },
          "assignedUserId": {
            "description": "Assigned User Id",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "calendarId": {
            "description": "Calendar Id",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "description": {
            "description": "Appointment Description",
            "example": "Booking a call to discuss the project",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2021-06-23T04:30:00+05:30",
            "type": "string"
          },
          "ignoreDateRange": {
            "description": "If set to true, the minimum scheduling notice and date range would be ignored",
            "example": false,
            "type": "boolean"
          },
          "ignoreFreeSlotValidation": {
            "description": "If true the time slot validation would be avoided for any appointment creation (even the ignoreDateRange)",
            "example": true,
            "type": "boolean"
          },
          "meetingLocationId": {
            "default": "default",
            "description": "The unique identifier for the meeting location.\n- This value can be found in `calendar.locationConfigurations`or `calendar.teamMembers[].locationConfigurations`",
            "example": "custom_0",
            "type": "string"
          },
          "meetingLocationType": {
            "description": "Meeting location type. \n- If `address` is provided in the request body, the `meetingLocationType` defaults to **custom**.",
            "enum": [
              "custom",
              "zoom",
              "gmeet",
              "phone",
              "address",
              "ms_teams",
              "google"
            ],
            "example": "custom",
            "type": "string"
          },
          "overrideLocationConfig": {
            "description": "Flag to override location config\n- **false** - If only `meetingLocationId` is provided\n- **true** - If only `meetingLocationType` is provided\n",
            "example": true,
            "type": "boolean"
          },
          "rrule": {
            "description": "RRULE as per the iCalendar (RFC 5545) specification for recurring events. DTSTART is not required, instance ids are calculated on the basis of startTime of the event. The rrule only be applied if ignoreFreeSlotValidation is true.",
            "examples": [
              "RRULE:FREQ=DAILY;INTERVAL=1;COUNT=5",
              "RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20210623T043000Z\nEXDATE:20211105T040000Z,20211105T040000Z"
            ],
            "type": "string"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "Test Event",
            "type": "string"
          },
          "toNotify": {
            "default": true,
            "description": "If set to false, the automations will not run. Defaults to true",
            "example": false,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "AppointmentSchemaResponse": {
        "properties": {
          "address": {
            "description": "Appointment Address",
            "example": "Zoom",
            "type": "string"
          },
          "appointmentStatus": {
            "enum": [
              "new",
              "confirmed",
              "cancelled",
              "showed",
              "noshow",
              "invalid",
              "active",
              "completed"
            ],
            "example": "confirmed",
            "type": "string"
          },
          "assignedUserId": {
            "description": "Assigned User Id",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "calendarId": {
            "description": "Calendar Id",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "contactId": {
            "description": "Contact Id",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "dateAdded": {
            "description": "Date Added",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date Updated",
            "example": "2021-06-23T04:30:00+05:30",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2021-06-23T04:30:00+05:30",
            "type": "string"
          },
          "id": {
            "description": "Id",
            "example": "0TkCdp9PfvLeWKYRRvIz",
            "type": "string"
          },
          "isRecurring": {
            "description": "true if the event is recurring otherwise false",
            "example": "true",
            "type": "boolean"
          },
          "locationId": {
            "description": "Location Id",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "meetingLocationType": {
            "default": "default",
            "description": "Meeting Location Type",
            "example": "custom",
            "type": "string"
          },
          "rrule": {
            "description": "RRULE as per the iCalendar (RFC 5545) specification for recurring events",
            "examples": [
              "RRULE:FREQ=DAILY;INTERVAL=1;COUNT=5",
              "RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20210623T043000Z\nEXDATE:20211105T040000Z,20211105T040000Z"
            ],
            "type": "string"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "Test Event",
            "type": "string"
          }
        },
        "required": [
          "calendarId",
          "locationId",
          "contactId",
          "id",
          "dateAdded",
          "dateUpdated"
        ],
        "type": "object"
      },
      "AssociationsGetPostSuccessfulResponseDto": {
        "properties": {
          "associationType": {
            "description": "Association Type can be USER_DEFINED or SYSTEM_DEFINED",
            "example": "USER_DEFINED",
            "type": "object"
          },
          "firstObjectKey": {
            "description": "First Objects Key",
            "example": "custom_objects.children",
            "type": "object"
          },
          "firstObjectLabel": {
            "description": "First Objects Association Label (custom_objects.children)",
            "example": "student",
            "type": "object"
          },
          "id": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "key": {
            "description": "First Objects Association Label (custom_objects.children)",
            "example": "student",
            "type": "string"
          },
          "locationId": {
            "example": "string",
            "type": "string"
          },
          "secondObjectKey": {
            "description": "Second Objects Key",
            "example": "contact",
            "type": "object"
          },
          "secondObjectLabel": {
            "description": "Second Object Association Label (contact)",
            "example": "Teacher",
            "type": "object"
          }
        },
        "required": [
          "locationId",
          "id",
          "key",
          "firstObjectLabel",
          "firstObjectKey",
          "secondObjectLabel",
          "secondObjectKey",
          "associationType"
        ],
        "type": "object"
      },
      "AttachFBAccountDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "https://storage.googleapis.com/2ad21ebc23/test",
            "type": "string"
          },
          "name": {
            "description": "Name of the Facebook page or account",
            "example": "JOHN_DEO",
            "type": "string"
          },
          "originId": {
            "description": "Original Facebook platform identifier",
            "example": "244405****11687",
            "type": "string"
          },
          "type": {
            "description": "Type of Facebook account (must be page)",
            "enum": [
              "page"
            ],
            "example": "page",
            "type": "string"
          }
        },
        "required": [
          "type",
          "originId",
          "name",
          "avatar"
        ],
        "title": "Facebook",
        "type": "object"
      },
      "AttachGMBLocationAccountDTO": {
        "properties": {
          "accountName": {
            "description": "Display name of the account",
            "type": "string"
          },
          "name": {
            "description": "Account name identifier",
            "type": "string"
          },
          "type": {
            "description": "Type of the account",
            "type": "string"
          },
          "verificationState": {
            "description": "State of account verification",
            "type": "string"
          },
          "vettedState": {
            "description": "Vetting state of the account",
            "type": "string"
          }
        },
        "required": [
          "name",
          "accountName",
          "type",
          "verificationState",
          "vettedState"
        ],
        "type": "object"
      },
      "AttachGMBLocationDTO": {
        "properties": {
          "account": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AttachGMBLocationAccountDTO"
              }
            ],
            "type": "object"
          },
          "location": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AttachGMBLocationLocationDTO"
              }
            ],
            "type": "object"
          }
        },
        "required": [
          "location",
          "account"
        ],
        "title": "Google Business Account",
        "type": "object"
      },
      "AttachGMBLocationLocationDTO": {
        "properties": {
          "isConnected": {
            "description": "Whether the location is connected",
            "type": "boolean"
          },
          "isVerified": {
            "description": "Whether the location is verified",
            "type": "boolean"
          },
          "maxLocation": {
            "description": "Whether this is a max location",
            "type": "boolean"
          },
          "metadata": {
            "description": "Additional metadata",
            "type": "object"
          },
          "name": {
            "description": "Location name",
            "type": "string"
          },
          "storeCode": {
            "description": "Store code",
            "type": "string"
          },
          "storefrontAddress": {
            "description": "Storefront address details",
            "type": "object"
          },
          "title": {
            "description": "Location title",
            "type": "string"
          }
        },
        "required": [
          "name",
          "title"
        ],
        "type": "object"
      },
      "AttachIGAccountDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "https://storage.googleapis.com/2ad21ebc23/test",
            "type": "string"
          },
          "name": {
            "description": "Display name of the account",
            "example": "JOHN_DEO",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "244405****11687",
            "type": "string"
          },
          "pageId": {
            "description": "Facebook page ID associated with the Instagram account",
            "example": "234234234242sd",
            "type": "string"
          }
        },
        "required": [
          "pageId"
        ],
        "title": "Instagram",
        "type": "object"
      },
      "AttachLinkedinAccountDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "https://storage.googleapis.com/2ad21ebc23/test",
            "type": "string"
          },
          "name": {
            "description": "Name of the LinkedIn page or profile",
            "example": "JOHN_DEO",
            "type": "string"
          },
          "originId": {
            "description": "Original LinkedIn platform identifier",
            "example": "244405****11687",
            "type": "string"
          },
          "type": {
            "description": "Type of LinkedIn account (must be one of: page, profile)",
            "enum": [
              "page",
              "group",
              "profile",
              "location",
              "business"
            ],
            "example": "page",
            "type": "string"
          },
          "urn": {
            "description": "LinkedIn URN (Uniform Resource Name) identifier",
            "example": "urn:li:organization:80847980",
            "type": "string"
          }
        },
        "required": [
          "type",
          "originId",
          "name",
          "avatar",
          "urn"
        ],
        "title": "Linkedin",
        "type": "object"
      },
      "AttachPinterestAccountDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar URL",
            "type": "string"
          },
          "companyId": {
            "description": "Company ID",
            "example": "companyId",
            "type": "string"
          },
          "name": {
            "description": "Name",
            "example": "Ayush",
            "type": "string"
          },
          "originAccountType": {
            "description": "Origin account type",
            "type": "string"
          },
          "originId": {
            "description": "Origin ID",
            "example": "244405****11687",
            "type": "string"
          },
          "type": {
            "description": "Account type must be one of the following values: profile",
            "enum": [
              "profile"
            ],
            "type": "string"
          },
          "username": {
            "description": "Username",
            "example": "@ayush",
            "type": "string"
          },
          "verified": {
            "description": "Verification status",
            "example": true,
            "type": "boolean"
          },
          "websiteUrl": {
            "description": "Website URL",
            "example": "https://www.website.com",
            "type": "string"
          }
        },
        "required": [
          "originId"
        ],
        "title": "Pinterest",
        "type": "object"
      },
      "AttachThreadsAccountDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar URL",
            "example": "https://storage.googleapis.com/2ad21ebc23/test",
            "type": "string"
          },
          "name": {
            "description": "Account name",
            "example": "JOHN_DEO",
            "type": "string"
          },
          "originId": {
            "description": "Origin ID",
            "example": "244405****11687",
            "type": "string"
          },
          "type": {
            "description": "Account type",
            "enum": [
              "profile"
            ],
            "example": "profile",
            "type": "string"
          }
        },
        "required": [
          "type",
          "originId",
          "name",
          "avatar"
        ],
        "title": "Threads",
        "type": "object"
      },
      "AttachTiktokAccountDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "https://example.com/avatar.jpg",
            "type": "string"
          },
          "name": {
            "description": "Display name of the account",
            "example": "JOHN_DEO",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "244405****11687",
            "type": "string"
          },
          "type": {
            "description": "Type of TikTok account",
            "enum": [
              "page",
              "group",
              "profile",
              "location",
              "business"
            ],
            "example": "profile",
            "type": "string"
          },
          "username": {
            "description": "Username or handle of the TikTok account",
            "example": "JOHN_DEO",
            "type": "string"
          },
          "verified": {
            "description": "Indicates if the TikTok account is verified",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "type",
          "originId",
          "name",
          "avatar"
        ],
        "title": "Tiktok",
        "type": "object"
      },
      "AttachTwitterAccountDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "https://storage.googleapis.com/2ad21ebc23/test",
            "type": "string"
          },
          "companyId": {
            "description": "Company ID",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "type": "string"
          },
          "name": {
            "description": "Name of the Twitter account",
            "example": "JOHN_DEO",
            "type": "string"
          },
          "originId": {
            "description": "Original Twitter platform identifier",
            "example": "244405****11687",
            "type": "string"
          },
          "protected": {
            "description": "Indicates if the Twitter account is protected (private)",
            "example": true,
            "type": "boolean"
          },
          "username": {
            "description": "Username or handle of the Twitter account",
            "example": "user_name",
            "type": "string"
          },
          "verified": {
            "description": "Indicates if the Twitter account is verified",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "AttachYoutubeAccountResponseDTO": {
        "properties": {
          "avatar": {
            "description": "Avatar URL",
            "type": "string"
          },
          "name": {
            "description": "Name",
            "example": "Ayush",
            "type": "string"
          },
          "originId": {
            "description": "Origin ID",
            "example": "244405****11687",
            "type": "string"
          },
          "type": {
            "description": "Account type",
            "enum": [
              "profile"
            ],
            "type": "string"
          },
          "username": {
            "description": "Username",
            "example": "@ayush",
            "type": "string"
          },
          "verified": {
            "description": "Verification status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "type",
          "originId",
          "name",
          "avatar"
        ],
        "title": "YouTube",
        "type": "object"
      },
      "AttachedRebillingProductConfigDto": {
        "properties": {
          "enabled": {
            "description": "Enable rebilling for the product",
            "example": true,
            "type": "boolean"
          },
          "markup": {
            "description": "Additional value to be added in terms of percentage",
            "example": 300,
            "type": "number"
          },
          "price": {
            "description": "Product price override",
            "example": 0.0025,
            "type": "number"
          }
        },
        "required": [
          "enabled",
          "markup"
        ],
        "type": "object"
      },
      "AttachmentDTO": {
        "properties": {
          "type": {
            "description": "Type of the attachment",
            "enum": [
              "image"
            ],
            "example": "image",
            "type": "string"
          },
          "url": {
            "description": "URL of the attachment",
            "example": "https://example.com/image.jpg",
            "type": "string"
          }
        },
        "required": [
          "url",
          "type"
        ],
        "type": "object"
      },
      "AttachmentsDto": {
        "properties": {
          "id": {
            "description": "Id of the file selected",
            "example": "6241712be68f7a98102ba272",
            "type": "string"
          },
          "name": {
            "description": "Name of the file ",
            "example": "Electronics.pdf",
            "type": "string"
          },
          "size": {
            "description": "Size of the file",
            "example": 10000,
            "type": "number"
          },
          "type": {
            "description": "Type of the file",
            "type": "string"
          },
          "url": {
            "description": "URL of the file",
            "example": "https://example.com/digital-delivery",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "url",
          "type",
          "size"
        ],
        "type": "object"
      },
      "AttributionSource": {
        "properties": {
          "campaign": {
            "description": "Campaign name",
            "example": "Summer Sale 2024",
            "nullable": true,
            "type": "string"
          },
          "campaignId": {
            "description": "Campaign Id",
            "example": "641c094001436dbc2081e642",
            "nullable": true,
            "type": "string"
          },
          "dclid": {
            "description": "DoubleClick click Id",
            "example": "EAIaIQobChMIw",
            "nullable": true,
            "type": "string"
          },
          "fbEventId": {
            "description": "Facebook event Id",
            "example": "Mozilla/5.0",
            "nullable": true,
            "type": "string"
          },
          "fbc": {
            "description": "Facebook browser Id",
            "example": "fb.1.1674748390986.1171287961",
            "nullable": true,
            "type": "string"
          },
          "fbclid": {
            "description": "Facebook click Id",
            "example": "fb.1.1674748390986.1171287961",
            "nullable": true,
            "type": "string"
          },
          "fbp": {
            "description": "Facebook pixel Id",
            "example": "fb. 1.1674748390986.1171287961",
            "nullable": true,
            "type": "string"
          },
          "gclid": {
            "description": "Google click Id",
            "example": "CjOKCQjwnNyUBhCZARISAI9AYIFtNnIcWcYGIOQINz_ZoFI5SSLRRugSoPZoiEu27IZBY£1-MAIWmEaAo2VEALW_WCB",
            "nullable": true,
            "type": "string"
          },
          "ip": {
            "description": "IP address of the visitor",
            "example": "58.111.106.198",
            "nullable": true,
            "type": "string"
          },
          "medium": {
            "description": "Attribution medium (e.g. survey, funnel)",
            "example": "survey",
            "nullable": true,
            "type": "string"
          },
          "mediumId": {
            "description": "Id of the attribution medium",
            "example": "FglfHAn30PRwsZVyQlKp",
            "nullable": true,
            "type": "string"
          },
          "msclikid": {
            "description": "Microsoft click Id",
            "example": "MS!AzEREREDJKSJD",
            "nullable": true,
            "type": "string"
          },
          "referrer": {
            "description": "Referrer URL",
            "example": "https://www.google.com",
            "nullable": true,
            "type": "string"
          },
          "url": {
            "description": "Attribution source type",
            "example": "Trigger Link",
            "type": "string"
          },
          "userAgent": {
            "description": "Browser user agent string",
            "example": "Mozilla/5.0",
            "nullable": true,
            "type": "string"
          },
          "utmContent": {
            "description": "UTM content parameter",
            "example": "ad_variation_1",
            "nullable": true,
            "type": "string"
          },
          "utmMedium": {
            "description": "UTM medium parameter",
            "example": "cpc",
            "nullable": true,
            "type": "string"
          },
          "utmSource": {
            "description": "UTM source parameter",
            "example": "google",
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "url"
        ],
        "type": "object"
      },
      "AudienceCustomAudienceItemDTO": {
        "properties": {
          "id": {
            "description": "Custom audience ID",
            "example": "23851234567890",
            "type": "string"
          },
          "name": {
            "description": "Custom audience name",
            "example": "Website Visitors - Last 30 Days",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "AudienceDTO": {
        "properties": {
          "geoLocations": {
            "description": "Geographic location targets",
            "example": [
              {
                "facetUrn": "urn:li:adTargetingFacet:locations",
                "name": "India",
                "selectionType": "include",
                "urn": "urn:li:geo:102713980"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GeoLocationDTO"
            },
            "type": "array"
          },
          "targetAudience": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TargetAudienceDTO"
              }
            ],
            "description": "Target audience attribute selections",
            "example": {
              "exclude": [],
              "include": []
            }
          }
        },
        "type": "object"
      },
      "AudienceDimensionDTO": {
        "properties": {
          "ageRanges": {
            "description": "Age range filters",
            "example": [
              {
                "maxAge": 34,
                "minAge": 25
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "audienceSegments": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudienceSegmentsDTO"
              }
            ],
            "description": "Audience segment references used for targeting",
            "example": {
              "customAudiences": [
                "customers/123/customAudiences/456"
              ],
              "userInterests": [],
              "userLists": []
            }
          },
          "genders": {
            "description": "Gender targets",
            "example": [
              "MALE",
              "FEMALE"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isAgeUnknown": {
            "description": "Include unknown age",
            "example": false,
            "type": "boolean"
          },
          "parentalStatuses": {
            "description": "Parental status targets",
            "example": [
              "PARENT"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "AudienceInterestDTO": {
        "properties": {
          "id": {
            "description": "Interest ID",
            "example": "6003139266461",
            "type": "string"
          },
          "name": {
            "description": "Interest name",
            "example": "Fitness and wellness",
            "type": "string"
          },
          "type": {
            "description": "Interest category type (defaults to \"interests\" if omitted)",
            "example": "interests",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "AudienceLocaleDTO": {
        "properties": {
          "key": {
            "description": "Facebook locale key",
            "example": 6,
            "type": "number"
          },
          "name": {
            "description": "Locale display name",
            "example": "English (US)",
            "type": "string"
          }
        },
        "required": [
          "name",
          "key"
        ],
        "type": "object"
      },
      "AudienceLocationDTO": {
        "properties": {
          "geometry": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudienceLocationGeometry"
              }
            ],
            "description": "Geometry data for address-based targeting",
            "example": {
              "location": {
                "lat": 40.7128,
                "lng": -74.006
              },
              "locationType": "APPROXIMATE"
            }
          },
          "key": {
            "description": "Facebook location key",
            "example": "US",
            "type": "string"
          },
          "name": {
            "description": "Location display name",
            "example": "United States",
            "type": "string"
          },
          "radius": {
            "description": "Targeting radius around the location (for city/address types)",
            "example": 25,
            "type": "number"
          },
          "radiusUnit": {
            "description": "Unit for the targeting radius",
            "enum": [
              "km",
              "mi"
            ],
            "example": "mi",
            "type": "string"
          },
          "selectionType": {
            "description": "Whether the location is included or excluded from targeting",
            "enum": [
              "include",
              "exclude"
            ],
            "example": "include",
            "type": "string"
          },
          "type": {
            "description": "Geographic location type",
            "enum": [
              "country",
              "city",
              "region",
              "country_group",
              "geo_market",
              "large_geo_area",
              "medium_geo_area",
              "small_geo_area",
              "subcity",
              "neighborhood",
              "zip",
              "address"
            ],
            "example": "country",
            "type": "string"
          }
        },
        "required": [
          "key",
          "name",
          "type",
          "selectionType"
        ],
        "type": "object"
      },
      "AudienceLocationGeometry": {
        "properties": {
          "location": {
            "description": "Geographic coordinates",
            "example": {
              "lat": 40.7128,
              "lng": -74.006
            },
            "type": "object"
          },
          "locationType": {
            "description": "Geocoding result type",
            "example": "APPROXIMATE",
            "type": "string"
          }
        },
        "required": [
          "location",
          "locationType"
        ],
        "type": "object"
      },
      "AudiencePlacementsDTO": {
        "properties": {
          "facebook": {
            "description": "Facebook placement positions",
            "example": [
              "feed",
              "right_hand_column",
              "marketplace"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "instagram": {
            "description": "Instagram placement positions",
            "example": [
              "stream",
              "story",
              "explore"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "messenger": {
            "description": "Messenger placement positions",
            "example": [
              "messenger_home"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "AudienceSegmentsDTO": {
        "properties": {
          "customAudiences": {
            "description": "Resource names of custom audience segments",
            "example": [
              "customers/123/customAudiences/456"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "userInterests": {
            "description": "Resource names of user interest segments (in-market or affinity audiences)",
            "example": [
              "customers/123/userInterests/321"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "userLists": {
            "description": "Resource names of user lists (remarketing lists, customer match lists, etc.)",
            "example": [
              "customers/123/userLists/789"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "AuthorResponseDTO": {
        "properties": {
          "_id": {
            "example": "lMOzIQZne5m6zQ528sT6",
            "type": "string"
          },
          "canonicalLink": {
            "example": "https://tryghl.blog/post/technology",
            "type": "string"
          },
          "locationId": {
            "example": "lMOzIQZne5m6zQ528sT6",
            "type": "string"
          },
          "name": {
            "example": "HighLevel",
            "type": "string"
          },
          "updatedAt": {
            "example": "2025-01-03T11:06:35.822Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name",
          "locationId",
          "updatedAt",
          "canonicalLink"
        ],
        "type": "object"
      },
      "AuthorsResponseDTO": {
        "properties": {
          "authors": {
            "description": "Array of authors",
            "items": {
              "$ref": "#/components/schemas/AuthorResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "authors"
        ],
        "type": "object"
      },
      "AutoInvoice": {
        "properties": {},
        "type": "object"
      },
      "AutoInvoicingDto": {
        "properties": {
          "directPayments": {
            "description": "Direct Payments",
            "example": true,
            "type": "boolean"
          },
          "enabled": {
            "description": "Enable Auto Invoice",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "enabled"
        ],
        "type": "object"
      },
      "AutoPaymentDetailsDto": {
        "properties": {
          "bacsDirectDebit": {
            "$ref": "#/components/schemas/BacsDirectDebitDTO"
          },
          "becsDirectDebit": {
            "$ref": "#/components/schemas/BecsDirectDebitDTO"
          },
          "card": {
            "$ref": "#/components/schemas/InvoicesCardDto"
          },
          "cardId": {
            "type": "string"
          },
          "customerId": {
            "type": "string"
          },
          "enable": {
            "type": "boolean"
          },
          "paymentMethodId": {
            "type": "string"
          },
          "provider": {
            "type": "object"
          },
          "sepaDirectDebit": {
            "$ref": "#/components/schemas/SepaDirectDebitDTO"
          },
          "type": {
            "type": "string"
          },
          "usBankAccount": {
            "$ref": "#/components/schemas/USBankAccountDto"
          }
        },
        "required": [
          "enable"
        ],
        "type": "object"
      },
      "AutoPaymentInvoiceScheduleResponseDto": {
        "properties": {
          "_id": {
            "description": "Schedule Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "compiledTermsNotes": {
            "description": "Compiled terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoices": {
            "description": "List of invoices",
            "items": {
              "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
            },
            "type": "array"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "status": {
            "description": "Schedule Status",
            "example": "draft",
            "type": "object"
          },
          "termsNotes": {
            "description": "Terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "altId",
          "altType",
          "name",
          "invoices",
          "businessDetails",
          "currency",
          "contactDetails",
          "items",
          "total",
          "title",
          "termsNotes",
          "compiledTermsNotes",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "AutoPaymentScheduleDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "autoPayment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoPaymentDetailsDto"
              }
            ],
            "description": "auto-payment configuration"
          },
          "id": {
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "id",
          "autoPayment"
        ],
        "type": "object"
      },
      "Availability": {
        "properties": {
          "date": {
            "description": "Formulate the date string in the format of `<YYYY-MM-DD in local timezone>T00:00:00.000Z`.",
            "example": "2023-09-24T00:00:00.000Z",
            "type": "string"
          },
          "deleted": {
            "default": false,
            "type": "boolean"
          },
          "hours": {
            "items": {
              "$ref": "#/components/schemas/Hour"
            },
            "type": "array"
          }
        },
        "required": [
          "date",
          "hours"
        ],
        "type": "object"
      },
      "AvailableCategoryDTO": {
        "properties": {
          "_id": {
            "description": "Category ID",
            "example": "65cb3d2f68baa617aa0c286e",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-02-13T09:58:07.129Z",
            "type": "string"
          },
          "createdBy": {
            "description": "Creator user ID",
            "example": "SQ6d63Va2PUbWEZ9k0TD",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if deleted",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "fvg1TXIiVxGcdOaL0riG",
            "type": "string"
          },
          "name": {
            "description": "Category name",
            "example": "Facebook Reel",
            "type": "string"
          },
          "primaryColor": {
            "description": "Primary color (hex)",
            "example": "#004EEB",
            "type": "string"
          },
          "publishedPostsCount": {
            "description": "Published posts count",
            "example": 80,
            "type": "number"
          },
          "queueDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AvailableCategoryQueueDetailsDTO"
              }
            ],
            "description": "Queue details (present when in_queue or draft)",
            "nullable": true
          },
          "secondaryColor": {
            "description": "Secondary color (hex)",
            "example": "#EFF4FF",
            "type": "string"
          },
          "status": {
            "description": "Status: available (no queue), in_queue (active/paused), or draft",
            "enum": [
              "available",
              "in_queue",
              "draft"
            ],
            "example": "in_queue",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-02-13T09:58:07.129Z",
            "type": "string"
          }
        },
        "type": "object"
      },
      "AvailableCategoryQueueDetailsDTO": {
        "properties": {
          "enableFuturePosts": {
            "description": "Enable posting future content",
            "example": true,
            "type": "boolean"
          },
          "prioritizeNewContent": {
            "description": "Prioritize new content over older content",
            "example": false,
            "type": "boolean"
          },
          "queueId": {
            "description": "Queue ID",
            "example": "67fc07c6d7657c9aee764762",
            "type": "string"
          }
        },
        "type": "object"
      },
      "AvailableShippingRate": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "amount": {
            "description": "The amount of the shipping rate if it is normal rate (0 means free ). Fixed Handling fee if it is a carrier rate (it will add to the carrier rate).",
            "example": 99.99,
            "type": "number"
          },
          "currency": {
            "description": "The currency of the amount of the rate / handling fee",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "Delivery description",
            "example": "Ships next day",
            "type": "string"
          },
          "isCarrierRate": {
            "description": "is this a carrier rate",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the shipping zone",
            "example": "North zone",
            "type": "string"
          },
          "percentageOfRateFee": {
            "description": "Percentage of rate fee if it is a carrier rate.",
            "example": 10.99,
            "type": "number"
          },
          "shippingCarrierId": {
            "description": "Shipping carrier id",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "shippingCarrierServices": {
            "description": "An array of items",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierServiceDto"
            },
            "type": "array"
          },
          "shippingZoneId": {
            "description": "The unique identifier for the shipping zone.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          }
        },
        "required": [
          "name",
          "currency",
          "amount",
          "shippingCarrierId",
          "_id",
          "shippingZoneId"
        ],
        "type": "object"
      },
      "BacsDirectDebitDTO": {
        "properties": {
          "last4": {
            "type": "string"
          },
          "sort_code": {
            "type": "string"
          }
        },
        "required": [
          "sort_code",
          "last4"
        ],
        "type": "object"
      },
      "BaseOAuthAccountSchema": {
        "properties": {
          "avatar": {
            "description": "Account Avatar URL",
            "example": "https://storage.googleapis.com/bucket/avatar.jpg",
            "type": "string"
          },
          "name": {
            "description": "Account Name",
            "example": "John Doe",
            "type": "string"
          },
          "originId": {
            "description": "Origin ID",
            "example": "244405****11687",
            "type": "string"
          }
        },
        "required": [
          "name",
          "platform",
          "originId"
        ],
        "type": "object"
      },
      "BecsDirectDebitDTO": {
        "properties": {
          "bsb_number": {
            "type": "string"
          },
          "last4": {
            "type": "string"
          }
        },
        "required": [
          "bsb_number",
          "last4"
        ],
        "type": "object"
      },
      "BlockSlotCreateRequestDTO": {
        "properties": {
          "assignedUserId": {
            "description": "Either calendarId or assignedUserId can be set, not both.",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "calendarId": {
            "description": "Either calendarId or assignedUserId can be set, not both.",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2021-06-23T04:30:00+05:30",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "Test Event",
            "type": "string"
          }
        },
        "required": [
          "calendarId",
          "locationId"
        ],
        "type": "object"
      },
      "BlockSlotEditRequestDTO": {
        "properties": {
          "assignedUserId": {
            "description": "Either calendarId or assignedUserId can be set, not both.",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "calendarId": {
            "description": "Either calendarId or assignedUserId can be set, not both.",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2021-06-23T04:30:00+05:30",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "Test Event",
            "type": "string"
          }
        },
        "required": [
          "calendarId",
          "locationId"
        ],
        "type": "object"
      },
      "BlockedSlotSuccessfulResponseDto": {
        "properties": {
          "assignedUserId": {
            "description": "Assigned User Id",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "calendarId": {
            "description": "Calendar id",
            "example": "CVokAlI8fgw4WYWoCtQz",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2021-06-23T04:30:00+05:30",
            "type": "object"
          },
          "id": {
            "description": "Id",
            "example": "0TkCdp9PfvLeWKYRRvIz",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "object"
          },
          "title": {
            "description": "Title",
            "example": "My event",
            "type": "string"
          }
        },
        "required": [
          "id",
          "locationId",
          "title",
          "startTime",
          "endTime"
        ],
        "type": "object"
      },
      "BlogGetResponseWrapperDTO": {
        "properties": {
          "data": {
            "description": "Object containing response data of blog",
            "items": {
              "$ref": "#/components/schemas/BlogResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "BlogPostCreateResponseWrapperDTO": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/BlogPostResponseDTO",
            "description": "Object containing response data of blog post create.",
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "BlogPostGetResponseWrapperDTO": {
        "properties": {
          "blogs": {
            "description": "Object containing response data of blog posts",
            "items": {
              "$ref": "#/components/schemas/BlogPostResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "blogs"
        ],
        "type": "object"
      },
      "BlogPostResponseDTO": {
        "properties": {
          "_id": {
            "description": "Unique identifier of the blog post",
            "example": "66c381b38be80858b9af62b6",
            "type": "string"
          },
          "archived": {
            "description": "Indicates whether the blog post is archived",
            "example": false,
            "type": "boolean"
          },
          "author": {
            "description": "Identifier of the author of the blog post",
            "example": "659ec9634a3796e4e47cc360",
            "type": "string"
          },
          "canonicalLink": {
            "description": "Canonical link of the blog post",
            "example": "https://blog.chatgpts.agency/post/test-8384",
            "type": "string"
          },
          "categories": {
            "description": "Array of category IDs associated with the blog post",
            "example": [
              "659ecabc4a37969a2b7cc370",
              "6683abde331c041f32c07aee"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "Description of the blog post",
            "example": "Description",
            "type": "string"
          },
          "imageAltText": {
            "description": "Alternative text for the blog post image",
            "example": "alt",
            "type": "string"
          },
          "imageUrl": {
            "description": "URL of the image associated with the blog post",
            "example": "https://storage.googleapis.com/ghl-test/fACm0Ojm5oC70G3DcFmE/media/66b5aa3b1745b2713a8d033f.jpeg",
            "type": "string"
          },
          "publishedAt": {
            "description": "Timestamp when the blog post was published",
            "example": "2024-08-19T17:14:57.000Z",
            "type": "string"
          },
          "status": {
            "description": "Publication status of the blog post",
            "example": "PUBLISHED",
            "type": "string"
          },
          "tags": {
            "description": "Array of tags associated with the blog post",
            "example": [
              "Apple",
              "Banana"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "title": {
            "description": "Title of the blog post",
            "example": "Banana is good source of energy",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp when the blog post was last updated",
            "example": "2024-08-19T17:32:36.182Z",
            "type": "string"
          },
          "urlSlug": {
            "description": "URL slug for the blog post",
            "example": "banana-good-energy",
            "type": "string"
          }
        },
        "required": [
          "categories",
          "archived",
          "_id",
          "title",
          "description",
          "imageUrl",
          "status",
          "imageAltText",
          "urlSlug",
          "publishedAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "BlogPostUpdateResponseWrapperDTO": {
        "properties": {
          "updatedBlogPost": {
            "$ref": "#/components/schemas/BlogPostResponseDTO",
            "description": "Object containing response data of blog post update",
            "type": "object"
          }
        },
        "required": [
          "updatedBlogPost"
        ],
        "type": "object"
      },
      "BlogResponseDTO": {
        "properties": {
          "_id": {
            "description": "Unique identifier of the blog",
            "example": "lMOzIQZne5m6zQ528sT6",
            "type": "string"
          },
          "name": {
            "description": "Name of the blog",
            "example": "My blog",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name"
        ],
        "type": "object"
      },
      "BlueskyPostSchema": {
        "properties": {
          "externalLink": {
            "description": "External URL to embed as a link card in the post.",
            "example": "https://yoursite.com/article",
            "type": "string"
          },
          "externalLinkDescription": {
            "description": "Description for the external link card. Brief summary displayed below the title.",
            "example": "Learn how to improve your social media presence with these proven strategies.",
            "type": "string"
          },
          "externalLinkTitle": {
            "description": "Title for the external link card. Displayed prominently in the embed.",
            "example": "10 Tips for Better Social Media Marketing",
            "type": "string"
          },
          "language": {
            "description": "ISO 639-1 language code for the post content.\n\n**Examples:** `en` (English), `es` (Spanish), `fr` (French), `de` (German)",
            "example": "en",
            "type": "string"
          },
          "quotePost": {
            "description": "Bluesky AT Protocol URI of a post to quote.\n\n**Format:** `at://did:plc:{user-id}/app.bsky.feed.post/{post-id}`\n\n**Use Case:** Quote-post another user's post with your commentary.",
            "example": "at://did:plc:abc123def456/app.bsky.feed.post/xyz789",
            "type": "string"
          },
          "replyTo": {
            "description": "Bluesky AT Protocol URI of a post to reply to.\n\n**Format:** `at://did:plc:{user-id}/app.bsky.feed.post/{post-id}`\n\n**Use Case:** Create a reply thread to an existing Bluesky post.",
            "example": "at://did:plc:abc123def456/app.bsky.feed.post/xyz789",
            "type": "string"
          },
          "shortenedLinks": {
            "description": "Shortened links for the post (auto-generated).",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "BrandBoardListItemDTO": {
        "properties": {
          "_id": {
            "description": "Brand board ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "default": {
            "description": "Whether this is the default brand board for the location",
            "example": false,
            "type": "boolean"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MetaData"
              }
            ],
            "description": "Metadata about the brand board"
          },
          "name": {
            "description": "Brand board name",
            "example": "My Brand Board",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name",
          "updatedAt"
        ],
        "type": "object"
      },
      "BrandVoiceAnswersDto": {
        "properties": {
          "brandName": {
            "description": "Brand Name",
            "example": "Acme Inc",
            "type": "string"
          },
          "brandPromise": {
            "description": "Brand Promise",
            "example": "We deliver on time, every time",
            "type": "string"
          },
          "brandPurpose": {
            "description": "Brand Purpose",
            "example": "To empower small businesses with technology",
            "type": "string"
          },
          "brandValues": {
            "description": "Brand Values",
            "example": "Integrity, Excellence, Innovation",
            "type": "string"
          },
          "businessHours": {
            "description": "Business Hours",
            "example": "Mon-Fri 9am-5pm",
            "type": "string"
          },
          "businessType": {
            "description": "Business Type",
            "example": "Software Development",
            "type": "string"
          },
          "callToAction": {
            "description": "Call to Action",
            "example": "Schedule a demo today",
            "type": "string"
          },
          "companyAddress": {
            "description": "Company Address",
            "example": "123 Main St, Anytown, CA",
            "type": "string"
          },
          "companyEmail": {
            "description": "Company Email",
            "example": "contact@example.com",
            "type": "string"
          },
          "companyWebsite": {
            "description": "Company Website",
            "example": "https://example.com",
            "type": "string"
          },
          "competitiveAdvantage": {
            "description": "Competitive Advantage",
            "example": "Proprietary AI technology",
            "type": "string"
          },
          "customerPainPoints": {
            "description": "Customer Pain Points",
            "example": "Difficulty with time management",
            "type": "string"
          },
          "phone": {
            "description": "Phone Information",
            "example": {
              "countryCode": "US",
              "phoneNumber": "5551234567"
            },
            "type": "object"
          },
          "risksOfInaction": {
            "description": "Risks of Inaction",
            "example": "Falling behind competitors",
            "type": "string"
          },
          "targetAudience": {
            "description": "Target Audience",
            "example": "Small business owners",
            "type": "string"
          },
          "toneOfVoice": {
            "description": "Tone of Voice",
            "example": "Professional and friendly",
            "type": "string"
          },
          "uniqueSellingProposition": {
            "description": "Unique Selling Proposition",
            "example": "The only solution that integrates with all major platforms",
            "type": "string"
          }
        },
        "required": [
          "brandName",
          "toneOfVoice",
          "targetAudience",
          "customerPainPoints"
        ],
        "type": "object"
      },
      "BrandVoiceAnswersPublicV1Dto": {
        "properties": {
          "brandName": {
            "description": "Brand Name",
            "example": "Acme Inc",
            "type": "string"
          },
          "brandPromise": {
            "description": "Brand Promise",
            "example": "We deliver on time, every time",
            "type": "string"
          },
          "brandPurpose": {
            "description": "Brand Purpose",
            "example": "To empower small businesses with technology",
            "type": "string"
          },
          "brandValues": {
            "description": "Brand Values",
            "example": "Integrity, Excellence, Innovation",
            "type": "string"
          },
          "businessHours": {
            "description": "Business Hours",
            "example": "Mon-Fri 9am-5pm",
            "type": "string"
          },
          "businessType": {
            "description": "Business Type",
            "example": "Software Development",
            "type": "string"
          },
          "callToAction": {
            "description": "Call to Action",
            "example": "Schedule a demo today",
            "type": "string"
          },
          "companyAddress": {
            "description": "Company Address",
            "example": "123 Main St, Anytown, CA",
            "type": "string"
          },
          "companyEmail": {
            "description": "Company Email",
            "example": "contact@example.com",
            "type": "string"
          },
          "companyWebsite": {
            "description": "Company Website",
            "example": "https://example.com",
            "type": "string"
          },
          "competitiveAdvantage": {
            "description": "Competitive Advantage",
            "example": "Proprietary AI technology",
            "type": "string"
          },
          "customerPainPoints": {
            "description": "Customer Pain Points",
            "example": "Difficulty with time management",
            "type": "string"
          },
          "phone": {
            "description": "Phone Information",
            "example": {
              "countryCode": "US",
              "phoneNumber": "5551234567"
            },
            "type": "object"
          },
          "risksOfInaction": {
            "description": "Risks of Inaction",
            "example": "Falling behind competitors",
            "type": "string"
          },
          "targetAudience": {
            "description": "Target Audience",
            "example": "Small business owners",
            "type": "string"
          },
          "toneOfVoice": {
            "description": "Tone of Voice",
            "example": "Professional and friendly",
            "type": "string"
          },
          "uniqueSellingProposition": {
            "description": "Unique Selling Proposition",
            "example": "The only solution that integrates with all major platforms",
            "type": "string"
          }
        },
        "type": "object"
      },
      "BrandVoicePublicV1Dto": {
        "properties": {
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          },
          "id": {
            "description": "Brand voice ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isDefault": {
            "description": "Whether this is the default brand voice",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Brand voice name",
            "example": "My Brand Voice",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "isDefault",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "Budget": {
        "properties": {
          "amount": {
            "description": "Budget amount",
            "example": 1000,
            "type": "number"
          },
          "budgetType": {
            "description": "Budget type",
            "enum": [
              "DAILY",
              "LIFETIME"
            ],
            "example": "DAILY",
            "type": "string"
          },
          "scheduleEndDate": {
            "description": "Schedule end date",
            "example": "2024-01-31",
            "type": "string"
          },
          "scheduleStartDate": {
            "description": "Schedule start date",
            "example": "2024-01-01",
            "type": "string"
          }
        },
        "required": [
          "budgetType",
          "amount"
        ],
        "type": "object"
      },
      "BuilderAttributePublicV2Dto": {
        "properties": {
          "default": {
            "description": "Attribute default value",
            "example": "10px",
            "type": "object"
          },
          "name": {
            "description": "Attribute name",
            "example": "padding",
            "type": "string"
          },
          "unit": {
            "description": "Attribute unit",
            "example": "px",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "BuilderCustomFlagsPublicV2Dto": {
        "properties": {
          "layoutId": {
            "description": "Layout ID",
            "example": "hero-layout",
            "type": "object"
          },
          "socialElementType": {
            "description": "Social element rendering type",
            "enum": [
              "icon",
              "icon-text",
              "text"
            ],
            "type": "string"
          },
          "theme": {
            "description": "Theme name",
            "example": "clean",
            "type": "string"
          }
        },
        "type": "object"
      },
      "BuilderEditorContentPublicV2Dto": {
        "properties": {
          "attrs": {
            "additionalProperties": {
              "$ref": "#/components/schemas/BuilderNodeAttrsPublicV2Dto"
            },
            "description": "Builder attributes map keyed by element ID",
            "example": {
              "mj-text-123": {
                "attributes": [
                  {
                    "default": "10px",
                    "name": "padding"
                  }
                ],
                "tagName": "mj-text"
              }
            },
            "type": "object"
          },
          "elements": {
            "description": "Builder elements",
            "example": [
              {
                "children": [],
                "id": "mj-body-1",
                "tagName": "mj-body"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/BuilderElementNodePublicV2Dto"
            },
            "type": "array"
          },
          "templateSettings": {
            "additionalProperties": {
              "items": {
                "$ref": "#/components/schemas/BuilderAttributePublicV2Dto"
              },
              "type": "array"
            },
            "description": "Template-level settings map keyed by setting group",
            "example": {
              "mj-all": [
                {
                  "default": "Arial, sans-serif",
                  "name": "font-family"
                }
              ]
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "BuilderElementNodePublicV2Dto": {
        "properties": {
          "children": {
            "description": "Child elements",
            "example": [
              {
                "id": "mj-column-1",
                "tagName": "mj-column"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/BuilderElementNodePublicV2Dto"
            },
            "type": "array"
          },
          "id": {
            "description": "Element ID",
            "example": "mj-text-123",
            "type": "string"
          },
          "tagName": {
            "description": "Tag name",
            "example": "mj-text",
            "type": "string"
          }
        },
        "required": [
          "id",
          "tagName"
        ],
        "type": "object"
      },
      "BuilderNodeAttrsPublicV2Dto": {
        "properties": {
          "attributes": {
            "description": "Element attributes",
            "items": {
              "$ref": "#/components/schemas/BuilderAttributePublicV2Dto"
            },
            "type": "array"
          },
          "content": {
            "description": "Element content",
            "example": "Hello world",
            "type": "string"
          },
          "customFlags": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BuilderCustomFlagsPublicV2Dto"
              }
            ],
            "description": "Custom flags"
          },
          "tagName": {
            "description": "Tag name",
            "example": "mj-text",
            "type": "string"
          }
        },
        "required": [
          "tagName",
          "attributes"
        ],
        "type": "object"
      },
      "BuilderUpdateSuccessfulDTO": {
        "properties": {
          "ok": {
            "description": "ok",
            "example": "true",
            "type": "string"
          },
          "previewUrl": {
            "description": "preview url",
            "example": "https://example.com",
            "type": "string"
          },
          "templateDownloadUrl": {
            "description": "template data download url",
            "example": "https://example.com",
            "type": "string"
          },
          "traceId": {
            "description": "trace id",
            "example": "0c52e980-41f6-4be7-8c4b-32332ss",
            "type": "string"
          },
          "versionId": {
            "description": "version id of the saved template",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "type": "object"
      },
      "BulkActionCampaignDto": {
        "properties": {
          "completedAt": {
            "description": "Processing completion timestamp",
            "example": "2025-07-24T11:55:48.000Z",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "createdBy": {
            "description": "User who created the campaign",
            "example": "John Doe",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "emailMetadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BulkActionCampaignEmailDetailsDto"
              }
            ],
            "description": "Email metadata"
          },
          "id": {
            "description": "Campaign ID",
            "example": "OI72xYec4Mho6VBykTvj",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "Test Mail",
            "type": "string"
          },
          "scheduleType": {
            "description": "Schedule type (NOW or SCHEDULED)",
            "example": "NOW",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "processing",
              "scheduled",
              "paused",
              "complete",
              "cancelled"
            ],
            "example": "complete",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "status",
          "scheduleType",
          "createdBy",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "BulkActionCampaignEmailDetailsDto": {
        "properties": {
          "from": {
            "description": "Sender (name and email)",
            "example": "John Doe <john@example.com>",
            "type": "string"
          },
          "name": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "subject": {
            "description": "Email subject line",
            "example": "Welcome to our platform",
            "type": "string"
          },
          "templateId": {
            "description": "Email template ID",
            "example": "6790aeb53c8d1288f555f92b",
            "type": "string"
          }
        },
        "type": "object"
      },
      "BulkActionCampaignPublicV2Dto": {
        "properties": {
          "completedAt": {
            "description": "Processing completion timestamp",
            "example": "2025-07-24T11:55:48.000Z",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "emailMetadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BulkActionCampaignEmailDetailsDto"
              }
            ],
            "description": "Email metadata",
            "example": {
              "from": "John Doe <john@example.com>",
              "subject": "Welcome to our platform",
              "templateId": "6790aeb53c8d1288f555f92b"
            }
          },
          "id": {
            "description": "Campaign ID",
            "example": "OI72xYec4Mho6VBykTvj",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "Test Mail",
            "type": "string"
          },
          "scheduleType": {
            "description": "Schedule type (NOW, SCHEDULED, or DRIP)",
            "enum": [
              "NOW",
              "SCHEDULED",
              "DRIP"
            ],
            "example": "SCHEDULED",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "email-marketing",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "115b9030-907c-474c-90a5-2debd838a024",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "processing",
              "scheduled",
              "paused",
              "complete",
              "cancelled"
            ],
            "example": "complete",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "status",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "BulkDeletePostSuccessfulResponseSchema": {
        "properties": {
          "deletedCount": {
            "description": "Number of posts successfully deleted",
            "example": 10,
            "type": "number"
          }
        },
        "type": "object"
      },
      "BulkDeleteResponseDto": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Posts Deleted Successfully",
            "type": "string"
          },
          "results": {
            "description": "Message and deleted count",
            "example": "{ message: \"Posts deleted successfully\", deletedCount: 10 }"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message",
          "results"
        ],
        "type": "object"
      },
      "BulkDisableSaasDto": {
        "properties": {
          "locationIds": {
            "description": "Location IDs",
            "example": [
              "locationId1",
              "locationId2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationIds"
        ],
        "type": "object"
      },
      "BulkDisableSaasResponseDto": {
        "properties": {
          "data": {
            "description": "Response data from the bulk disable SaaS operation",
            "example": {
              "msg": "success"
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "BulkEditPriceDto": {
        "properties": {
          "_id": {
            "description": "Price ID",
            "example": "64a1b2c3d4e5f67890123456",
            "type": "string"
          },
          "allowOutOfStockPurchases": {
            "description": "Allow out of stock purchases",
            "example": false,
            "type": "boolean"
          },
          "amount": {
            "description": "Price amount",
            "example": 99.99,
            "type": "number"
          },
          "availableQuantity": {
            "description": "Available quantity",
            "example": 100,
            "type": "number"
          },
          "compareAtPrice": {
            "description": "Compare at price",
            "example": 129.99,
            "type": "number"
          },
          "currency": {
            "description": "Price currency",
            "example": "USD",
            "type": "string"
          },
          "name": {
            "description": "Price name",
            "example": "Standard Plan",
            "type": "string"
          },
          "recurring": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringDto"
              }
            ],
            "description": "Recurring details"
          },
          "setupFee": {
            "description": "Setup fee",
            "example": 25,
            "type": "number"
          },
          "shippingOptions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingOptionsDto"
              }
            ],
            "description": "Shipping options"
          },
          "sku": {
            "description": "SKU",
            "example": "SKU-001",
            "type": "string"
          },
          "totalCycles": {
            "description": "Total billing cycles",
            "example": 12,
            "type": "number"
          },
          "trackInventory": {
            "description": "Track inventory",
            "example": true,
            "type": "boolean"
          },
          "trialPeriod": {
            "description": "Trial period in days",
            "example": 7,
            "type": "number"
          }
        },
        "required": [
          "_id"
        ],
        "type": "object"
      },
      "BulkEditProductDto": {
        "properties": {
          "_id": {
            "description": "Product ID",
            "example": "64a1b2c3d4e5f67890123456",
            "type": "string"
          },
          "automaticTaxCategoryId": {
            "description": "Automatic tax category ID",
            "example": "64a1b2c3d4e5f67890123460",
            "type": "string"
          },
          "availableInStore": {
            "description": "Product availability in store",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "Collection IDs",
            "example": [
              "64a1b2c3d4e5f67890123458",
              "64a1b2c3d4e5f67890123459"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "Product description",
            "example": "A high-quality premium product with excellent features and durability",
            "type": "string"
          },
          "image": {
            "description": "Product image",
            "example": "https://example.com/product-image.jpg",
            "type": "string"
          },
          "isLabelEnabled": {
            "description": "Enable product label",
            "example": true,
            "type": "boolean"
          },
          "isTaxesEnabled": {
            "description": "Enable taxes",
            "example": true,
            "type": "boolean"
          },
          "label": {
            "description": "Product label",
            "type": "object"
          },
          "medias": {
            "description": "Product media",
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "name": {
            "description": "Product name",
            "example": "Premium Product",
            "type": "string"
          },
          "prices": {
            "description": "Array of price variants for the product",
            "items": {
              "$ref": "#/components/schemas/BulkEditPriceDto"
            },
            "type": "array"
          },
          "seo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductSEODto"
              }
            ],
            "description": "SEO metadata for the product"
          },
          "slug": {
            "description": "Product URL slug",
            "example": "premium-product",
            "type": "string"
          },
          "taxInclusive": {
            "description": "Tax inclusive pricing",
            "example": false,
            "type": "boolean"
          },
          "taxes": {
            "description": "Product taxes",
            "items": {
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "_id"
        ],
        "type": "object"
      },
      "BulkEditRequestDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "products": {
            "description": "Array of products to update. Note: The total count includes all prices within each product.",
            "items": {
              "$ref": "#/components/schemas/BulkEditProductDto"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "products"
        ],
        "type": "object"
      },
      "BulkEditResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Products updated successfully",
            "type": "string"
          },
          "status": {
            "description": "Operation status",
            "example": true,
            "type": "boolean"
          },
          "updatedCount": {
            "description": "Number of products updated",
            "example": 5,
            "type": "number"
          }
        },
        "required": [
          "message",
          "status",
          "updatedCount"
        ],
        "type": "object"
      },
      "BulkEnableSaasActionPayloadDto": {
        "properties": {
          "priceId": {
            "description": "Price ID for the SaaS plan",
            "example": "price_1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          },
          "providerLocationId": {
            "description": "Provider location ID",
            "example": "r06mdj4OrrERzYDvsOdh",
            "type": "string"
          },
          "saasPlanId": {
            "description": "SaaS plan ID",
            "example": "66c4d36534f21f900dc2a265",
            "type": "string"
          },
          "stripeAccountId": {
            "description": "Stripe account ID",
            "example": "acct_1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          }
        },
        "required": [
          "saasPlanId"
        ],
        "type": "object"
      },
      "BulkEnableSaasRequestDto": {
        "properties": {
          "actionPayload": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BulkEnableSaasActionPayloadDto"
              }
            ],
            "description": "Action payload for the bulk enable SaaS operation"
          },
          "isSaaSV2": {
            "description": "Indicates if the SaaS is V2",
            "example": true,
            "type": "boolean"
          },
          "locationIds": {
            "description": "Array of location IDs to enable SaaS for",
            "example": [
              "locationId1",
              "locationId2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationIds",
          "isSaaSV2",
          "actionPayload"
        ],
        "type": "object"
      },
      "BulkEnableSaasResponseDto": {
        "properties": {
          "bulkActionUrl": {
            "description": "URL for the bulk enable SaaS operation",
            "example": "https://example.com/bulk-enable-saas",
            "type": "string"
          },
          "message": {
            "description": "Message indicating the bulk enable SaaS operation",
            "example": "Bulk enable SaaS operation completed successfully",
            "type": "string"
          },
          "success": {
            "description": "Indicates if the bulk enable SaaS operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message"
        ],
        "type": "object"
      },
      "BulkUpdateDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "availability": {
            "description": "New availability status",
            "type": "boolean"
          },
          "collectionIds": {
            "description": "Array of collection IDs",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "compareAtPrice": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PriceUpdateField"
              }
            ],
            "description": "Compare at price update configuration"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "filters": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BulkUpdateFilters"
              }
            ],
            "description": "Filters to apply when selectAll is true"
          },
          "price": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PriceUpdateField"
              }
            ],
            "description": "Price update configuration"
          },
          "productIds": {
            "description": "Array of product IDs",
            "example": [
              "5f8d0d55b54764421b7156c1"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "type": {
            "description": "Type of bulk update operation",
            "enum": [
              "bulk-update-price",
              "bulk-update-availability",
              "bulk-update-product-collection",
              "bulk-delete-products",
              "bulk-update-currency"
            ],
            "example": "bulk-update-price",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "type",
          "productIds"
        ],
        "type": "object"
      },
      "BulkUpdateFilters": {
        "properties": {
          "availableInStore": {
            "description": "Filter by availability status",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "Filter by collection IDs",
            "example": [
              "5f8d0d55b54764421b7156c1",
              "5f8d0d55b54764421b7156c2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "productType": {
            "description": "Filter by product type",
            "example": "one-time",
            "type": "string"
          },
          "search": {
            "description": "Filter by search term",
            "example": "blue t-shirt",
            "type": "string"
          }
        },
        "type": "object"
      },
      "BulkUpdateResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "BusinessCreatedByOrUpdatedBy": {
        "properties": {},
        "type": "object"
      },
      "BusinessDetails": {
        "properties": {},
        "type": "object"
      },
      "BusinessDetailsDto": {
        "properties": {
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressDto"
              }
            ],
            "description": "Business Address",
            "example": "9931 Beechwood, TX"
          },
          "customValues": {
            "description": "Custom Values",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "logoUrl": {
            "description": "Business Logo URL",
            "example": "https://example.com/logo.png",
            "type": "string"
          },
          "name": {
            "description": "Business Name",
            "example": "ABC Corp.",
            "type": "string"
          },
          "phoneNo": {
            "description": "Business Phone Number",
            "example": "+1-214-559-6993",
            "type": "string"
          },
          "website": {
            "description": "Business Website Link",
            "example": "wwww.example.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "BusinessDto": {
        "properties": {
          "address": {
            "description": "address",
            "type": "string"
          },
          "city": {
            "description": "city",
            "type": "string"
          },
          "country": {
            "description": "country",
            "example": "united states",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation Time",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessCreatedByOrUpdatedBy"
              }
            ],
            "description": "Created By"
          },
          "description": {
            "description": "description",
            "type": "string"
          },
          "email": {
            "description": "email",
            "example": "abc@example.com",
            "type": "string"
          },
          "id": {
            "description": "Business Id",
            "example": "63771dcac1116f0e21de8e12",
            "type": "string"
          },
          "locationId": {
            "description": "locaitonId",
            "type": "string"
          },
          "name": {
            "description": "Business Name",
            "example": "Microsoft",
            "type": "string"
          },
          "phone": {
            "description": "phone number",
            "type": "string"
          },
          "postalCode": {
            "description": "postal code",
            "type": "string"
          },
          "state": {
            "description": "state",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updation time",
            "format": "date-time",
            "type": "string"
          },
          "updatedBy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessCreatedByOrUpdatedBy"
              }
            ],
            "description": "updated By"
          },
          "website": {
            "description": "website",
            "example": "microsoft.com",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "locationId"
        ],
        "type": "object"
      },
      "BusinessOfficeHoursDTO": {
        "properties": {
          "enableBusinessHours": {
            "description": "Enable Business Hours",
            "example": false,
            "type": "boolean"
          },
          "openHours": {
            "description": "Open hours schedule",
            "example": [
              {
                "closeHour": "17:00",
                "day": "monday",
                "openHour": "09:00"
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "outsideOfficeHoursWelcomeMsg": {
            "description": "Time Zone",
            "example": "Asia/Calcutta",
            "type": "string"
          },
          "timezone": {
            "description": "Time Zone",
            "example": "UTC",
            "type": "string"
          }
        },
        "type": "object"
      },
      "BusinessSchema": {
        "properties": {
          "address": {
            "example": "MIG 14, Delhi",
            "type": "string"
          },
          "city": {
            "example": "delhi",
            "type": "string"
          },
          "country": {
            "example": "IN",
            "type": "string"
          },
          "logoUrl": {
            "example": "https://dummyimage.com/o/locationPhotos%2Fve9EPM428h8vShlRW1KT.jpeg",
            "type": "string"
          },
          "name": {
            "example": "dentist",
            "type": "string"
          },
          "postalCode": {
            "example": "567654",
            "type": "string"
          },
          "state": {
            "example": "delhi",
            "type": "string"
          },
          "timezone": {
            "example": "America/Chicago",
            "type": "string"
          },
          "website": {
            "example": "https://gohighlevel.com/",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CCRecipientItem": {
        "properties": {
          "contactName": {
            "description": "Contact Name",
            "example": "Jim Anton",
            "type": "string"
          },
          "email": {
            "description": "Email",
            "example": "jim@example.com",
            "type": "string"
          },
          "firstName": {
            "description": "First Name",
            "example": "Jim",
            "type": "string"
          },
          "id": {
            "description": "Contact ID",
            "example": "contactId",
            "type": "string"
          },
          "imageUrl": {
            "description": "Contact Image URL",
            "example": "https://example.com/image.jpg",
            "type": "string"
          },
          "lastName": {
            "description": "Last Name",
            "example": "Anton",
            "type": "string"
          }
        },
        "required": [
          "email",
          "id",
          "imageUrl",
          "contactName",
          "firstName",
          "lastName"
        ],
        "type": "object"
      },
      "CSVDefaultDTO": {
        "properties": {
          "userId": {
            "description": "User ID",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "type": "string"
          }
        },
        "required": [
          "userId"
        ],
        "type": "object"
      },
      "CSVErrorResponseDTO": {
        "properties": {
          "code": {
            "description": "Error code for CSV processing errors",
            "enum": [
              "CSV_EMPTY_FILE",
              "CSV_INVALID_FORMAT",
              "CSV_HEADERS_NOT_MATCHING",
              "CSV_MISSING_HEADERS",
              "CSV_MISSING_REQUIRED_ROWS",
              "CSV_UNSUPPORTED_EXTENSION",
              "CSV_NO_VALID_POST",
              "CSV_PROCESSING_ERROR"
            ],
            "example": "CSV_HEADERS_NOT_MATCHING",
            "type": "string"
          },
          "csvFileType": {
            "description": "CSV file type",
            "enum": [
              "basic",
              "advance"
            ],
            "example": "basic",
            "type": "string"
          },
          "fileType": {
            "description": "File type detected",
            "enum": [
              "CSV",
              "XLSX"
            ],
            "example": "CSV",
            "type": "string"
          },
          "message": {
            "description": "Error message describing the CSV validation error",
            "example": "CSV headers are not identical to sample file.",
            "type": "string"
          },
          "missingHeaders": {
            "description": "Comma-separated list of missing headers from the file",
            "example": "postAtSpecificTime (YYYY-MM-DD HH:mm:ss), content, link (OGmetaUrl)",
            "type": "string"
          }
        },
        "required": [
          "code",
          "message"
        ],
        "type": "object"
      },
      "CSVFileRequiredBadRequestDTO": {
        "properties": {
          "error": {
            "description": "Error type",
            "example": "Bad Request",
            "type": "string"
          },
          "message": {
            "description": "Error message",
            "example": "File is required",
            "type": "string"
          },
          "name": {
            "description": "Exception name",
            "example": "BadRequestException",
            "type": "string"
          },
          "options": {
            "description": "Options",
            "example": {},
            "type": "object"
          },
          "status": {
            "description": "HTTP Status",
            "example": 400,
            "type": "number"
          },
          "statusCode": {
            "description": "HTTP Status Code",
            "example": 400,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID for debugging",
            "example": "376a2de3-a3a4-4588-a6b5-bafe828f614b",
            "type": "string"
          }
        },
        "required": [
          "status",
          "message",
          "name",
          "error",
          "statusCode"
        ],
        "type": "object"
      },
      "CSVImportSchema": {
        "properties": {
          "accountIds": {
            "description": "Account Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "applyWatermark": {
            "description": "Apply watermark flag",
            "example": false,
            "type": "boolean"
          },
          "approver": {
            "description": "Approver Id",
            "example": "FSeSDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "channel": {
            "description": "Channel",
            "example": "oauth",
            "type": "string"
          },
          "count": {
            "description": "Posts count",
            "example": 5,
            "type": "number"
          },
          "createdAt": {
            "description": "Date Created",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "Created By Id",
            "example": "SDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "csvFileType": {
            "description": "CSV file type",
            "enum": [
              "basic",
              "advance"
            ],
            "example": "basic",
            "type": "string"
          },
          "file": {
            "description": "File path",
            "example": "omaDY3RbWtTP511e/social-import/d23d68c2-82c0-1db6e2.csv",
            "type": "string"
          },
          "fileName": {
            "description": "File Name",
            "example": "sample.csv",
            "type": "string"
          },
          "id": {
            "description": "CSV Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "iVrVJ2uoXNF0wzcBzgl5",
            "type": "string"
          },
          "mediaOptimization": {
            "description": "Media optimization flag",
            "example": true,
            "type": "boolean"
          },
          "originId": {
            "description": "Origin Id",
            "example": "FSeSDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "status": {
            "description": "CSV import status",
            "enum": [
              "pending",
              "in_progress",
              "completed",
              "failed",
              "in_review",
              "importing",
              "deleted"
            ],
            "example": "completed",
            "type": "string"
          },
          "traceId": {
            "description": "Trace Id",
            "example": "FSeSDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date Updated",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id"
        ],
        "type": "object"
      },
      "CSVMediaResponseSchema": {
        "properties": {
          "aspectRatio": {
            "description": "Media Aspect Ratio",
            "example": 1.5,
            "type": "number"
          },
          "audioChannels": {
            "description": "Audio Channel",
            "example": 1,
            "type": "number"
          },
          "audioCodecName": {
            "description": "Audio Codec",
            "example": "aac",
            "type": "string"
          },
          "displayAspectRatio": {
            "description": "Display Aspect Ratio",
            "example": "250 : 167",
            "type": "string"
          },
          "duration": {
            "description": "Media Aspect Ratio",
            "example": 60,
            "type": "number"
          },
          "error": {
            "description": "Error",
            "example": "Image is larger than 10MB",
            "type": "string"
          },
          "facebookError": {
            "description": "Facebook media error. It can be one of the following errors: imageSize, imageType, videoDuration, videoSize",
            "example": "videoDuration",
            "type": "string"
          },
          "format": {
            "description": "Media format",
            "example": "jpg",
            "type": "string"
          },
          "frameRate": {
            "description": "Video Frame Rate",
            "example": 21,
            "type": "number"
          },
          "frames": {
            "description": "List of frames",
            "example": [
              "https://storage.googleapis.com/crm-test/frame1.jpg",
              "https://storage.googleapis.com/crm-test/frame2.jpg"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "gmbError": {
            "description": "GMB media error. It can be one of the following errors: imageSize, imageDimension, imageType",
            "example": "imageDimension",
            "type": "string"
          },
          "height": {
            "description": "Media Height",
            "example": 500,
            "type": "number"
          },
          "instagramError": {
            "description": "Instagram media error. It can be one of the following errors: imageSize, imageType, videoType, videoDuration, videoSize, videoAspectRatio, videoWidthHeight, audioCodec, audioCodecChannels, videoCodec, videoFrameRate",
            "example": "imageSize",
            "type": "string"
          },
          "invalidError": {
            "description": "Media error. It can be one of the following values: imageSize, imageWidth",
            "example": "imageSize",
            "type": "string"
          },
          "linkedinError": {
            "description": "LinkedIn media error. It can be one of the following errors: imageSize, imageType, videoType, videoDuration, videoSize",
            "example": "imageType",
            "type": "string"
          },
          "selectedPoster": {
            "description": "Selected Poster",
            "example": 0,
            "type": "number"
          },
          "size": {
            "description": "Media Size",
            "example": 18362,
            "type": "number"
          },
          "tiktokBusinessError": {
            "description": "Tikok Business media error. It can be one of the following errors: videoType, videoDuration, videoSize, videoWidthHeight, videoCodec, videoFrameRate",
            "example": "videoType",
            "type": "string"
          },
          "tiktokError": {
            "description": "Tiktok media error. It can be one of the following errors: videoType, videoDuration, videoSize, videoWidthHeight, videoCodec, videoFrameRate",
            "example": "videoFrameRate",
            "type": "string"
          },
          "twitterError": {
            "description": "Twitter media error. It can be one of the following errors: imageSize, videoType, videoDuration, videoSize",
            "example": "videoSize",
            "type": "string"
          },
          "type": {
            "description": "Media Type",
            "example": "image/webp",
            "type": "string"
          },
          "url": {
            "description": "Media Url",
            "example": "https://storage.googleapis.com/crm-test/omaDY3RbWtTP511e808O/media/38e53059-b92706571605.png",
            "type": "string"
          },
          "videoCodecName": {
            "description": "Video Codec",
            "example": "h264",
            "type": "string"
          },
          "width": {
            "description": "Media Width",
            "example": 500,
            "type": "number"
          }
        },
        "type": "object"
      },
      "CSVPostSchema": {
        "properties": {
          "accountIds": {
            "description": "Account Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "applyWatermark": {
            "description": "Apply watermark flag",
            "example": false,
            "type": "boolean"
          },
          "csvFileType": {
            "description": "CSV file type",
            "enum": [
              "basic",
              "advance"
            ],
            "example": "basic",
            "type": "string"
          },
          "errorMessage": {
            "description": "Error Description",
            "example": "Invalid media format",
            "type": "string"
          },
          "followUpComment": {
            "description": "Follow-up comment to be posted immediately after the main post is published.\n\n**Supported Platforms:** Facebook, Instagram, LinkedIn, YouTube\n\n**NOT Supported:** TikTok, Google My Business (GMB), Pinterest\n\n**Use Case:** Great for adding hashtags, additional context, or engagement prompts without cluttering the main post.\n\n- Follow-up comment is automatically trimmed to platform limits\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)",
            "example": "What do you think? Let us know in the comments!",
            "type": "string"
          },
          "gmbPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GMBPostSchema"
              }
            ],
            "description": "GMB Post Details",
            "example": {
              "topicType": "STANDARD"
            }
          },
          "link": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IOgTagsSchema"
              }
            ],
            "description": "OG Tag",
            "example": {
              "ogDescription": "Social media as we know it has barely reached its 20th birthday",
              "ogTitle": "The Impact of Social Media",
              "url": "https://example.com/article"
            }
          },
          "mediaOptimization": {
            "description": "Media optimization flag",
            "example": true,
            "type": "boolean"
          },
          "medias": {
            "description": "Post Media List",
            "example": [
              {
                "size": 18362,
                "type": "image/webp",
                "url": "https://storage.googleapis.com/crm-test/omaDY3RbWtTP511e808O/media/38e53059-b92706571605.png"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/CSVMediaResponseSchema"
            },
            "type": "array"
          },
          "scheduleDate": {
            "description": "Schedule date for the post in ISO format",
            "example": "2022-11-23T05:53:00.000Z",
            "type": "string"
          },
          "status": {
            "description": "Post status",
            "enum": [
              "pending",
              "accepted",
              "rejected",
              "deleted"
            ],
            "example": "pending",
            "type": "string"
          },
          "summary": {
            "description": "Post content/summary",
            "example": "First post",
            "type": "string"
          },
          "tiktokPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TiktokPostSchema"
              }
            ],
            "description": "Tiktok Post Details",
            "example": {
              "enableComment": true,
              "enableDuet": false,
              "enableStitch": false,
              "privacyLevel": "PUBLIC_TO_EVERYONE"
            }
          },
          "type": {
            "description": "Post type - post, story, or reel",
            "example": "post",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date Updated",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CSVResponseSchema": {
        "properties": {
          "csv": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CsvResponse"
              }
            ],
            "description": "CSV Data",
            "example": {
              "count": 5,
              "fileName": "sample.csv",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "status": "completed"
            }
          }
        },
        "type": "object"
      },
      "CalendarByIdSuccessfulResponseDTO": {
        "properties": {
          "calendar": {
            "$ref": "#/components/schemas/CalendarDTO"
          }
        },
        "required": [
          "calendar"
        ],
        "type": "object"
      },
      "CalendarCreateDTO": {
        "properties": {
          "alertEmail": {
            "type": "string"
          },
          "allowBookingAfter": {
            "description": "Minimum scheduling notice for events",
            "type": "number"
          },
          "allowBookingAfterUnit": {
            "description": "Unit for minimum scheduling notice",
            "enum": [
              "hours",
              "days",
              "weeks",
              "months",
              "mins"
            ],
            "example": "days",
            "type": "string"
          },
          "allowBookingFor": {
            "description": "Minimum number of days/weeks/months for which to allow booking events",
            "type": "number"
          },
          "allowBookingForUnit": {
            "description": "Unit for controlling the duration for which booking would be allowed for",
            "enum": [
              "days",
              "weeks",
              "months"
            ],
            "example": "days",
            "type": "string"
          },
          "allowCancellation": {
            "default": true,
            "type": "boolean"
          },
          "allowReschedule": {
            "default": true,
            "type": "boolean"
          },
          "appoinmentPerDay": {
            "description": "Number of appointments that can be booked for a given day",
            "type": "number"
          },
          "appoinmentPerSlot": {
            "default": 1,
            "description": "Maximum bookings per slot (per user). Maximum seats per slot in case of Class Booking Calendar.",
            "type": "number"
          },
          "autoConfirm": {
            "default": true,
            "type": "boolean"
          },
          "availabilities": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.",
            "items": {
              "$ref": "#/components/schemas/Availability"
            },
            "type": "array"
          },
          "availabilityType": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is not required anymore.",
            "enum": [
              0,
              1
            ],
            "type": "number"
          },
          "calendarCoverImage": {
            "example": "https://path-to-image.com",
            "type": "string"
          },
          "calendarType": {
            "enum": [
              "round_robin",
              "event",
              "class_booking",
              "collective",
              "service_booking",
              "personal"
            ],
            "type": "string"
          },
          "consentLabel": {
            "type": "string"
          },
          "description": {
            "example": "this is used for testing",
            "type": "string"
          },
          "enableRecurring": {
            "default": false,
            "description": "Enable recurring appointments for the calendars. Please note that only one member should be added in the calendar to enable this",
            "type": "boolean"
          },
          "eventColor": {
            "default": "#039be5",
            "type": "string"
          },
          "eventTitle": {
            "default": "{{contact.name}}",
            "type": "string"
          },
          "eventType": {
            "default": "RoundRobin_OptimizeForAvailability",
            "enum": [
              "RoundRobin_OptimizeForAvailability",
              "RoundRobin_OptimizeForEqualDistribution"
            ],
            "type": "string"
          },
          "formId": {
            "type": "string"
          },
          "formSubmitRedirectURL": {
            "type": "string"
          },
          "formSubmitThanksMessage": {
            "type": "string"
          },
          "formSubmitType": {
            "default": "ThankYouMessage",
            "enum": [
              "RedirectURL",
              "ThankYouMessage"
            ],
            "type": "string"
          },
          "googleInvitationEmails": {
            "default": false,
            "type": "boolean"
          },
          "groupId": {
            "description": "Group Id",
            "example": "BqTwX8QFwXzpegMve9EQ",
            "type": "string"
          },
          "guestType": {
            "enum": [
              "count_only",
              "collect_detail"
            ],
            "type": "string"
          },
          "isActive": {
            "default": true,
            "description": "Should the created calendar be active or draft",
            "type": "boolean"
          },
          "isLivePaymentMode": {
            "type": "boolean"
          },
          "locationConfigurations": {
            "description": "Meeting location configuration for event calendar",
            "items": {
              "$ref": "#/components/schemas/LocationConfiguration"
            },
            "type": "array"
          },
          "locationId": {
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          },
          "lookBusyConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LookBusyConfiguration"
              }
            ],
            "description": "Look Busy Configuration"
          },
          "meetingLocation": {
            "deprecated": true,
            "description": "🚨 Deprecated! Use `locationConfigurations.location` or `teamMembers[].locationConfigurations.location` instead.",
            "readOnly": true,
            "type": "string"
          },
          "name": {
            "example": "test calendar",
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "notifications": {
            "deprecated": true,
            "description": "🚨 Deprecated! Please use 'Calendar Notifications APIs' instead.",
            "items": {
              "$ref": "#/components/schemas/CalendarNotification"
            },
            "type": "array"
          },
          "openHours": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.",
            "items": {
              "$ref": "#/components/schemas/OpenHour"
            },
            "type": "array"
          },
          "pixelId": {
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Unit for pre-buffer.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "recurring": {
            "$ref": "#/components/schemas/Recurring"
          },
          "shouldAssignContactToTeamMember": {
            "type": "boolean"
          },
          "shouldSendAlertEmailsToAssignedMember": {
            "type": "boolean"
          },
          "shouldSkipAssigningContactForExisting": {
            "type": "boolean"
          },
          "slotBuffer": {
            "description": "Slot-Buffer is additional time that can be added after an appointment, allowing for extra time to wrap up",
            "type": "number"
          },
          "slotBufferUnit": {
            "description": "Unit for slot buffer.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slotDuration": {
            "default": 30,
            "description": "This controls the duration of the meeting",
            "type": "number"
          },
          "slotDurationUnit": {
            "description": "Unit for slot duration.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slotInterval": {
            "default": 30,
            "description": "Slot interval reflects the amount of time the between booking slots that will be shown in the calendar.",
            "type": "number"
          },
          "slotIntervalUnit": {
            "description": "Unit for slot interval.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slug": {
            "example": "test1",
            "type": "string"
          },
          "stickyContact": {
            "type": "boolean"
          },
          "teamMembers": {
            "description": "Team members are required for calendars of type: Round Robin, Collective, Class, Service. Personal calendar must have exactly one team member.",
            "items": {
              "$ref": "#/components/schemas/TeamMember"
            },
            "type": "array"
          },
          "widgetSlug": {
            "example": "test1",
            "type": "string"
          },
          "widgetType": {
            "default": "classic",
            "description": "Calendar widget type. Choose \"default\" for \"neo\" and \"classic\" for \"classic\" layout.",
            "enum": [
              "default",
              "classic"
            ],
            "example": "classic",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name"
        ],
        "type": "object"
      },
      "CalendarDTO": {
        "properties": {
          "alertEmail": {
            "type": "string"
          },
          "allowBookingAfter": {
            "description": "Minimum scheduling notice for events",
            "type": "number"
          },
          "allowBookingAfterUnit": {
            "description": "Unit for minimum scheduling notice",
            "enum": [
              "hours",
              "days",
              "weeks",
              "months",
              "mins"
            ],
            "example": "days",
            "type": "string"
          },
          "allowBookingFor": {
            "description": "Minimum number of days/weeks/months for which to allow booking events",
            "type": "number"
          },
          "allowBookingForUnit": {
            "description": "Unit for controlling the duration for which booking would be allowed for",
            "enum": [
              "days",
              "weeks",
              "months"
            ],
            "example": "days",
            "type": "string"
          },
          "allowCancellation": {
            "default": true,
            "type": "boolean"
          },
          "allowReschedule": {
            "default": true,
            "type": "boolean"
          },
          "appoinmentPerDay": {
            "description": "Number of appointments that can be booked for a given day",
            "type": "number"
          },
          "appoinmentPerSlot": {
            "default": 1,
            "description": "Maximum bookings per slot (per user). Maximum seats per slot in case of Class Booking Calendar.",
            "type": "number"
          },
          "autoConfirm": {
            "default": true,
            "type": "boolean"
          },
          "availabilities": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.",
            "items": {
              "$ref": "#/components/schemas/Availability"
            },
            "type": "array"
          },
          "availabilityType": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is not required anymore.",
            "enum": [
              0,
              1
            ],
            "type": "number"
          },
          "calendarCoverImage": {
            "example": "https://path-to-image.com",
            "type": "string"
          },
          "calendarType": {
            "enum": [
              "round_robin",
              "event",
              "class_booking",
              "collective",
              "service_booking",
              "personal"
            ],
            "type": "string"
          },
          "consentLabel": {
            "type": "string"
          },
          "description": {
            "example": "this is used for testing",
            "type": "string"
          },
          "enableRecurring": {
            "default": false,
            "description": "Enable recurring appointments for the calendars. Please note that only one member should be added in the calendar to enable this",
            "type": "boolean"
          },
          "eventColor": {
            "default": "#039be5",
            "type": "string"
          },
          "eventTitle": {
            "default": "{{contact.name}}",
            "type": "string"
          },
          "eventType": {
            "default": "RoundRobin_OptimizeForAvailability",
            "enum": [
              "RoundRobin_OptimizeForAvailability",
              "RoundRobin_OptimizeForEqualDistribution"
            ],
            "type": "string"
          },
          "formId": {
            "type": "string"
          },
          "formSubmitRedirectURL": {
            "type": "string"
          },
          "formSubmitThanksMessage": {
            "type": "string"
          },
          "formSubmitType": {
            "default": "ThankYouMessage",
            "enum": [
              "RedirectURL",
              "ThankYouMessage"
            ],
            "type": "string"
          },
          "googleInvitationEmails": {
            "default": false,
            "type": "boolean"
          },
          "groupId": {
            "description": "Group Id",
            "example": "BqTwX8QFwXzpegMve9EQ",
            "type": "string"
          },
          "guestType": {
            "enum": [
              "count_only",
              "collect_detail"
            ],
            "type": "string"
          },
          "id": {
            "example": "0TkCdp9PfvLeWKYRRvIz",
            "type": "string"
          },
          "isActive": {
            "default": true,
            "description": "Should the created calendar be active or draft",
            "type": "boolean"
          },
          "isLivePaymentMode": {
            "type": "boolean"
          },
          "locationConfigurations": {
            "description": "Meeting location configuration for event calendar",
            "items": {
              "$ref": "#/components/schemas/LocationConfigurationResponse"
            },
            "type": "array"
          },
          "locationId": {
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          },
          "lookBusyConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LookBusyConfiguration"
              }
            ],
            "description": "Look Busy Configuration"
          },
          "meetingLocation": {
            "deprecated": true,
            "description": "🚨 Deprecated! Use `locationConfigurations.location` or `teamMembers[].locationConfigurations.location` instead.",
            "readOnly": true,
            "type": "string"
          },
          "name": {
            "example": "test calendar",
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "notifications": {
            "deprecated": true,
            "description": "🚨 Deprecated! Please use 'Calendar Notifications APIs' instead.",
            "items": {
              "$ref": "#/components/schemas/CalendarNotification"
            },
            "type": "array"
          },
          "openHours": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.",
            "items": {
              "$ref": "#/components/schemas/OpenHour"
            },
            "type": "array"
          },
          "pixelId": {
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Unit for pre-buffer.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "recurring": {
            "$ref": "#/components/schemas/Recurring"
          },
          "shouldAssignContactToTeamMember": {
            "type": "boolean"
          },
          "shouldSendAlertEmailsToAssignedMember": {
            "type": "boolean"
          },
          "shouldSkipAssigningContactForExisting": {
            "type": "boolean"
          },
          "slotBuffer": {
            "description": "Slot-Buffer is additional time that can be added after an appointment, allowing for extra time to wrap up",
            "type": "number"
          },
          "slotBufferUnit": {
            "description": "Unit for slot buffer.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slotDuration": {
            "default": 30,
            "description": "This controls the duration of the meeting",
            "type": "number"
          },
          "slotDurationUnit": {
            "description": "Unit for slot duration.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slotInterval": {
            "default": 30,
            "description": "Slot interval reflects the amount of time the between booking slots that will be shown in the calendar.",
            "type": "number"
          },
          "slotIntervalUnit": {
            "description": "Unit for slot interval.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slug": {
            "example": "test1",
            "type": "string"
          },
          "stickyContact": {
            "type": "boolean"
          },
          "teamMembers": {
            "description": "Team members are for calendars of type: Round Robin, Collective, Class, Service. Personal calendar must have exactly one team member.",
            "items": {
              "$ref": "#/components/schemas/TeamMemberResponse"
            },
            "type": "array"
          },
          "widgetSlug": {
            "example": "test1",
            "type": "string"
          },
          "widgetType": {
            "default": "classic",
            "description": "Calendar widget type. Choose \"default\" for \"neo\" and \"classic\" for \"classic\" layout.",
            "enum": [
              "default",
              "classic"
            ],
            "example": "classic",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "id"
        ],
        "type": "object"
      },
      "CalendarDeleteSuccessfulResponseDTO": {
        "properties": {
          "success": {
            "description": "Success",
            "example": "true",
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "CalendarEventDTO": {
        "properties": {
          "address": {
            "description": "Calendar Event address",
            "example": "https://meet.google.com/yqp-gogr-wve",
            "type": "string"
          },
          "appointmentStatus": {
            "description": "Appointment Status",
            "example": "confirmed",
            "type": "string"
          },
          "assignedResources": {
            "description": "Ids of associated resources rooms and/or equipments",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "assignedUserId": {
            "description": "AssignedUser - the primary owner of an appointment",
            "example": "YlWd2wuCAZQzh2cH1fVZ",
            "type": "string"
          },
          "calendarId": {
            "description": "Calendar ID",
            "example": "BqTwX8QFwXzpegMve9EQ",
            "type": "string"
          },
          "contactId": {
            "description": "Contact ID",
            "example": "9NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "createdBy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedOrUpdatedBy"
              }
            ],
            "description": "Appointment booked by metadata"
          },
          "dateAdded": {
            "description": "Date Added",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "object"
          },
          "dateUpdated": {
            "description": "Date Updated",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "object"
          },
          "deleted": {
            "description": "Tells if a calendar event has been deleted",
            "example": false,
            "type": "boolean"
          },
          "description": {
            "description": "Description",
            "example": "Some dummy description",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "object"
          },
          "groupId": {
            "description": "Group ID",
            "example": "9NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "id": {
            "description": "Event Id or Instance id for a recurring event",
            "examples": [
              "ocQHyuzHvysMo5N5VsXc",
              "ocQHyuzHvysMo5N5VsXc_1729821600000_1800"
            ],
            "type": "string"
          },
          "isRecurring": {
            "description": "true if the event is recurring otherwise false",
            "example": "true",
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "masterEventId": {
            "description": "Master event id for a recurring instance",
            "example": "ocWd2wuBGAQzh2cH1fSZ",
            "type": "string"
          },
          "notes": {
            "description": "Notes",
            "example": "Some dummy note",
            "type": "string"
          },
          "rrule": {
            "description": "RRULE as per the iCalendar (RFC 5545) specification for recurring events. DTSTART is not required, instance ids are calculated on the basis of startTime of the event.",
            "examples": [
              "RRULE:FREQ=DAILY;INTERVAL=1;COUNT=5",
              "RRULE:FREQ=DAILY;INTERVAL=1;UNTIL=20210623T043000Z\nEXDATE:20211105T040000Z,20211105T040000Z"
            ],
            "type": "string"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "object"
          },
          "title": {
            "description": "Calendar Event title",
            "example": "Appointment with GHL Dev team",
            "type": "string"
          },
          "users": {
            "description": "Users - the secondary owners of an appointment.",
            "example": [
              "YlWd2wuCAZQzh2cH1fVZ",
              "9NkT25Vor1v4aQatFsv2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "title",
          "calendarId",
          "locationId",
          "contactId",
          "groupId",
          "appointmentStatus",
          "assignedUserId",
          "users",
          "startTime",
          "endTime",
          "dateAdded",
          "dateUpdated"
        ],
        "type": "object"
      },
      "CalendarListDTO": {
        "properties": {
          "accountIds": {
            "description": "Filter by Account IDs. If not provided or empty, returns all posts.",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "categoryIds": {
            "description": "Category Id",
            "example": [
              "64e431dcaf507c4b26dbdf8b"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "endDate": {
            "description": "End Date in ISO format",
            "example": "2023-10-31T23:59:59.999Z",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "startDate": {
            "description": "Start Date in ISO format",
            "example": "2023-10-01T00:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "startDate",
          "endDate"
        ],
        "type": "object"
      },
      "CalendarNotification": {
        "properties": {
          "selectedUsers": {
            "description": "Comma separated emails",
            "example": "user1@example.com,user2@example.com",
            "type": "string"
          },
          "shouldSendToContact": {
            "type": "boolean"
          },
          "shouldSendToGuest": {
            "type": "boolean"
          },
          "shouldSendToSelectedUsers": {
            "type": "boolean"
          },
          "shouldSendToUser": {
            "type": "boolean"
          },
          "type": {
            "default": "email",
            "description": "Calendar Notification",
            "enum": [
              "email"
            ],
            "example": "email",
            "type": "string"
          }
        },
        "required": [
          "shouldSendToContact",
          "shouldSendToGuest",
          "shouldSendToUser",
          "shouldSendToSelectedUsers",
          "selectedUsers"
        ],
        "type": "object"
      },
      "CalendarNotificationDeleteResponseDTO": {
        "properties": {
          "message": {
            "description": "Result of delete/update operation",
            "type": "string"
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "CalendarNotificationResponseDTO": {
        "properties": {
          "_id": {
            "description": "Notification ID",
            "type": "string"
          },
          "additionalEmailIds": {
            "example": [
              "example1@example.com",
              "example2@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "additionalPhoneNumbers": {
            "example": [
              "+919876744444",
              "+919876744445"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "additionalWhatsappNumbers": {
            "example": [
              "+919876744444",
              "+919876744445"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "afterTime": {
            "example": [
              {
                "timeOffset": 1,
                "unit": "hours"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SchedulesDTO"
            },
            "type": "array"
          },
          "beforeTime": {
            "example": [
              {
                "timeOffset": 1,
                "unit": "hours"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SchedulesDTO"
            },
            "type": "array"
          },
          "body": {
            "example": "This is a test notification",
            "type": "string"
          },
          "channel": {
            "enum": [
              "email",
              "inApp",
              "sms",
              "whatsapp"
            ],
            "example": "email",
            "type": "string"
          },
          "deleted": {
            "example": false,
            "type": "boolean"
          },
          "isActive": {
            "example": true,
            "type": "boolean"
          },
          "notificationType": {
            "enum": [
              "booked",
              "confirmation",
              "cancellation",
              "reminder",
              "followup",
              "reschedule"
            ],
            "example": "confirmation",
            "type": "string"
          },
          "receiverType": {
            "enum": [
              "contact",
              "guest",
              "assignedUser",
              "emails",
              "phoneNumbers",
              "business"
            ],
            "example": "contact",
            "type": "string"
          },
          "selectedUsers": {
            "example": [
              "user1",
              "user2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "subject": {
            "example": "Test Notification",
            "type": "string"
          },
          "templateId": {
            "example": "0as9d8as0d",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CalendarResourceByIdResponseDTO": {
        "properties": {
          "calendarIds": {
            "description": "Calendar IDs",
            "example": [
              "Jsj0xnlDDjw0SuvX1J13",
              "oCM5feFC86FAAbcO7lJK"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "capacity": {
            "description": "Capacity of the resource",
            "example": 85,
            "type": "number"
          },
          "description": {
            "description": "Description of the resource",
            "type": "string"
          },
          "isActive": {
            "description": "Whether the resource is active",
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID of the resource",
            "type": "string"
          },
          "name": {
            "description": "Name of the resource",
            "example": "yoga room",
            "type": "string"
          },
          "outOfService": {
            "description": "Indicates if the resource is out of service",
            "example": 0,
            "type": "number"
          },
          "quantity": {
            "description": "Quantity of the resource",
            "type": "number"
          },
          "resourceType": {
            "enum": [
              "equipments",
              "rooms"
            ],
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "resourceType",
          "isActive",
          "calendarIds"
        ],
        "type": "object"
      },
      "CalendarResourceResponseDTO": {
        "properties": {
          "capacity": {
            "description": "Capacity of the resource",
            "example": 85,
            "type": "number"
          },
          "description": {
            "description": "Description of the resource",
            "type": "string"
          },
          "isActive": {
            "description": "Whether the resource is active",
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID of the resource",
            "type": "string"
          },
          "name": {
            "description": "Name of the resource",
            "example": "yoga room",
            "type": "string"
          },
          "outOfService": {
            "description": "Indicates if the resource is out of service",
            "example": 0,
            "type": "number"
          },
          "quantity": {
            "description": "Quantity of the resource",
            "type": "number"
          },
          "resourceType": {
            "enum": [
              "equipments",
              "rooms"
            ],
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "resourceType",
          "isActive"
        ],
        "type": "object"
      },
      "CalendarUpdateDTO": {
        "properties": {
          "alertEmail": {
            "type": "string"
          },
          "allowBookingAfter": {
            "description": "Minimum scheduling notice for events",
            "type": "number"
          },
          "allowBookingAfterUnit": {
            "description": "Unit for minimum scheduling notice",
            "enum": [
              "hours",
              "days",
              "weeks",
              "months",
              "mins"
            ],
            "example": "days",
            "type": "string"
          },
          "allowBookingFor": {
            "description": "Minimum number of days/weeks/months for which to allow booking events",
            "type": "number"
          },
          "allowBookingForUnit": {
            "description": "Unit for controlling the duration for which booking would be allowed for",
            "enum": [
              "days",
              "weeks",
              "months"
            ],
            "example": "days",
            "type": "string"
          },
          "allowCancellation": {
            "type": "boolean"
          },
          "allowReschedule": {
            "type": "boolean"
          },
          "appoinmentPerDay": {
            "description": "Number of appointments that can be booked for a given day",
            "type": "number"
          },
          "appoinmentPerSlot": {
            "type": "number"
          },
          "autoConfirm": {
            "type": "boolean"
          },
          "availabilities": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.",
            "items": {
              "$ref": "#/components/schemas/UpdateAvailability"
            },
            "type": "array"
          },
          "availabilityType": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is not required anymore.",
            "enum": [
              0,
              1
            ],
            "type": "number"
          },
          "calendarCoverImage": {
            "type": "string"
          },
          "consentLabel": {
            "type": "string"
          },
          "description": {
            "example": "this is used for testing",
            "type": "string"
          },
          "enableRecurring": {
            "default": false,
            "description": "Enable recurring appointments for the calendars. Please note that only one member should be added in the calendar to enable this",
            "type": "boolean"
          },
          "eventColor": {
            "default": "#039be5",
            "type": "string"
          },
          "eventTitle": {
            "type": "string"
          },
          "eventType": {
            "enum": [
              "RoundRobin_OptimizeForAvailability",
              "RoundRobin_OptimizeForEqualDistribution"
            ],
            "type": "string"
          },
          "formId": {
            "type": "string"
          },
          "formSubmitRedirectURL": {
            "type": "string"
          },
          "formSubmitThanksMessage": {
            "type": "string"
          },
          "formSubmitType": {
            "default": "ThankYouMessage",
            "enum": [
              "RedirectURL",
              "ThankYouMessage"
            ],
            "type": "string"
          },
          "googleInvitationEmails": {
            "type": "boolean"
          },
          "groupId": {
            "description": "Group Id",
            "example": "BqTwX8QFwXzpegMve9EQ",
            "type": "string"
          },
          "guestType": {
            "enum": [
              "count_only",
              "collect_detail"
            ],
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          },
          "isLivePaymentMode": {
            "type": "boolean"
          },
          "locationConfigurations": {
            "description": "Meeting location configuration for event calendar",
            "items": {
              "$ref": "#/components/schemas/LocationConfiguration"
            },
            "type": "array"
          },
          "lookBusyConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LookBusyConfiguration"
              }
            ],
            "description": "Look Busy Configuration"
          },
          "meetingLocation": {
            "deprecated": true,
            "description": "🚨 Deprecated! Use `locationConfigurations.location` or `teamMembers[].locationConfigurations.location` instead.",
            "readOnly": true,
            "type": "string"
          },
          "name": {
            "example": "test calendar",
            "type": "string"
          },
          "notes": {
            "type": "string"
          },
          "notifications": {
            "deprecated": true,
            "description": "🚨 Deprecated! Please use 'Calendar Notifications APIs' instead.",
            "items": {
              "$ref": "#/components/schemas/CalendarNotification"
            },
            "type": "array"
          },
          "openHours": {
            "deprecated": true,
            "description": "While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.",
            "items": {
              "$ref": "#/components/schemas/OpenHour"
            },
            "type": "array"
          },
          "pixelId": {
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Unit for pre-buffer.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "recurring": {
            "$ref": "#/components/schemas/Recurring"
          },
          "shouldAssignContactToTeamMember": {
            "type": "boolean"
          },
          "shouldSendAlertEmailsToAssignedMember": {
            "type": "boolean"
          },
          "shouldSkipAssigningContactForExisting": {
            "type": "boolean"
          },
          "slotBuffer": {
            "description": "Slot-Buffer is additional time that can be added after an appointment, allowing for extra time to wrap up",
            "type": "number"
          },
          "slotDuration": {
            "default": 30,
            "description": "This controls the duration of the meeting",
            "type": "number"
          },
          "slotDurationUnit": {
            "description": "Unit for slot duration.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slotInterval": {
            "default": 30,
            "description": "Slot interval reflects the amount of time the between booking slots that will be shown in the calendar.",
            "type": "number"
          },
          "slotIntervalUnit": {
            "description": "Unit for slot interval.",
            "enum": [
              "mins",
              "hours"
            ],
            "type": "string"
          },
          "slug": {
            "example": "test1",
            "type": "string"
          },
          "stickyContact": {
            "type": "boolean"
          },
          "teamMembers": {
            "description": "Team members are required for calendars of type: Round Robin, Collective, Class, Service. Personal calendar must have exactly one team member.",
            "items": {
              "$ref": "#/components/schemas/TeamMember"
            },
            "type": "array"
          },
          "widgetSlug": {
            "example": "test1",
            "type": "string"
          },
          "widgetType": {
            "default": "classic",
            "description": "Calendar widget type. Choose \"default\" for \"neo\" and \"classic\" for \"classic\" layout.",
            "enum": [
              "default",
              "classic"
            ],
            "example": "classic",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CalendarsDeleteNoteSuccessfulResponseDto": {
        "properties": {
          "success": {
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "CalendarsGetCreateUpdateNoteSuccessfulResponseDto": {
        "properties": {
          "note": {
            "$ref": "#/components/schemas/CalendarsGetNoteSchema"
          }
        },
        "type": "object"
      },
      "CalendarsGetNoteSchema": {
        "properties": {
          "body": {
            "example": "lorem ipsum",
            "type": "string"
          },
          "contactId": {
            "example": "TUcmRxWrjqzJS8EjkxNK",
            "type": "string"
          },
          "createdBy": {
            "$ref": "#/components/schemas/NoteCreatedBySchema"
          },
          "dateAdded": {
            "example": "2021-07-08T12:02:11.285Z",
            "type": "string"
          },
          "id": {
            "example": "HGPcayliwcdoUFzvbTok",
            "type": "string"
          },
          "userId": {
            "example": "TUcmRxWrjqzJS8EjkxNK",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CalendarsGetNotesListSuccessfulResponseDto": {
        "properties": {
          "hasMore": {
            "example": true,
            "type": "boolean"
          },
          "notes": {
            "items": {
              "$ref": "#/components/schemas/CalendarsGetNoteSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CalendarsGetSuccessfulResponseDTO": {
        "properties": {
          "calendars": {
            "items": {
              "$ref": "#/components/schemas/CalendarDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CalendarsNotesDTO": {
        "properties": {
          "body": {
            "description": "Note body",
            "example": "lorem ipsum",
            "maxLength": 5000,
            "type": "string"
          },
          "userId": {
            "example": "GCs5KuzPqTls7vWclkEV",
            "type": "string"
          }
        },
        "required": [
          "body"
        ],
        "type": "object"
      },
      "CallActionSchema": {
        "properties": {
          "actionId": {
            "description": "Action ID reference",
            "example": "507f1f77bcf86cd799439015",
            "type": "string"
          },
          "actionName": {
            "description": "Action name",
            "example": "Send SMS Confirmation",
            "type": "string"
          },
          "actionParameters": {
            "description": "Action parameters - structure varies by actionType",
            "examples": {
              "appointmentBooking": {
                "summary": "Appointment Booking Action Parameters",
                "value": {
                  "calendarId": "507f1f77bcf86cd799439022",
                  "daysOfOfferingDates": 3,
                  "hoursBetweenSlots": 1,
                  "slotsPerDay": 3
                }
              },
              "callTransfer": {
                "summary": "Call Transfer Action Parameters",
                "value": {
                  "hearWhisperMessage": true,
                  "transferToType": "number",
                  "transferToValue": "+12345678901",
                  "triggerMessage": "Let me transfer you to a manager right away"
                }
              },
              "customAction": {
                "summary": "Custom Action Parameters",
                "value": {
                  "apiDetails": {
                    "authenticationRequired": true,
                    "authenticationValue": "token123",
                    "method": "GET",
                    "parameters": [
                      {
                        "description": "Order ID to look up",
                        "example": "ORD-12345",
                        "name": "orderId",
                        "type": "string"
                      }
                    ],
                    "url": "https://api.example.com/orders"
                  },
                  "responsePathsToExtract": [
                    "data.orderId",
                    "status"
                  ],
                  "triggerMessage": "Let me check that order status",
                  "triggerPrompt": "When caller provides order number"
                }
              },
              "dataExtraction": {
                "summary": "Data Extraction Action Parameters",
                "value": {
                  "contactFieldId": "507f1f77bcf86cd799439011",
                  "description": "Customer's email address",
                  "examples": [
                    "john@example.com",
                    "jane@example.com"
                  ],
                  "overwriteExistingValue": false
                }
              },
              "knowledgeBase": {
                "summary": "Knowledge Base Action Parameters",
                "value": {
                  "knowledgeBaseId": "507f1f77bcf86cd799439027",
                  "parameters": [
                    {
                      "description": "Product category to search",
                      "example": "pricing",
                      "name": "category",
                      "type": "string"
                    }
                  ],
                  "triggerMessage": "Let me look that up for you",
                  "triggerPrompt": "When caller asks about pricing"
                }
              },
              "sms": {
                "summary": "SMS Action Parameters",
                "value": {
                  "messageBody": "Your appointment is confirmed for tomorrow at 2 PM",
                  "triggerMessage": "I'll send you a confirmation text",
                  "triggerPrompt": "When caller asks for booking confirmation"
                }
              },
              "workflowTrigger": {
                "summary": "Workflow Trigger Action Parameters",
                "value": {
                  "triggerMessage": "Let me start that process for you",
                  "triggerPrompt": "When caller requests a quote",
                  "workflowId": "507f1f77bcf86cd799439020"
                }
              }
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallTransferActionParameters"
              },
              {
                "$ref": "#/components/schemas/DataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/InCallDataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/WorkflowTriggerParameters"
              },
              {
                "$ref": "#/components/schemas/SMSParameters"
              },
              {
                "$ref": "#/components/schemas/AppointmentBookingActionParameters"
              },
              {
                "$ref": "#/components/schemas/CustomActionParameters"
              },
              {
                "$ref": "#/components/schemas/KnowledgeBaseParameters"
              }
            ]
          },
          "actionType": {
            "description": "Action type",
            "enum": [
              "CALL_TRANSFER",
              "DATA_EXTRACTION",
              "IN_CALL_DATA_EXTRACTION",
              "WORKFLOW_TRIGGER",
              "SMS",
              "APPOINTMENT_BOOKING",
              "CUSTOM_ACTION",
              "KNOWLEDGE_BASE"
            ],
            "example": "SMS",
            "type": "string"
          },
          "executedAt": {
            "description": "When the action was executed",
            "example": "2024-01-15T10:32:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "triggerReceivedAt": {
            "description": "When the trigger was received",
            "example": "2024-01-15T10:31:45.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "actionType",
          "actionName"
        ],
        "type": "object"
      },
      "CallAssetPayloadDTO": {
        "properties": {
          "adScheduleTargets": {
            "description": "Ad schedule targets restricting when the call asset is shown",
            "example": [
              {
                "dayOfWeek": "MONDAY",
                "endHour": 17,
                "endMinute": "ZERO",
                "startHour": 9,
                "startMinute": "ZERO"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AdScheduleTargetDTO"
            },
            "type": "array"
          },
          "callConversionAction": {
            "description": "Call conversion action resource name",
            "example": "customers/123/conversionActions/456",
            "type": "string"
          },
          "countryCode": {
            "description": "Two-letter ISO country code",
            "example": "US",
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number for call ads",
            "example": "+14155551234",
            "type": "string"
          },
          "resourceName": {
            "description": "Google Ads resource name for an existing call asset",
            "example": "customers/123/assets/456",
            "type": "string"
          }
        },
        "required": [
          "phoneNumber",
          "countryCode"
        ],
        "type": "object"
      },
      "CallDataDTO": {
        "properties": {
          "from": {
            "description": "Phone number of the dialer",
            "example": "+15037081210",
            "type": "string"
          },
          "status": {
            "description": "Call status",
            "enum": [
              "pending",
              "completed",
              "answered",
              "busy",
              "no-answer",
              "failed",
              "canceled",
              "voicemail"
            ],
            "example": "completed",
            "type": "string"
          },
          "to": {
            "description": "Phone number of the receiver",
            "example": "+15037081210",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CallLogDTO": {
        "properties": {
          "agentId": {
            "description": "Agent ID associated with the call",
            "example": "507f1f77bcf86cd799439013",
            "type": "string"
          },
          "contactId": {
            "description": "Associated contact ID",
            "example": "507f1f77bcf86cd799439012",
            "type": "string"
          },
          "createdAt": {
            "description": "Timestamp when the call was created",
            "example": "2024-01-15T10:30:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "duration": {
            "description": "Call duration in seconds",
            "example": 180,
            "type": "number"
          },
          "executedCallActions": {
            "description": "Actions performed during the call. Note: The APPOINTMENT_BOOKING action will only be visible in executedCallActions from Sep 9th 2025.",
            "example": [
              {
                "actionId": "507f1f77bcf86cd799439015",
                "actionName": "Transfer to Manager",
                "actionParameters": {
                  "hearWhisperMessage": true,
                  "transferToType": "number",
                  "transferToValue": "+12345678901",
                  "triggerMessage": "Let me transfer you to a manager right away"
                },
                "actionType": "CALL_TRANSFER",
                "executedAt": "2024-01-15T10:32:00.000Z",
                "triggerReceivedAt": "2024-01-15T10:31:45.000Z"
              },
              {
                "actionId": "507f1f77bcf86cd799439016",
                "actionName": "Send Confirmation SMS",
                "actionParameters": {
                  "messageBody": "Your appointment is confirmed for tomorrow at 2 PM",
                  "triggerMessage": "I'll send you a confirmation text",
                  "triggerPrompt": "When caller asks for booking confirmation"
                },
                "actionType": "SMS",
                "executedAt": "2024-01-15T10:33:30.000Z",
                "triggerReceivedAt": "2024-01-15T10:33:15.000Z"
              },
              {
                "actionId": "507f1f77bcf86cd799439017",
                "actionName": "Extract Phone Number",
                "actionParameters": {
                  "contactFieldId": "507f1f77bcf86cd799439018",
                  "description": "Customer's phone number",
                  "examples": [
                    "+1234567890",
                    "+9876543210"
                  ],
                  "overwriteExistingValue": false
                },
                "actionType": "DATA_EXTRACTION",
                "executedAt": "2024-01-15T10:34:15.000Z",
                "triggerReceivedAt": "2024-01-15T10:34:00.000Z"
              },
              {
                "actionId": "507f1f77bcf86cd799439019",
                "actionName": "Start Follow-up Workflow",
                "actionParameters": {
                  "triggerMessage": "Let me start that process for you",
                  "triggerPrompt": "When caller requests a quote",
                  "workflowId": "507f1f77bcf86cd799439020"
                },
                "actionType": "WORKFLOW_TRIGGER",
                "executedAt": "2024-01-15T10:35:00.000Z",
                "triggerReceivedAt": "2024-01-15T10:34:45.000Z"
              },
              {
                "actionId": "507f1f77bcf86cd799439021",
                "actionName": "Book Consultation",
                "actionParameters": {
                  "calendarId": "507f1f77bcf86cd799439022",
                  "daysOfOfferingDates": 3,
                  "hoursBetweenSlots": 1,
                  "slotsPerDay": 3
                },
                "actionType": "APPOINTMENT_BOOKING",
                "executedAt": "2024-01-15T10:36:45.000Z",
                "triggerReceivedAt": "2024-01-15T10:36:30.000Z"
              },
              {
                "actionId": "507f1f77bcf86cd799439023",
                "actionName": "Check Order Status",
                "actionParameters": {
                  "apiDetails": {
                    "authenticationRequired": true,
                    "authenticationValue": "token123",
                    "headers": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "parameters": [
                      {
                        "description": "Order ID to look up",
                        "example": "ORD-12345",
                        "name": "orderId",
                        "type": "string"
                      }
                    ],
                    "url": "https://api.example.com/orders"
                  },
                  "responsePathsToExtract": [
                    "data.orderId",
                    "status"
                  ],
                  "triggerMessage": "Let me check that order status",
                  "triggerPrompt": "When caller provides order number"
                },
                "actionType": "CUSTOM_ACTION",
                "executedAt": "2024-01-15T10:37:20.000Z",
                "triggerReceivedAt": "2024-01-15T10:37:05.000Z"
              },
              {
                "actionId": "507f1f77bcf86cd799439024",
                "actionName": "Extract Email During Call",
                "actionParameters": {
                  "contactFieldId": "507f1f77bcf86cd799439025",
                  "description": "Customer's email address",
                  "examples": [
                    "john@example.com",
                    "jane@example.com"
                  ],
                  "overwriteExistingValue": true
                },
                "actionType": "IN_CALL_DATA_EXTRACTION",
                "executedAt": "2024-01-15T10:31:45.000Z",
                "triggerReceivedAt": "2024-01-15T10:31:30.000Z"
              },
              {
                "actionId": "507f1f77bcf86cd799439026",
                "actionName": "Query Product Info",
                "actionParameters": {
                  "knowledgeBaseId": "507f1f77bcf86cd799439027",
                  "parameters": [
                    {
                      "description": "Product category to search",
                      "example": "pricing",
                      "name": "category",
                      "type": "string"
                    }
                  ],
                  "triggerMessage": "Let me look that up for you",
                  "triggerPrompt": "When caller asks about pricing"
                },
                "actionType": "KNOWLEDGE_BASE",
                "executedAt": "2024-01-15T10:38:10.000Z",
                "triggerReceivedAt": "2024-01-15T10:37:55.000Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/CallActionSchema"
            },
            "type": "array"
          },
          "extractedData": {
            "additionalProperties": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ExtractedDataSchema"
              }
            ],
            "description": "Dynamic data extracted from the call based on agent configuration",
            "example": {
              "companyName": "Acme Corp",
              "customField1": "Custom value",
              "customField2": "Another value",
              "customerName": "John Doe",
              "email": "john.doe@example.com",
              "phoneNumber": "+1234567890"
            }
          },
          "fromNumber": {
            "description": "Caller phone number",
            "example": "+1234567890",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the call",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isAgentDeleted": {
            "description": "Whether the agent is deleted",
            "example": false,
            "type": "boolean"
          },
          "messageId": {
            "description": "Message identifier associated with the call",
            "example": "507f1f77bcf86cd799439014",
            "type": "string"
          },
          "summary": {
            "description": "Call summary",
            "example": "Customer called to inquire about product pricing and was transferred to sales team.",
            "type": "string"
          },
          "transcript": {
            "description": "Call transcript",
            "example": "bot: Hello, how can I help you today?\nhuman: I would like to know about your pricing...",
            "type": "string"
          },
          "translation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranslationSchema"
              }
            ],
            "description": "Transcript translation details",
            "example": {
              "translatedTranscript": "Translated version of the call transcript"
            }
          },
          "trialCall": {
            "description": "Whether this call was a trial call",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "agentId",
          "isAgentDeleted",
          "createdAt",
          "duration",
          "trialCall",
          "executedCallActions",
          "summary",
          "transcript"
        ],
        "type": "object"
      },
      "CallLogsResponseDTO": {
        "properties": {
          "callLogs": {
            "description": "Array of call logs",
            "items": {
              "$ref": "#/components/schemas/CallLogDTO"
            },
            "type": "array"
          },
          "page": {
            "description": "Page number starting from 1",
            "example": 2,
            "type": "number"
          },
          "pageSize": {
            "description": "Number of items per page",
            "example": 10,
            "type": "number"
          },
          "total": {
            "description": "Total number of items",
            "example": 150,
            "type": "number"
          }
        },
        "required": [
          "total",
          "page",
          "pageSize",
          "callLogs"
        ],
        "type": "object"
      },
      "CallTransferActionParameters": {
        "properties": {
          "hearWhisperMessage": {
            "description": "Whether to play whisper message to the receiving party",
            "example": true,
            "type": "boolean"
          },
          "transferToType": {
            "description": "Type of transfer destination (currently only \"number\" is supported)",
            "enum": [
              "number"
            ],
            "example": "number",
            "type": "string"
          },
          "transferToValue": {
            "description": "Phone number to transfer to. Must start with +, include country code, contain only numbers, and be 11-16 characters long (e.g., +12345678901).",
            "example": "+12345678901",
            "type": "string"
          },
          "triggerMessage": {
            "description": "Message to tell the caller before transferring",
            "example": "Let me transfer you to a manager right away",
            "type": "string"
          },
          "triggerPrompt": {
            "description": "When to trigger this action during the call",
            "example": "When the caller asks to speak to a manager",
            "type": "string"
          }
        },
        "required": [
          "triggerPrompt",
          "transferToType",
          "transferToValue",
          "triggerMessage"
        ],
        "type": "object"
      },
      "CampaignDTO": {
        "properties": {
          "adGroups": {
            "description": "Campaign ad groups",
            "example": [
              {
                "adContent": [],
                "id": "ag_1",
                "name": "Ad Group 1"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleAdGroupDTO"
            },
            "type": "array"
          },
          "adSchedule": {
            "description": "Ad schedule rules",
            "example": [
              {
                "dayOfWeek": "MONDAY",
                "from": "09:00",
                "to": "17:00"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleAdScheduleDTO"
            },
            "type": "array"
          },
          "advancedOptions": {
            "description": "Advanced options",
            "example": {
              "postId": "post_abc123",
              "source": "WEBSITE"
            },
            "type": "object"
          },
          "advertisingChannelSubType": {
            "description": "Channel sub type",
            "enum": [
              "DEMAND_GEN"
            ],
            "example": "SEARCH_MOBILE_APP",
            "type": "string"
          },
          "advertisingChannelType": {
            "description": "Advertising channel",
            "enum": [
              "SEARCH",
              "DISCOVERY",
              "DISPLAY",
              "HOTEL",
              "LOCAL",
              "MULTI_CHANNEL",
              "PERFORMANCE_MAX",
              "DEMAND_GEN"
            ],
            "example": "SEARCH",
            "type": "string"
          },
          "assets": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleAssetsDTO"
              }
            ],
            "description": "Campaign assets",
            "example": {
              "calls": [],
              "images": [],
              "sitelinks": []
            }
          },
          "audience": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleCampaignAudienceDTO"
              }
            ],
            "description": "Campaign audience targeting",
            "example": {
              "geoLocations": [
                {
                  "key": "geoTargetConstants/2840",
                  "name": "United States"
                }
              ]
            }
          },
          "biddingStrategy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleBiddingStrategyDTO"
              }
            ],
            "description": "Bidding strategy config",
            "example": {
              "type": "MAXIMIZE_CONVERSIONS",
              "value": 1000000
            }
          },
          "budget": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleBudgetDTO"
              }
            ],
            "description": "Campaign budget",
            "example": {
              "amount": 5000,
              "budgetType": "DAILY",
              "scheduleStartDate": "2024-01-01"
            }
          },
          "campaignGoal": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleCampaignGoalDTO"
              }
            ],
            "description": "Campaign goal config",
            "example": {
              "isCustomConversionGoal": false,
              "type": "WEBSITE_TRAFFIC"
            }
          },
          "goalType": {
            "description": "Goal type",
            "enum": [
              "WEBSITE_TRAFFIC",
              "LEAD"
            ],
            "example": "WEBSITE_TRAFFIC",
            "type": "string"
          },
          "googleAdAccountId": {
            "description": "Google Ad account identifier",
            "example": "123-456-7890",
            "type": "string"
          },
          "googleCampaignId": {
            "description": "Google Ads campaign resource ID",
            "example": "customers/123/campaigns/456",
            "type": "string"
          },
          "id": {
            "description": "Campaign identifier",
            "example": "camp_abc123",
            "type": "string"
          },
          "isEuPoliticalAds": {
            "description": "EU political ads flag",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "maximumCpc": {
            "description": "Maximum CPC bid in micros",
            "example": 2000000,
            "type": "number"
          },
          "name": {
            "description": "Campaign name",
            "example": "My Campaign",
            "type": "string"
          },
          "networkSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleNetworkSettingsDTO"
              }
            ],
            "description": "Network settings",
            "example": {
              "targetContentNetwork": false,
              "targetSearchNetwork": true
            }
          },
          "publishingStatus": {
            "description": "Publishing status",
            "enum": [
              "DRAFT",
              "SCHEDULED",
              "PUBLISHED",
              "PUBLISHING",
              "FAILED",
              "IN_REVIEW",
              "PAUSED",
              "ARCHIVED",
              "WITH_ISSUES",
              "REJECTED"
            ],
            "example": "PUBLISHED",
            "type": "string"
          },
          "source": {
            "description": "Traffic source",
            "example": "WEBSITE",
            "type": "string"
          },
          "unpublishedChanges": {
            "description": "Whether the campaign has unpublished changes",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "name",
          "locationId",
          "advertisingChannelType"
        ],
        "type": "object"
      },
      "CampaignsSuccessfulResponseDto": {
        "properties": {
          "campaigns": {
            "items": {
              "$ref": "#/components/schemas/campaignsSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CancelInvoiceScheduleDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType"
        ],
        "type": "object"
      },
      "CancelInvoiceScheduleResponseDto": {
        "properties": {
          "_id": {
            "description": "Schedule Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "compiledTermsNotes": {
            "description": "Compiled terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoices": {
            "description": "List of invoices",
            "items": {
              "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
            },
            "type": "array"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "status": {
            "description": "Schedule Status",
            "example": "draft",
            "type": "object"
          },
          "termsNotes": {
            "description": "Terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "altId",
          "altType",
          "name",
          "invoices",
          "businessDetails",
          "currency",
          "contactDetails",
          "items",
          "total",
          "title",
          "termsNotes",
          "compiledTermsNotes",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CancelScheduledResponseDto": {
        "properties": {
          "message": {
            "description": "Error message of the request",
            "example": "Failed cancel the scheduled message",
            "type": "string"
          },
          "status": {
            "description": "HTTP Status code of the request",
            "example": 404,
            "type": "number"
          }
        },
        "required": [
          "status",
          "message"
        ],
        "type": "object"
      },
      "CategoriesResponseDTO": {
        "properties": {
          "categories": {
            "description": "Array of categories",
            "items": {
              "$ref": "#/components/schemas/CategoryResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "categories"
        ],
        "type": "object"
      },
      "CategoryInfoDTO": {
        "properties": {
          "_id": {
            "description": "Category ID",
            "example": "6756f381be2553245b08d30c",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-12-09T13:41:21.385Z",
            "type": "string"
          },
          "createdBy": {
            "description": "ID of the user who created the category",
            "example": "SQ6d63Va2PUbWEZ9k0TD",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if the category is deleted",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "fvg1TXIiVxGcdOaL0riG",
            "type": "string"
          },
          "name": {
            "description": "Name of the category",
            "example": "Category Name",
            "type": "string"
          },
          "primaryColor": {
            "description": "Primary color of the category",
            "example": "#FFFFFF",
            "type": "string"
          },
          "secondaryColor": {
            "description": "Secondary color of the category",
            "example": "#000000",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-12-09T13:41:21.385Z",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CategoryInterface": {
        "properties": {
          "posts": {
            "items": {
              "$ref": "#/components/schemas/PostInterface"
            },
            "type": "array"
          },
          "subCategories": {
            "items": {
              "$ref": "#/components/schemas/SubCategoryInterface"
            },
            "type": "array"
          },
          "thumbnailUrl": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "visibility": {
            "$ref": "#/components/schemas/visibility"
          }
        },
        "required": [
          "title",
          "visibility"
        ],
        "type": "object"
      },
      "CategoryQueueDTO": {
        "properties": {
          "_id": {
            "description": "Queue ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "categoryId": {
            "description": "Category ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2023-01-01T00:00:00Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "ID of the user who created the queue",
            "example": "user-123",
            "type": "string"
          },
          "currentOrder": {
            "description": "Current order number in the queue",
            "example": 1000,
            "type": "number"
          },
          "currentPostId": {
            "description": "ID of the currently scheduled post",
            "example": "60af88475f1b2c001f5d5f4b",
            "nullable": true,
            "type": "string"
          },
          "enableFuturePosts": {
            "description": "Enable posting future content",
            "example": false,
            "type": "boolean"
          },
          "lastScheduledTime": {
            "description": "Timestamp of the last scheduled post",
            "example": "2023-01-01T12:00:00Z",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "location-123",
            "type": "string"
          },
          "prioritizeNewContent": {
            "description": "Prioritize new content over older content",
            "example": false,
            "type": "boolean"
          },
          "skipDateTime": {
            "description": "Dates/times to skip posting",
            "example": [
              "2023-01-02T12:00:00Z"
            ],
            "items": {
              "format": "date-time",
              "type": "string"
            },
            "type": "array"
          },
          "startDate": {
            "description": "Start date of the queue",
            "example": "2023-01-01T12:00:00Z",
            "format": "date-time",
            "type": "string"
          },
          "status": {
            "description": "Status of the queue. Possible values: active, paused, draft.",
            "enum": [
              "active",
              "paused",
              "draft"
            ],
            "example": "active",
            "type": "string"
          },
          "timeSlots": {
            "description": "Time slots for scheduling posts",
            "items": {
              "$ref": "#/components/schemas/TimeSlotDTO"
            },
            "type": "array"
          },
          "totalPosts": {
            "description": "Total number of posts in the queue",
            "example": 10,
            "type": "number"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2023-01-01T00:00:00Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CategoryQueueWithCategoryDTO": {
        "properties": {
          "_id": {
            "description": "Queue ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "category": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CategoryInfoDTO"
              }
            ],
            "description": "The category associated with the queue."
          },
          "categoryId": {
            "description": "Category ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2023-01-01T00:00:00Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "ID of the user who created the queue",
            "example": "user-123",
            "type": "string"
          },
          "currentOrder": {
            "description": "Current order number in the queue",
            "example": 1000,
            "type": "number"
          },
          "currentPostId": {
            "description": "ID of the currently scheduled post",
            "example": "60af88475f1b2c001f5d5f4b",
            "nullable": true,
            "type": "string"
          },
          "enableFuturePosts": {
            "description": "Enable posting future content",
            "example": false,
            "type": "boolean"
          },
          "lastScheduledTime": {
            "description": "Timestamp of the last scheduled post",
            "example": "2023-01-01T12:00:00Z",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "location-123",
            "type": "string"
          },
          "prioritizeNewContent": {
            "description": "Prioritize new content over older content",
            "example": false,
            "type": "boolean"
          },
          "skipDateTime": {
            "description": "Dates/times to skip posting",
            "example": [
              "2023-01-02T12:00:00Z"
            ],
            "items": {
              "format": "date-time",
              "type": "string"
            },
            "type": "array"
          },
          "startDate": {
            "description": "Start date of the queue",
            "example": "2023-01-01T12:00:00Z",
            "format": "date-time",
            "type": "string"
          },
          "status": {
            "description": "Status of the queue. Possible values: active, paused, draft.",
            "enum": [
              "active",
              "paused",
              "draft"
            ],
            "example": "active",
            "type": "string"
          },
          "timeSlots": {
            "description": "Time slots for scheduling posts",
            "items": {
              "$ref": "#/components/schemas/TimeSlotDTO"
            },
            "type": "array"
          },
          "totalPosts": {
            "description": "Total number of posts in the queue",
            "example": 10,
            "type": "number"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2023-01-01T00:00:00Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CategoryResponseDTO": {
        "properties": {
          "_id": {
            "example": "lMOzIQZne5m6zQ528sT6",
            "type": "string"
          },
          "canonicalLink": {
            "example": "https://tryghl.blog/doc/category/agency-growth",
            "type": "string"
          },
          "label": {
            "example": "HighLevel",
            "type": "string"
          },
          "locationId": {
            "example": "lMOzIQZne5m6zQ528sT6",
            "type": "string"
          },
          "updatedAt": {
            "example": "2025-01-03T11:06:35.822Z",
            "type": "string"
          },
          "urlSlug": {
            "example": "agency-growth",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name",
          "locationId",
          "updatedAt",
          "canonicalLink",
          "urlSlug"
        ],
        "type": "object"
      },
      "CategorySchema": {
        "properties": {
          "_id": {
            "description": "ID",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "createdAt": {
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "Created By User",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "deleted": {
            "description": "Deleted Value",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "name": {
            "description": "Category Name",
            "example": "Primary",
            "type": "string"
          },
          "primaryColor": {
            "description": "Color For Category",
            "example": "#FFFFFF",
            "type": "string"
          },
          "secondaryColor": {
            "description": "Secondary Color",
            "example": "#FFFFFF",
            "type": "string"
          },
          "updatedAt": {
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "deleted"
        ],
        "type": "object"
      },
      "CheckboxField": {
        "properties": {
          "fieldValue": {
            "description": "Array of selected checkbox values for the custom field (preferred).",
            "example": [
              "test",
              "test2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": [
              "test",
              "test2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "ChequeDto": {
        "properties": {
          "number": {
            "description": "check number",
            "example": "129-129-129-912",
            "type": "string"
          }
        },
        "required": [
          "number"
        ],
        "type": "object"
      },
      "CloneChatWidgetDTO": {
        "properties": {
          "chatWidgetId": {
            "description": "chat widget ID",
            "example": "oHJiAh0wDG3BzmzACVD6",
            "type": "string"
          },
          "locationId": {
            "description": "locationId",
            "example": "oHJiAh0wDG3BzmzACVD6",
            "type": "string"
          },
          "name": {
            "description": "Name for the cloned widget",
            "example": "Chat Widget 1 (copy)",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "chatWidgetId"
        ],
        "type": "object"
      },
      "CloneQueueItemDTO": {
        "properties": {
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "order": {
            "description": "Order for the cloned item (typically between source and next item)",
            "example": 1.5,
            "type": "number"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "sessionId",
          "order"
        ],
        "type": "object"
      },
      "CloneQueueItemResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Queue item cloned successfully",
            "type": "string"
          },
          "queueItem": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedQueueItemWithVariationsDTO"
              }
            ],
            "description": "The cloned queue item"
          }
        },
        "type": "object"
      },
      "CollectionSEODto": {
        "properties": {
          "description": {
            "description": "The description which would be displayed in preview purposes",
            "example": "Collections where all the best products are available",
            "type": "string"
          },
          "title": {
            "description": "The title which will be displayed as an SEO format",
            "example": "Best Sellers",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CollectionSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the collection",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "altId": {
            "description": "Location Id to which the collection is associated",
            "example": "Z4Bxl8J4SaPEPLq9IQ8g",
            "type": "string"
          },
          "createdAt": {
            "description": "Date at which the collection was created",
            "example": "2024-02-22T09:27:19.728Z",
            "type": "string"
          },
          "image": {
            "description": "The URL of the image that is going to be displayed as the collection Thumbnail",
            "example": "http://example.com/watermark.png",
            "type": "string"
          },
          "name": {
            "description": "Name of the collection",
            "example": "Best Sellers",
            "type": "string"
          },
          "seo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CollectionSEODto"
              }
            ],
            "description": "The information which will be displayed in SEO previews"
          },
          "slug": {
            "description": "Slug of the collection with which navigation is established. Special Characters and spacing is not allowed and should be unique",
            "example": "best-sellers",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "name",
          "slug",
          "image",
          "seo",
          "createdAt"
        ],
        "type": "object"
      },
      "Color": {
        "properties": {
          "hex": {
            "description": "Color in HEX format",
            "example": "#FF5733",
            "type": "string"
          },
          "hexa": {
            "description": "Color in 8-digit hexadecimal notation with alpha channel",
            "example": "#FF5733FF",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the color",
            "example": "color_xyz789",
            "type": "string"
          },
          "label": {
            "description": "Display label for the color",
            "example": "Brand Orange",
            "type": "string"
          },
          "rgb": {
            "description": "Color in RGB format",
            "example": "rgb(255, 87, 51)",
            "type": "string"
          },
          "rgba": {
            "description": "Color with red, green, blue, and alpha channel values",
            "example": "rgba(255, 87, 51, 1)",
            "type": "string"
          }
        },
        "required": [
          "hexa",
          "rgba",
          "hex",
          "rgb",
          "label"
        ],
        "type": "object"
      },
      "CommentAttachmentDTO": {
        "properties": {
          "thumbnail": {
            "description": "Thumbnail URL",
            "example": "https://example.com/thumb.jpg",
            "type": "string"
          },
          "type": {
            "description": "Attachment MIME type or platform-specific type",
            "example": "image/jpeg",
            "type": "string"
          },
          "url": {
            "description": "Attachment URL",
            "example": "https://example.com/image.jpg",
            "type": "string"
          },
          "videoUrl": {
            "description": "Video URL (when attachment is a video)",
            "example": "https://example.com/video.mp4",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CommentAuthorDTO": {
        "properties": {
          "id": {
            "description": "Platform author ID",
            "example": "123456789",
            "type": "string"
          },
          "name": {
            "description": "Author display name",
            "example": "John Doe",
            "type": "string"
          },
          "profilePic": {
            "description": "Author profile picture URL",
            "example": "https://example.com/avatar.jpg",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CommentItemDTO": {
        "properties": {
          "_id": {
            "description": "Highlevel comment ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "attachments": {
            "description": "Attachments on the comment",
            "items": {
              "$ref": "#/components/schemas/CommentAttachmentDTO"
            },
            "type": "array"
          },
          "author": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommentAuthorDTO"
              }
            ],
            "description": "Author of the comment. May be partial or missing for some sync paths."
          },
          "content": {
            "description": "Comment content. May be empty or missing for attachment-only comments.",
            "example": "Nice post!",
            "type": "string"
          },
          "createdAt": {
            "description": "Time the comment record was created in Highlevel",
            "example": "2026-04-01T10:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "isDeleted": {
            "description": "Whether the comment was deleted",
            "example": false,
            "type": "boolean"
          },
          "isEdited": {
            "description": "Whether the comment was edited",
            "example": false,
            "type": "boolean"
          },
          "isParentThread": {
            "description": "True if this comment is a top-level comment on the post; false if it is a reply to another comment",
            "example": true,
            "type": "boolean"
          },
          "isPost": {
            "description": "True if this record represents the root post (not a comment)",
            "example": false,
            "type": "boolean"
          },
          "isRead": {
            "description": "Whether the comment has been read",
            "example": false,
            "type": "boolean"
          },
          "level": {
            "description": "Comment depth (0 = post, 1 = comment, 2 = reply)",
            "example": 1,
            "type": "number"
          },
          "likeCount": {
            "description": "Number of likes on the comment",
            "example": 0,
            "type": "number"
          },
          "originId": {
            "description": "Connected account / page ID on the native platform",
            "example": "956033194258752",
            "type": "string"
          },
          "platform": {
            "description": "Platform the comment was posted on",
            "example": "facebook",
            "type": "string"
          },
          "platformCommentId": {
            "description": "Native platform comment ID",
            "example": "122129390871181019_974705035458625",
            "type": "string"
          },
          "platformParentId": {
            "description": "Native platform parent ID (the post or comment this is a reply to)",
            "example": "956033194258752_122129390871181019",
            "type": "string"
          },
          "platformPostId": {
            "description": "Native platform post ID",
            "example": "122129390871181019",
            "type": "string"
          },
          "postId": {
            "description": "Highlevel post ID",
            "example": "6a169db95c78177a5c24ef7c",
            "type": "string"
          },
          "previewLink": {
            "description": "Direct link to view the comment on the native platform",
            "example": "https://www.facebook.com/.../posts/...",
            "type": "string"
          },
          "publishedAt": {
            "description": "Time the comment was published on the native platform. May be missing for legacy or webhook-synced records.",
            "example": "2026-04-01T10:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "quoteCount": {
            "description": "Number of quote posts (platform-specific)",
            "example": 0,
            "type": "number"
          },
          "reactionCount": {
            "description": "Number of reactions on the comment",
            "example": 0,
            "type": "number"
          },
          "replyCount": {
            "description": "Number of replies to the comment",
            "example": 0,
            "type": "number"
          },
          "repostCount": {
            "description": "Number of reposts of the comment (platform-specific)",
            "example": 0,
            "type": "number"
          },
          "shareCount": {
            "description": "Number of shares of the comment",
            "example": 0,
            "type": "number"
          },
          "updatedAt": {
            "description": "Time the comment record was last updated in Highlevel",
            "example": "2026-04-01T10:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "platform",
          "postId",
          "originId",
          "isPost",
          "likeCount",
          "reactionCount",
          "replyCount",
          "shareCount",
          "repostCount",
          "quoteCount",
          "isRead",
          "isDeleted",
          "isEdited"
        ],
        "type": "object"
      },
      "CommentsCreateBodyDTO": {
        "properties": {
          "attachments": {
            "description": "Attachments for the comment (max 1 image). **Supported on:** Facebook only. **Not supported on:** Instagram, LinkedIn, TikTok, Bluesky, Community — the field is accepted by the API but the attachment will not appear on the comment. (Community processes the field server-side, but external URLs are not rendered due to its bucket restriction.)",
            "items": {
              "$ref": "#/components/schemas/AttachmentDTO"
            },
            "type": "array"
          },
          "content": {
            "description": "Content of the comment. Per-platform max length: Facebook 8000, Instagram 2200, Linkedin 3000, Community 8000, Tiktok 150, Bluesky 300, Youtube 10000, Threads 500.",
            "example": "This is a comment",
            "type": "string"
          },
          "isParentThread": {
            "description": "Set `true` to create a top-level comment on a post (parentId = post ID). Set `false` to create a reply to an existing comment (parentId = comment ID).",
            "example": true,
            "type": "boolean"
          },
          "mentions": {
            "description": "Mentions for the comment. **Supported on:** Facebook, LinkedIn, Community. **Ignored on:** Instagram, TikTok, Bluesky — the field is accepted but mentions are not rendered on these platforms.",
            "items": {
              "$ref": "#/components/schemas/MentionsDTO"
            },
            "type": "array"
          },
          "notifyAllGroupMembers": {
            "description": "When `true`, all members of the Community group receive a push/in-app notification about this comment — equivalent to an `@everyone` broadcast.\n\n**Supported on:** Community only. Ignored on all other platforms (the field is accepted but no notification is sent).\n\n**Independent of the `mentions` array** — you do not need to add an `@everyone` entry to `mentions` for this to take effect. Conversely, putting the literal text `@everyone` in `content` does **not** by itself trigger notifications; only this flag does.\n\nDefaults to `false` (no broadcast notification). Use `true` only when the comment is genuinely intended for every member of the group — overuse may cause members to mute the group.",
            "example": false,
            "type": "boolean"
          },
          "parentId": {
            "description": "For top-level comments (`isParentThread: true`): pass the post ID returned by the posts API. For replies (`isParentThread: false`): pass the parent comment ID returned by the list-comments API. In both cases this must be a valid 24-character Highlevel ID — not the native platform ID.",
            "example": "6975b186f3442844ec07665b",
            "type": "string"
          }
        },
        "required": [
          "parentId",
          "isParentThread",
          "content"
        ],
        "type": "object"
      },
      "CommentsCreateResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Created Comment",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommentItemDTO"
              }
            ],
            "description": "The created comment"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message",
          "results"
        ],
        "type": "object"
      },
      "CommentsGetListBodyDTO": {
        "properties": {
          "fromDate": {
            "description": "Start of the published-date window (ISO 8601). If provided, `toDate` is also required, and `fromDate` must be ≤ `toDate`. Omit both to disable date filtering.",
            "example": "2026-05-22T05:32:49.463Z",
            "type": "string"
          },
          "limit": {
            "default": 10,
            "description": "Pagination page size — number of comments to return. Must be between 1 and 100.",
            "example": 10,
            "maximum": 100,
            "minimum": 1,
            "type": "number"
          },
          "originIds": {
            "description": "Origin IDs of connected accounts to filter by",
            "example": [
              "1234",
              "5678",
              "9101"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "parentId": {
            "description": "Parent ID — pass the Highlevel post ID (for replies under a specific post) or the Highlevel comment ID (for replies under a specific comment). Omit to list all top-level comments for the location filtered by `originIds`. Must be a valid 24-character Highlevel ID, not the native platform ID.",
            "example": "6975b186f3442844ec07665b",
            "type": "string"
          },
          "search": {
            "description": "Search",
            "example": "1234",
            "type": "string"
          },
          "skip": {
            "default": 0,
            "description": "Pagination offset — number of comments to skip (zero-based). Must be ≥ 0.",
            "example": 0,
            "minimum": 0,
            "type": "number"
          },
          "sortBy": {
            "default": "latest",
            "description": "Sort by top comments or latest comments",
            "enum": [
              "top",
              "latest"
            ],
            "example": "top",
            "type": "string"
          },
          "toDate": {
            "description": "End of the published-date window (ISO 8601). If provided, `fromDate` is also required.",
            "example": "2026-05-29T05:32:49.463Z",
            "type": "string"
          }
        },
        "required": [
          "originIds"
        ],
        "type": "object"
      },
      "CommentsGetListResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Comments",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommentsGetListResultsDTO"
              }
            ],
            "description": "Comments and pagination metadata"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message",
          "results"
        ],
        "type": "object"
      },
      "CommentsGetListResultsDTO": {
        "properties": {
          "comments": {
            "description": "List of comments",
            "items": {
              "$ref": "#/components/schemas/CommentItemDTO"
            },
            "type": "array"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommentsListMetaDTO"
              }
            ],
            "description": "Pagination metadata"
          }
        },
        "required": [
          "comments",
          "meta"
        ],
        "type": "object"
      },
      "CommentsLikeResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Created Like",
            "type": "string"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "CommentsListMetaDTO": {
        "properties": {
          "hasMore": {
            "description": "True if more pages exist beyond this batch",
            "example": true,
            "type": "boolean"
          },
          "limit": {
            "description": "Pagination limit",
            "example": 10,
            "type": "number"
          },
          "skip": {
            "description": "Pagination skip",
            "example": 0,
            "type": "number"
          },
          "total": {
            "description": "Total comments matching the query",
            "example": 42,
            "type": "number"
          },
          "totalUnread": {
            "description": "Total unread comments matching the query",
            "example": 7,
            "type": "number"
          }
        },
        "required": [
          "total",
          "skip",
          "limit",
          "hasMore"
        ],
        "type": "object"
      },
      "CommissionAffiliateResponseDto": {
        "properties": {
          "_id": {
            "description": "Affiliate id",
            "example": "6385d230f6d19db03eef6fb2",
            "type": "string"
          },
          "email": {
            "description": "Affiliate email",
            "example": "affiliate@example.com",
            "type": "string"
          },
          "name": {
            "description": "Affiliate display name",
            "example": "John Doe",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CommissionCampaignResponseDto": {
        "properties": {
          "id": {
            "description": "Campaign id",
            "example": "6385d230f6d19db03eef6fb2",
            "type": "string"
          },
          "liveMode": {
            "description": "Whether the campaign is in live mode",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Campaign name",
            "example": "Summer Promo",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CommissionCustomerResponseDto": {
        "properties": {
          "_id": {
            "description": "Customer id",
            "example": "6385d230f6d19db03eef6fb2",
            "type": "string"
          },
          "email": {
            "description": "Customer email",
            "example": "john@example.com",
            "type": "string"
          },
          "firstName": {
            "description": "Customer first name",
            "example": "John",
            "type": "string"
          },
          "lastName": {
            "description": "Customer last name",
            "example": "Doe",
            "type": "string"
          },
          "type": {
            "description": "Customer type",
            "example": "customer",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CommissionListItemResponseDto": {
        "properties": {
          "_id": {
            "description": "Commission id",
            "example": "6385d230f6d19db03eef6fb2",
            "type": "string"
          },
          "affiliate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommissionAffiliateResponseDto"
              }
            ],
            "description": "Affiliate details"
          },
          "affiliateId": {
            "description": "Affiliate id",
            "example": "6385d230f6d19db03eef6fb2",
            "type": "string"
          },
          "amount": {
            "description": "Base amount",
            "example": 100,
            "type": "number"
          },
          "campaign": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommissionCampaignResponseDto"
              }
            ],
            "description": "Campaign details"
          },
          "campaignName": {
            "description": "Campaign name",
            "example": "Summer Promo",
            "type": "string"
          },
          "commission": {
            "description": "Commission percentage or value",
            "example": 25,
            "type": "number"
          },
          "commissionAmount": {
            "description": "Commission amount",
            "example": 25,
            "type": "number"
          },
          "commissionType": {
            "description": "Commission type",
            "example": "percentage",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at",
            "example": "2024-06-16T00:00:00.000Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "customer": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommissionCustomerResponseDto"
              }
            ],
            "description": "Customer details"
          },
          "dueAt": {
            "description": "Due date",
            "example": "2024-06-30T00:00:00.000Z",
            "type": "string"
          },
          "eventId": {
            "description": "Event id",
            "example": "evt_123",
            "type": "string"
          },
          "isTrial": {
            "description": "Whether the item is a trial commission",
            "example": false,
            "type": "boolean"
          },
          "liveMode": {
            "description": "Whether the commission is in live mode",
            "example": true,
            "type": "boolean"
          },
          "payoutId": {
            "description": "Payout id",
            "example": "6385d230f6d19db03eef6fb2",
            "type": "string"
          },
          "productCommission": {
            "description": "Product commission amount",
            "example": 25,
            "type": "number"
          },
          "productId": {
            "description": "Product id",
            "example": "6385d230f6d19db03eef6fb2",
            "type": "string"
          },
          "productName": {
            "description": "Product name",
            "example": "Basic Plan",
            "type": "string"
          },
          "qty": {
            "description": "Quantity",
            "example": 1,
            "type": "number"
          },
          "status": {
            "description": "Commission status",
            "example": "pending",
            "type": "string"
          },
          "tier": {
            "description": "Commission tier",
            "example": 1,
            "type": "number"
          },
          "transactionAt": {
            "description": "Transaction time",
            "example": "2024-06-16T00:00:00.000Z",
            "type": "string"
          },
          "transactionId": {
            "description": "Transaction id",
            "example": "txn_123",
            "type": "string"
          },
          "unitDiscount": {
            "description": "Unit discount",
            "example": 5,
            "type": "number"
          }
        },
        "required": [
          "_id"
        ],
        "type": "object"
      },
      "CommissionListMetaResponseDto": {
        "properties": {
          "count": {
            "description": "Total commissions matching the filters",
            "example": 42,
            "type": "number"
          }
        },
        "required": [
          "count"
        ],
        "type": "object"
      },
      "CommonBadRequestDTO": {
        "properties": {
          "message": {
            "example": "Bad Request",
            "type": "string"
          },
          "statusCode": {
            "example": 400,
            "type": "number"
          }
        },
        "type": "object"
      },
      "CommonForbiddenDTO": {
        "properties": {
          "error": {
            "example": "Forbidden",
            "type": "string"
          },
          "message": {
            "example": "You do not have permission to access this resource",
            "type": "string"
          },
          "statusCode": {
            "example": 403,
            "type": "number"
          }
        },
        "type": "object"
      },
      "CommonNotFoundDTO": {
        "properties": {
          "message": {
            "example": "Conversation id, contact id, workflow id, or campaign id not given",
            "type": "string"
          },
          "statusCode": {
            "example": 404,
            "type": "number"
          }
        },
        "type": "object"
      },
      "CommonUnauthorizedDTO": {
        "properties": {
          "error": {
            "example": "Unauthorized",
            "type": "string"
          },
          "message": {
            "example": "Invalid token: access token is invalid",
            "type": "string"
          },
          "statusCode": {
            "example": 401,
            "type": "number"
          }
        },
        "type": "object"
      },
      "CommonUnprocessableDTO": {
        "properties": {
          "error": {
            "example": "Unprocessable Entity",
            "type": "string"
          },
          "message": {
            "example": [
              "Unprocessable Entity"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "statusCode": {
            "example": 422,
            "type": "number"
          }
        },
        "type": "object"
      },
      "CompleteFileUploadDto": {
        "properties": {
          "conversationId": {
            "description": "Conversation ID",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "filePath": {
            "description": "File path from request response",
            "example": "location/loc123/conversations/conv456/uuid.mp4",
            "type": "string"
          },
          "filename": {
            "description": "Original filename (for response mapping)",
            "example": "video.mp4",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "uploadId": {
            "description": "Upload ID from request response",
            "example": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "type": "string"
          }
        },
        "required": [
          "uploadId",
          "filePath",
          "locationId",
          "conversationId",
          "filename"
        ],
        "type": "object"
      },
      "CompleteFileUploadResponseDto": {
        "properties": {
          "metadata": {
            "description": "File metadata",
            "example": {
              "contentType": "video/mp4",
              "size": 52428800
            },
            "type": "object"
          },
          "uploadedFiles": {
            "description": "Map of filename to public URL",
            "example": {
              "video.mp4": "https://your-domain.com/conversations-assets/location/.../video.mp4"
            },
            "type": "object"
          }
        },
        "required": [
          "uploadedFiles",
          "metadata"
        ],
        "type": "object"
      },
      "ComplimentaryCreditDTO": {
        "properties": {
          "complimentaryCreditsAmount": {
            "description": "Credit amount to be added",
            "example": 100,
            "type": "number"
          }
        },
        "type": "object"
      },
      "ConnectCustomProvidersConfigDto": {
        "properties": {
          "live": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomProviderKeys"
              }
            ],
            "description": "Live config containing api-key and publishable key for live payments"
          },
          "test": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomProviderKeys"
              }
            ],
            "description": "Test config containing api-key and publishable-key for test payments"
          }
        },
        "required": [
          "live",
          "test"
        ],
        "type": "object"
      },
      "ConnectCustomProvidersResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the custom provider.",
            "example": "662a44ad19a2a44d3cd9d749",
            "type": "string"
          },
          "createdAt": {
            "description": "The creation timestamp of the custom provider.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the config is deleted or not. true represents config is deleted",
            "example": true,
            "type": "boolean"
          },
          "description": {
            "description": "Description of payment gateway. Shown on the payments integrations page as subtext",
            "example": "This payment gateway supports payments in India via UPI, Net banking, cards and wallets.",
            "type": "string"
          },
          "imageUrl": {
            "description": "Public image url for logo of the payment gateway displayed on the payments integrations page.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "locationId": {
            "description": "Location id",
            "example": "Lk3nlfk4lxlelVEwcW",
            "type": "string"
          },
          "marketplaceAppId": {
            "description": "The application id of marketplace",
            "example": "65f0b217a05c774da7f1efa5",
            "type": "string"
          },
          "name": {
            "description": "The name of the custom provider",
            "example": "Company Paypal Integration",
            "type": "string"
          },
          "paymentProvider": {
            "description": "Payment provider details.",
            "example": "{ live: { liveMode: true }, test: { liveMode: false, apiKey: \"y5ZQxryRFXZHvUJZdLXXXXXX\", publishableKey: \"rzp_test_zPRoVMLOa0A9wo\" }}",
            "type": "object"
          },
          "paymentsUrl": {
            "description": "This url will be loaded in iFrame to start a payment session.",
            "example": "https://testpayment.paypal.com",
            "type": "string"
          },
          "queryUrl": {
            "description": "The url used for querying payments related events. Ex. verify, refund, subscription etc.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "traceId": {
            "description": "Trace id of the custom provider.",
            "example": "302d2cf4-1ba0-4bf5-bc3b-f8fa76fda58a",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the custom provider.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "name",
          "description",
          "paymentsUrl",
          "queryUrl",
          "imageUrl",
          "_id",
          "locationId",
          "marketplaceAppId",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "ConsentDTO": {
        "properties": {
          "checkRequired": {
            "description": "Whether consent checkbox is required",
            "example": true,
            "type": "boolean"
          },
          "consent": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocalizedStringDTO"
              }
            ],
            "description": "Consent text",
            "example": {
              "localized": {
                "en_US": "I agree to receive marketing communications"
              }
            }
          },
          "id": {
            "description": "Consent identifier",
            "example": 1,
            "type": "number"
          }
        },
        "required": [
          "checkRequired",
          "id",
          "consent"
        ],
        "type": "object"
      },
      "ContactAddress": {
        "properties": {
          "addressLine1": {
            "description": "Address line 1 of the customer",
            "example": "123 Main St.",
            "type": "string"
          },
          "city": {
            "description": "City of the customer",
            "example": "New York",
            "type": "string"
          },
          "companyName": {
            "description": "Name of the Company",
            "example": "ABC Company",
            "type": "string"
          },
          "country": {
            "description": "Country code of the customer",
            "enum": [
              "US",
              "CA",
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "KR",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "UA",
              "AE",
              "GB",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "email": {
            "description": "Email of the customer",
            "example": "abu@example.com",
            "type": "string"
          },
          "name": {
            "description": "Name of the customer",
            "example": "John Doe",
            "type": "string"
          },
          "phone": {
            "description": "Phone number of the customer",
            "example": "1234567890",
            "type": "string"
          },
          "state": {
            "description": "State code of the customer",
            "enum": [
              "AL",
              "AK",
              "AS",
              "AZ",
              "AR",
              "AA",
              "AE",
              "AP",
              "CA",
              "CO",
              "CT",
              "DE",
              "DC",
              "FM",
              "FL",
              "GA",
              "GU",
              "HI",
              "ID",
              "IL",
              "IN",
              "IA",
              "KS",
              "KY",
              "LA",
              "ME",
              "MH",
              "MD",
              "MA",
              "MI",
              "MN",
              "MS",
              "MO",
              "MT",
              "NE",
              "NV",
              "NH",
              "NJ",
              "NM",
              "NY",
              "NC",
              "ND",
              "MP",
              "OH",
              "OK",
              "OR",
              "PW",
              "PA",
              "PR",
              "RI",
              "SC",
              "SD",
              "TN",
              "TX",
              "UT",
              "VT",
              "VI",
              "VA",
              "WA",
              "WV",
              "WI",
              "WY",
              "AB",
              "BC",
              "MB",
              "NB",
              "NL",
              "NT",
              "NS",
              "NU",
              "ON",
              "PE",
              "QC",
              "SK",
              "YT",
              "BA",
              "CT",
              "CC",
              "CH",
              "CB",
              "CN",
              "ER",
              "FO",
              "JY",
              "LP",
              "LR",
              "MZ",
              "MN",
              "NQ",
              "RN",
              "SA",
              "SJ",
              "SL",
              "SC",
              "SF",
              "SE",
              "TF",
              "TU",
              "ACT",
              "NSW",
              "NT",
              "QLD",
              "SA",
              "TAS",
              "VIC",
              "WA",
              "AC",
              "AL",
              "AM",
              "AP",
              "BA",
              "CE",
              "DF",
              "ES",
              "GO",
              "MA",
              "MG",
              "MS",
              "MT",
              "PA",
              "PB",
              "PE",
              "PI",
              "PR",
              "RJ",
              "RN",
              "RO",
              "RR",
              "RS",
              "SC",
              "SE",
              "SP",
              "TO",
              "AI",
              "AN",
              "AP",
              "AT",
              "BI",
              "CO",
              "AR",
              "LI",
              "LL",
              "LR",
              "MA",
              "ML",
              "RM",
              "TA",
              "VS",
              "NB",
              "AMA",
              "ANT",
              "ARA",
              "ATL",
              "BOL",
              "BOY",
              "CAL",
              "CAQ",
              "CAS",
              "CAU",
              "CES",
              "CHO",
              "CUN",
              "COR",
              "GUA",
              "GUV",
              "HUI",
              "LAG",
              "MAG",
              "MET",
              "NAR",
              "NSA",
              "PUT",
              "QUI",
              "RIS",
              "SAP",
              "SAN",
              "SUC",
              "TOL",
              "VAC",
              "VAU",
              "VID",
              "CR-A",
              "CR-C",
              "CR-G",
              "CR-H",
              "CR-L",
              "CR-P",
              "CR-SJ",
              "GT-16",
              "GT-15",
              "GT-04",
              "GT-20",
              "GT-02",
              "GT-05",
              "GT-01",
              "GT-13",
              "GT-18",
              "GT-21",
              "GT-22",
              "GT-17",
              "GT-09",
              "GT-14",
              "GT-11",
              "GT-03",
              "GT-12",
              "GT-06",
              "GT-07",
              "GT-10",
              "GT-08",
              "GT-19",
              "HK",
              "KL",
              "NT",
              "AN",
              "AP",
              "AR",
              "AS",
              "BR",
              "CH",
              "CG",
              "DN",
              "DD",
              "DL",
              "GA",
              "GJ",
              "HR",
              "HP",
              "JK",
              "JH",
              "KA",
              "KL",
              "LA",
              "LD",
              "MP",
              "MH",
              "MN",
              "ML",
              "MZ",
              "NL",
              "OR",
              "PY",
              "PB",
              "RJ",
              "SK",
              "TN",
              "TS",
              "TR",
              "UP",
              "UK",
              "WB",
              "CW",
              "CN",
              "CE",
              "CO",
              "DL",
              "D",
              "G",
              "KY",
              "KE",
              "KK",
              "LS",
              "LM",
              "LK",
              "LD",
              "LH",
              "MO",
              "MH",
              "MN",
              "OY",
              "RN",
              "SO",
              "TA",
              "WD",
              "WH",
              "WX",
              "WW",
              "AG",
              "AL",
              "AN",
              "AO",
              "AR",
              "AP",
              "AT",
              "AV",
              "BA",
              "BT",
              "BL",
              "BN",
              "BG",
              "BI",
              "BO",
              "BZ",
              "BS",
              "BR",
              "CA",
              "CL",
              "CB",
              "CI",
              "CE",
              "CT",
              "CZ",
              "CH",
              "CO",
              "CS",
              "CR",
              "KR",
              "CN",
              "EN",
              "FM",
              "FE",
              "FI",
              "FG",
              "FC",
              "FR",
              "GE",
              "GO",
              "GR",
              "IM",
              "IS",
              "AQ",
              "SP",
              "LT",
              "LE",
              "LC",
              "LI",
              "LO",
              "LU",
              "MC",
              "MN",
              "MS",
              "MT",
              "VS",
              "ME",
              "MI",
              "MO",
              "MB",
              "NA",
              "NO",
              "NU",
              "OG",
              "OT",
              "OR",
              "PD",
              "PA",
              "PR",
              "PV",
              "PG",
              "PU",
              "PE",
              "PC",
              "PI",
              "PT",
              "PN",
              "PZ",
              "PO",
              "RG",
              "RA",
              "RC",
              "RE",
              "RI",
              "RN",
              "RM",
              "RO",
              "SA",
              "SS",
              "SV",
              "SI",
              "SR",
              "SO",
              "TA",
              "TE",
              "TR",
              "TO",
              "TP",
              "TN",
              "TV",
              "TS",
              "UD",
              "VA",
              "VE",
              "VB",
              "VC",
              "VR",
              "VV",
              "VI",
              "VT",
              "JP-23",
              "JP-05",
              "JP-02",
              "JP-12",
              "JP-38",
              "JP-18",
              "JP-40",
              "JP-07",
              "JP-21",
              "JP-10",
              "JP-34",
              "JP-01",
              "JP-28",
              "JP-08",
              "JP-17",
              "JP-03",
              "JP-37",
              "JP-46",
              "JP-14",
              "JP-39",
              "JP-43",
              "JP-26",
              "JP-24",
              "JP-04",
              "JP-45",
              "JP-20",
              "JP-42",
              "JP-29",
              "JP-15",
              "JP-44",
              "JP-33",
              "JP-47",
              "JP-27",
              "JP-41",
              "JP-11",
              "JP-25",
              "JP-32",
              "JP-22",
              "JP-09",
              "JP-36",
              "JP-13",
              "JP-31",
              "JP-16",
              "JP-30",
              "JP-06",
              "JP-35",
              "JP-19",
              "JHR",
              "KDH",
              "KTN",
              "KUL",
              "LBN",
              "MLK",
              "NSN",
              "PHG",
              "PNG",
              "PRK",
              "PLS",
              "PJY",
              "SBH",
              "SWK",
              "SGR",
              "TRG",
              "AGU",
              "BCN",
              "BCS",
              "CAM",
              "CHP",
              "CHH",
              "CMX",
              "COA",
              "COL",
              "DUR",
              "GUA",
              "GRO",
              "HID",
              "JAL",
              "MIC",
              "MOR",
              "MEX",
              "NAY",
              "NLE",
              "OAX",
              "PUE",
              "QUE",
              "ROO",
              "SLP",
              "SIN",
              "SON",
              "TAB",
              "TAM",
              "TLA",
              "VER",
              "YUC",
              "ZAC",
              "AUK",
              "BOP",
              "CAN",
              "CIT",
              "GIS",
              "HKB",
              "MWT",
              "MBH",
              "NSN",
              "NTL",
              "OTA",
              "STL",
              "TKI",
              "TAS",
              "WKO",
              "WGN",
              "WTC",
              "JK",
              "BA",
              "GB",
              "IS",
              "KP",
              "PB",
              "SD",
              "AMA",
              "ANC",
              "APU",
              "ARE",
              "AYA",
              "CAJ",
              "CAL",
              "CUS",
              "HUV",
              "HUC",
              "ICA",
              "JUN",
              "LAL",
              "LAM",
              "LIM",
              "LOR",
              "MDD",
              "MOQ",
              "PAS",
              "PIU",
              "PUN",
              "SAM",
              "TAC",
              "TUM",
              "UCA",
              "PH-ABR",
              "PH-AGN",
              "PH-AGS",
              "PH-AKL",
              "PH-ALB",
              "PH-ANT",
              "PH-APA",
              "PH-AUR",
              "PH-BAS",
              "PH-BAN",
              "PH-BTN",
              "PH-BTG",
              "PH-BEN",
              "PH-BIL",
              "PH-BOH",
              "PH-BUK",
              "PH-BUL",
              "PH-CAG",
              "PH-CAN",
              "PH-CAS",
              "PH-CAM",
              "PH-CAP",
              "PH-CAT",
              "PH-CAV",
              "PH-CEB",
              "PH-NCO",
              "PH-DAO",
              "PH-DAV",
              "PH-DAS",
              "PH-EAS",
              "PH-GUI",
              "PH-IFU",
              "PH-ILN",
              "PH-ILS",
              "PH-ILI",
              "PH-ISA",
              "PH-KAL",
              "PH-LUN",
              "PH-LAG",
              "PH-LAN",
              "PH-LAS",
              "PH-LEY",
              "PH-MAG",
              "PH-MAD",
              "PH-MAS",
              "PH-00",
              "PH-MSC",
              "PH-MSR",
              "PH-MOU",
              "PH-NEC",
              "PH-NER",
              "PH-NSA",
              "PH-NUE",
              "PH-NUV",
              "PH-MDC",
              "PH-MDR",
              "PH-PLW",
              "PH-PAM",
              "PH-PAN",
              "PH-QUE",
              "PH-QUI",
              "PH-RIZ",
              "PH-ROM",
              "PH-WSA",
              "PH-SAR",
              "PH-SIG",
              "PH-SOR",
              "PH-SCO",
              "PH-SLE",
              "PH-SUK",
              "PH-SLU",
              "PH-SUN",
              "PH-SUR",
              "PH-TAR",
              "PH-TAW",
              "PH-ZMB",
              "PH-ZAN",
              "PH-ZAS",
              "PH-ZSI",
              "PT-20",
              "PT-01",
              "PT-02",
              "PT-03",
              "PT-04",
              "PT-05",
              "PT-06",
              "PT-07",
              "PT-08",
              "PT-09",
              "PT-10",
              "PT-11",
              "PT-30",
              "PT-12",
              "PT-13",
              "PT-14",
              "PT-15",
              "PT-16",
              "PT-17",
              "PT-18",
              "AB",
              "AR",
              "AG",
              "BC",
              "BH",
              "BN",
              "BT",
              "BR",
              "BV",
              "B",
              "BZ",
              "CL",
              "CS",
              "CJ",
              "CT",
              "CV",
              "DB",
              "DJ",
              "GL",
              "GR",
              "GJ",
              "HR",
              "HD",
              "IL",
              "IS",
              "IF",
              "MM",
              "MH",
              "MS",
              "NT",
              "OT",
              "PH",
              "SJ",
              "SM",
              "SB",
              "SV",
              "TR",
              "TM",
              "TL",
              "VL",
              "VS",
              "VN",
              "KR-26",
              "KR-43",
              "KR-44",
              "KR-27",
              "KR-30",
              "KR-42",
              "KR-29",
              "KR-47",
              "KR-41",
              "KR-48",
              "KR-28",
              "KR-49",
              "KR-45",
              "KR-46",
              "KR-50",
              "KR-11",
              "KR-31",
              "C",
              "VI",
              "AB",
              "A",
              "AL",
              "O",
              "AV",
              "BA",
              "PM",
              "B",
              "BU",
              "CC",
              "CA",
              "S",
              "CS",
              "CE",
              "CR",
              "CO",
              "CU",
              "GI",
              "GR",
              "GU",
              "SS",
              "H",
              "HU",
              "J",
              "LO",
              "GC",
              "LE",
              "L",
              "LU",
              "M",
              "MA",
              "ML",
              "MU",
              "NA",
              "OR",
              "P",
              "PO",
              "SA",
              "TF",
              "SG",
              "SE",
              "SO",
              "T",
              "TE",
              "TO",
              "V",
              "VA",
              "BI",
              "ZA",
              "Z",
              "AZ",
              "AJ",
              "DU",
              "FU",
              "RK",
              "SH",
              "UQ",
              "BFP",
              "ENG",
              "NIR",
              "SCT",
              "WLS",
              "AR",
              "CA",
              "CL",
              "CO",
              "DU",
              "FS",
              "FD",
              "LA",
              "MA",
              "MO",
              "PA",
              "RN",
              "RV",
              "RO",
              "SA",
              "SJ",
              "SO",
              "TA",
              "TT"
            ],
            "example": "US",
            "type": "string"
          },
          "zip": {
            "description": "Zip code of the customer",
            "example": "12345",
            "type": "string"
          }
        },
        "required": [
          "country"
        ],
        "type": "object"
      },
      "ContactDetails": {
        "properties": {},
        "type": "object"
      },
      "ContactDetailsDto": {
        "properties": {
          "additionalEmails": {
            "description": "Secondary email addresses for the contact to be saved",
            "items": {
              "$ref": "#/components/schemas/AdditionalEmailsDto"
            },
            "type": "array"
          },
          "address": {
            "$ref": "#/components/schemas/AddressDto"
          },
          "companyName": {
            "description": "Contact Company Name",
            "example": "ABC Corp.",
            "type": "string"
          },
          "customFields": {
            "description": "Custom Values",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "email": {
            "description": "Contact Email",
            "example": "alex@example.com",
            "type": "string"
          },
          "id": {
            "description": "Contact ID",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "name": {
            "description": "Contact Name",
            "example": "Alex",
            "type": "string"
          },
          "phoneNo": {
            "description": "Contact Phone Number",
            "example": "+1234567890",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "phoneNo",
          "email"
        ],
        "type": "object"
      },
      "ContactSessionIds": {
        "properties": {
          "ids": {
            "example": [
              "session1",
              "session2"
            ],
            "items": {
              "type": "string"
            },
            "nullable": true,
            "type": "array"
          }
        },
        "type": "object"
      },
      "ContactsBulkUpateResponse": {
        "properties": {
          "ids": {
            "description": "List of contact Ids that were updated",
            "example": [
              "pOC0uJ97VYOKH2m3fkMD"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "success": {
            "description": "Whether the bulk update was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "ids"
        ],
        "type": "object"
      },
      "ContactsBusinessUpdate": {
        "properties": {
          "businessId": {
            "description": "Business Id to assign to contacts. Pass null to remove business association.",
            "example": "63b7ec34ea409a9a8bd2a4ff",
            "nullable": true,
            "type": "string"
          },
          "ids": {
            "description": "List of contact Ids to update (maximum 50)",
            "example": [
              "IDqvFHGColiyK6jiatuz",
              "pOC0uJ97VYOKH2m3fkMD"
            ],
            "items": {
              "maxLength": 50,
              "type": "string"
            },
            "type": "array"
          },
          "locationId": {
            "description": "Location Id",
            "example": "PX8m5VwxEbcpFlzYEPVG",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "ids",
          "businessId"
        ],
        "type": "object"
      },
      "ContactsByIdSuccessfulResponseDtoV3": {
        "properties": {
          "contact": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetContactByIdSchemaV3"
              }
            ],
            "description": "Contact details",
            "example": {
              "email": "rubika@example.com",
              "firstName": "rubika",
              "id": "seD4PfOuKoVMLkEZqohJ",
              "lastName": "Deo",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "name": "rubika deo",
              "phone": "+18832327657"
            }
          }
        },
        "type": "object"
      },
      "ContactsCreateAddFollowersSuccessfulResponseDto": {
        "properties": {
          "followers": {
            "description": "Current followers after the operation",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "sx6wyHhbFdRXh302LLss"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "followersAdded": {
            "description": "Followers that were added",
            "example": [
              "Mx6wyHhbFdRXh302Luer",
              "Ka6wyHhbFdRXh302LLsAm"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "ContactsCustomFieldSchema": {
        "properties": {
          "id": {
            "description": "Unique identifier of the custom field",
            "example": "MgobCB14YMVKuE4Ka8p1",
            "type": "string"
          },
          "value": {
            "description": "Value of the custom field",
            "example": "name",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ContactsDeleteFollowersSuccessfulResponseDto": {
        "properties": {
          "followers": {
            "description": "Current followers after the operation",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "sx6wyHhbFdRXh302LLss"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "followersRemoved": {
            "description": "Followers that were removed",
            "example": [
              "Mx6wyHhbFdRXh302Luer",
              "Ka6wyHhbFdRXh302LLsAm"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "ContactsDeleteNoteSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "deprecated": true,
            "description": "Legacy misspelling of `succeeded`. Deprecated; use `succeeded`.",
            "example": true,
            "type": "boolean"
          },
          "succeeded": {
            "description": "Whether the note was successfully deleted",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ContactsFollowersDTO": {
        "properties": {
          "followers": {
            "description": "List of user Ids to follow or unfollow the contact",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "followers"
        ],
        "type": "object"
      },
      "ContactsGetCreateUpdateNoteSuccessfulResponseDto": {
        "properties": {
          "note": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactsGetNoteSchema"
              }
            ],
            "description": "Note details",
            "example": {
              "body": "lorem ipsum",
              "contactId": "TUcmRxWrjqzJS8EjkxNK",
              "dateAdded": "2021-07-08T12:02:11.285Z",
              "id": "HGPcayliwcdoUFzvbTok",
              "userId": "TUcmRxWrjqzJS8EjkxNK"
            }
          }
        },
        "type": "object"
      },
      "ContactsGetNoteSchema": {
        "properties": {
          "body": {
            "description": "Body content of the note",
            "example": "lorem ipsum",
            "type": "string"
          },
          "color": {
            "description": "Hex color code for the note",
            "example": "#FFAA00",
            "type": "string"
          },
          "contactId": {
            "description": "Contact Id associated with the note",
            "example": "TUcmRxWrjqzJS8EjkxNK",
            "type": "string"
          },
          "dateAdded": {
            "description": "Date the note was added (ISO 8601 format)",
            "example": "2021-07-08T12:02:11.285Z",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the note",
            "example": "HGPcayliwcdoUFzvbTok",
            "type": "string"
          },
          "pinned": {
            "description": "Whether the note is pinned",
            "example": false,
            "type": "boolean"
          },
          "title": {
            "description": "Title of the note",
            "example": "Follow-up summary",
            "type": "string"
          },
          "userId": {
            "description": "User Id of the note author",
            "example": "TUcmRxWrjqzJS8EjkxNK",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ContactsGetNotesListSuccessfulResponseDto": {
        "properties": {
          "notes": {
            "description": "List of notes",
            "example": [
              {
                "body": "lorem ipsum",
                "contactId": "TUcmRxWrjqzJS8EjkxNK",
                "dateAdded": "2021-07-08T12:02:11.285Z",
                "id": "HGPcayliwcdoUFzvbTok",
                "userId": "TUcmRxWrjqzJS8EjkxNK"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ContactsGetNoteSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "ContactsMetaSchema": {
        "properties": {
          "currentPage": {
            "example": 2,
            "type": "number"
          },
          "nextPage": {
            "example": 3,
            "type": "number"
          },
          "nextPageUrl": {
            "example": "http://localhost:5058/contacts/?locationId=ve9EPM428h8vShlRW1KT&startAfter=1631087949919&startAfterId=yd0jdjOavGk2o6Nh5Ndb",
            "type": "string"
          },
          "prevPage": {
            "example": 1,
            "nullable": true,
            "type": "number"
          },
          "startAfter": {
            "example": 1631087949919,
            "type": "number"
          },
          "startAfterId": {
            "example": "yd0jdjOavGk2o6Nh5Ndb",
            "type": "string"
          },
          "total": {
            "example": 50,
            "type": "number"
          }
        },
        "type": "object"
      },
      "ContactsNotesDTO": {
        "properties": {
          "body": {
            "description": "Body content of the note",
            "example": "lorem ipsum",
            "type": "string"
          },
          "color": {
            "description": "Hex color code for the note",
            "example": "#FFAA00",
            "type": "string"
          },
          "pinned": {
            "description": "Whether the note is pinned",
            "example": false,
            "type": "boolean"
          },
          "title": {
            "description": "Title of the note",
            "example": "Follow-up summary",
            "type": "string"
          },
          "userId": {
            "description": "User Id of the note author",
            "example": "GCs5KuzPqTls7vWclkEV",
            "type": "string"
          }
        },
        "required": [
          "body"
        ],
        "type": "object"
      },
      "ContactsSearchSchema": {
        "properties": {
          "attributions": {
            "description": "List of attribution sources for the contact",
            "example": [
              {
                "campaign": "Summer Sale",
                "url": "Trigger Link"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AttributionSource"
            },
            "type": "array"
          },
          "businessId": {
            "description": "Business Id the contact is associated with",
            "example": "641c094001436dbc2081e642",
            "type": "string"
          },
          "country": {
            "description": "Country of the contact",
            "example": "DE",
            "type": "string"
          },
          "customFields": {
            "description": "List of custom field values for the contact",
            "example": [
              {
                "id": "6dvNaf7VhkQ9snc5vnjJ",
                "value": "My Text"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ContactsCustomFieldSchema"
            },
            "type": "array"
          },
          "dateAdded": {
            "description": "Date and time the contact was added (ISO 8601)",
            "example": "2020-10-29T09:31:30.255Z",
            "type": "string"
          },
          "email": {
            "description": "Email address of the contact",
            "example": "JohnDeo@example.com",
            "type": "string"
          },
          "followers": {
            "description": "List of user Ids following this contact",
            "example": [
              "641c094001436dbc2081e642"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Unique identifier of the contact",
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id the contact belongs to",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "source": {
            "description": "Source from which the contact was created",
            "example": "xyz form",
            "type": "string"
          },
          "tags": {
            "description": "List of tags associated with the contact",
            "example": [
              "nisi sint commodo amet",
              "consequat"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone of the contact",
            "example": "Asia/Calcutta",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ContactsSearchSuccessfulResponseDto": {
        "properties": {
          "contacts": {
            "description": "List of contacts associated with the business",
            "example": [
              {
                "country": "DE",
                "dateAdded": "2020-10-29T09:31:30.255Z",
                "email": "JohnDeo@example.com",
                "id": "ocQHyuzHvysMo5N5VsXc",
                "locationId": "C2QujeCh8ZnC7al2InWR",
                "source": "xyz form"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ContactsSearchSchema"
            },
            "type": "array"
          },
          "count": {
            "description": "Total number of contacts matching the query",
            "example": 10,
            "type": "number"
          }
        },
        "type": "object"
      },
      "ContactsWorkflowSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "deprecated": true,
            "description": "Legacy misspelling of `succeeded`. Deprecated; use `succeeded`.",
            "example": true,
            "type": "boolean"
          },
          "succeeded": {
            "description": "Whether the workflow operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ConversationAicreateActionResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActionDataDTO"
              }
            ],
            "description": "Created action details"
          },
          "success": {
            "description": "Success status of the request",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "data",
          "success"
        ],
        "type": "object"
      },
      "ConversationAiupdateActionResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActionDataDTO"
              }
            ],
            "description": "Updated action details"
          },
          "success": {
            "description": "Success status of the request",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "data",
          "success"
        ],
        "type": "object"
      },
      "ConversationChannelEntrySchema": {
        "properties": {
          "conversationProvider": {
            "$ref": "#/components/schemas/ConversationProviderSchema"
          }
        },
        "required": [
          "conversationProvider"
        ],
        "type": "object"
      },
      "ConversationChannelSchema": {
        "properties": {
          "Email": {
            "description": "List of Email providers configured for this location",
            "items": {
              "$ref": "#/components/schemas/ConversationChannelEntrySchema"
            },
            "type": "array"
          },
          "SMS": {
            "description": "List of SMS providers configured for this location",
            "items": {
              "$ref": "#/components/schemas/ConversationChannelEntrySchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "ConversationCreateResponseDto": {
        "properties": {
          "assignedTo": {
            "description": "Unique identifier of the team member assigned to this conversation",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          },
          "contactId": {
            "description": "Unique identifier of the contact associated with this conversation",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          },
          "dateAdded": {
            "description": "Date when the conversation was created",
            "example": "2023-10-01T12:00:00Z",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date when the conversation was last updated",
            "example": "2023-10-01T12:00:00Z",
            "type": "string"
          },
          "deleted": {
            "description": "Flag indicating if this conversation has been deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Unique identifier for the conversation",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "lastMessageDate": {
            "description": "Date of the last message in the conversation",
            "example": "2023-10-01T12:00:00Z",
            "type": "string"
          },
          "locationId": {
            "description": "Unique identifier of the business location where this conversation takes place",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          }
        },
        "required": [
          "id",
          "dateUpdated",
          "dateAdded",
          "deleted",
          "contactId",
          "locationId",
          "lastMessageDate"
        ],
        "type": "object"
      },
      "ConversationDto": {
        "properties": {
          "assignedTo": {
            "description": "Assigned User ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "contactId": {
            "description": "Contact ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "deleted": {
            "description": "Deleted status of the conversation.",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Contact ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "inbox": {
            "description": "Inbox status of the conversation.",
            "example": true,
            "type": "boolean"
          },
          "lastMessageBody": {
            "description": "Last message body as string",
            "example": "Hello, this is the message body",
            "type": "string"
          },
          "lastMessageDate": {
            "description": "Last message date as UTC",
            "example": "1628008053263",
            "type": "string"
          },
          "lastMessageType": {
            "description": "Type of the last message sent/received in the conversation.",
            "enum": [
              "TYPE_CALL",
              "TYPE_SMS",
              "TYPE_RCS",
              "TYPE_EMAIL",
              "TYPE_SMS_REVIEW_REQUEST",
              "TYPE_WEBCHAT",
              "TYPE_SMS_NO_SHOW_REQUEST",
              "TYPE_CAMPAIGN_SMS",
              "TYPE_CAMPAIGN_CALL",
              "TYPE_CAMPAIGN_EMAIL",
              "TYPE_CAMPAIGN_VOICEMAIL",
              "TYPE_FACEBOOK",
              "TYPE_CAMPAIGN_FACEBOOK",
              "TYPE_CAMPAIGN_MANUAL_CALL",
              "TYPE_CAMPAIGN_MANUAL_SMS",
              "TYPE_GMB",
              "TYPE_CAMPAIGN_GMB",
              "TYPE_REVIEW",
              "TYPE_INSTAGRAM",
              "TYPE_WHATSAPP",
              "TYPE_CUSTOM_SMS",
              "TYPE_CUSTOM_EMAIL",
              "TYPE_CUSTOM_PROVIDER_SMS",
              "TYPE_CUSTOM_PROVIDER_EMAIL",
              "TYPE_IVR_CALL",
              "TYPE_ACTIVITY_CONTACT",
              "TYPE_ACTIVITY_INVOICE",
              "TYPE_ACTIVITY_PAYMENT",
              "TYPE_ACTIVITY_OPPORTUNITY",
              "TYPE_LIVE_CHAT",
              "TYPE_LIVE_CHAT_INFO_MESSAGE",
              "TYPE_ACTIVITY_APPOINTMENT",
              "TYPE_FACEBOOK_COMMENT",
              "TYPE_INSTAGRAM_COMMENT",
              "TYPE_CUSTOM_CALL",
              "TYPE_INTERNAL_COMMENT",
              "TYPE_ACTIVITY_EMPLOYEE_ACTION_LOG",
              "TYPE_TIKTOK",
              "TYPE_TIKTOK_COMMENT",
              "TYPE_ACTIVITY_WHATSAPP",
              "TYPE_FORM_SUBMISSION",
              "TYPE_SMS_REACTION"
            ],
            "example": "TYPE_CALL",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "starred": {
            "description": "Starred status of the conversation.",
            "example": true,
            "type": "boolean"
          },
          "unreadCount": {
            "description": "Count of unread messages in the conversation",
            "example": 1,
            "type": "number"
          },
          "userId": {
            "description": "User ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "contactId",
          "deleted"
        ],
        "type": "object"
      },
      "ConversationProviderSchema": {
        "properties": {
          "_id": {
            "description": "Provider ID",
            "example": "twilio_provider",
            "type": "string"
          },
          "default": {
            "description": "Whether this is the default provider",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Provider name",
            "example": "Twilio",
            "type": "string"
          },
          "type": {
            "description": "Provider type",
            "enum": [
              "SMS",
              "Email"
            ],
            "example": "SMS",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name",
          "type",
          "default"
        ],
        "type": "object"
      },
      "ConversationSchema": {
        "properties": {
          "contactId": {
            "description": "Contact Id",
            "example": "ABCHkzuJQ8ZMd4Te84GK",
            "type": "string"
          },
          "contactName": {
            "description": "Alternative display name for the contact - used when full name is not available",
            "example": "John Doe Company",
            "type": "string"
          },
          "email": {
            "description": "Primary email address of the contact",
            "example": "johndoe@example.com",
            "type": "string"
          },
          "fullName": {
            "description": "Complete name of the contact (first and last name)",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Conversation Id",
            "example": "ABCHkzuJQ8ZMd4Te84GK",
            "type": "string"
          },
          "lastMessageBody": {
            "description": "Content of the most recent message in the conversation",
            "example": "This is a sample message body",
            "type": "string"
          },
          "lastMessageType": {
            "description": "Channel/type of the most recent message (SMS, Email, Call, etc)",
            "enum": [
              "TYPE_CALL",
              "TYPE_SMS",
              "TYPE_RCS",
              "TYPE_EMAIL",
              "TYPE_SMS_REVIEW_REQUEST",
              "TYPE_WEBCHAT",
              "TYPE_SMS_NO_SHOW_REQUEST",
              "TYPE_CAMPAIGN_SMS",
              "TYPE_CAMPAIGN_CALL",
              "TYPE_CAMPAIGN_EMAIL",
              "TYPE_CAMPAIGN_VOICEMAIL",
              "TYPE_FACEBOOK",
              "TYPE_CAMPAIGN_FACEBOOK",
              "TYPE_CAMPAIGN_MANUAL_CALL",
              "TYPE_CAMPAIGN_MANUAL_SMS",
              "TYPE_GMB",
              "TYPE_CAMPAIGN_GMB",
              "TYPE_REVIEW",
              "TYPE_INSTAGRAM",
              "TYPE_WHATSAPP",
              "TYPE_CUSTOM_SMS",
              "TYPE_CUSTOM_EMAIL",
              "TYPE_CUSTOM_PROVIDER_SMS",
              "TYPE_CUSTOM_PROVIDER_EMAIL",
              "TYPE_IVR_CALL",
              "TYPE_ACTIVITY_CONTACT",
              "TYPE_ACTIVITY_INVOICE",
              "TYPE_ACTIVITY_PAYMENT",
              "TYPE_ACTIVITY_OPPORTUNITY",
              "TYPE_LIVE_CHAT",
              "TYPE_LIVE_CHAT_INFO_MESSAGE",
              "TYPE_ACTIVITY_APPOINTMENT",
              "TYPE_FACEBOOK_COMMENT",
              "TYPE_INSTAGRAM_COMMENT",
              "TYPE_CUSTOM_CALL",
              "TYPE_INTERNAL_COMMENT",
              "TYPE_ACTIVITY_EMPLOYEE_ACTION_LOG",
              "TYPE_TIKTOK",
              "TYPE_TIKTOK_COMMENT",
              "TYPE_ACTIVITY_WHATSAPP",
              "TYPE_FORM_SUBMISSION",
              "TYPE_SMS_REACTION"
            ],
            "example": "TYPE_SMS",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ABCHkzuJQ8ZMd4Te84GK",
            "type": "string"
          },
          "phone": {
            "description": "Primary phone number of the contact",
            "example": "+15550001234",
            "type": "string"
          },
          "type": {
            "description": "Primary channel/type of the conversation (Phone, Email, etc)",
            "enum": [
              "TYPE_PHONE",
              "TYPE_EMAIL",
              "TYPE_FB_MESSENGER",
              "TYPE_REVIEW",
              "TYPE_GROUP_SMS"
            ],
            "example": "TYPE_PHONE",
            "type": "string"
          },
          "unreadCount": {
            "description": "Number of unread messages in this conversation",
            "example": 1,
            "type": "number"
          }
        },
        "required": [
          "id",
          "contactId",
          "locationId",
          "lastMessageBody",
          "lastMessageType",
          "type",
          "unreadCount",
          "fullName",
          "contactName",
          "email",
          "phone"
        ],
        "type": "object"
      },
      "ConversionValueSettings": {
        "properties": {
          "alwaysUseDefaultValue": {
            "description": "When true, always uses the default value even if a transaction-specific value is provided",
            "example": false,
            "type": "boolean"
          },
          "defaultCurrencyCode": {
            "description": "ISO 4217 currency code for the default value",
            "example": "USD",
            "type": "string"
          },
          "defaultValue": {
            "description": "Default monetary value assigned to each conversion",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "defaultValue",
          "defaultCurrencyCode",
          "alwaysUseDefaultValue"
        ],
        "type": "object"
      },
      "CountReviewsByStatusResponseDto": {
        "properties": {
          "data": {
            "description": "Array of review status counts",
            "items": {
              "type": "array"
            },
            "type": "array"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "CouponDto": {
        "properties": {
          "_id": {
            "description": "Unique MongoDB identifier for the coupon",
            "example": "67f6c132d9485f9dacd5f123",
            "type": "string"
          },
          "altId": {
            "description": "Location Id",
            "example": "79t07PzK8Tvf73d12312",
            "type": "string"
          },
          "altType": {
            "description": "Type of entity",
            "example": "location",
            "type": "string"
          },
          "applyToFuturePayments": {
            "description": "Indicates if the coupon applies to future recurring payments",
            "example": true,
            "type": "boolean"
          },
          "applyToFuturePaymentsConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ApplyToFuturePaymentsConfigDto"
              }
            ],
            "description": "Configuration for how the coupon applies to future payments"
          },
          "code": {
            "description": "Redemption code for the coupon",
            "example": "NEWT6",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2025-04-09T18:49:22.026Z",
            "type": "string"
          },
          "discountType": {
            "description": "Type of discount (percentage or amount)",
            "enum": [
              "percentage",
              "amount"
            ],
            "example": "percentage",
            "type": "string"
          },
          "discountValue": {
            "description": "Value of the discount (percentage or fixed amount)",
            "example": 25,
            "type": "number"
          },
          "endDate": {
            "description": "End date when the coupon expires",
            "example": "2025-05-30T18:30:00.000Z",
            "type": "string"
          },
          "limitPerCustomer": {
            "description": "Maximum number of times a customer can use this coupon (0 for unlimited)",
            "example": 5,
            "type": "number"
          },
          "name": {
            "description": "Display name of the coupon",
            "example": "NEWT6",
            "type": "string"
          },
          "priceIds": {
            "description": "Price Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "productIds": {
            "description": "Product Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "startDate": {
            "description": "Date when the coupon becomes active",
            "example": "2025-04-30T18:30:00.000Z",
            "type": "string"
          },
          "status": {
            "description": "Current status of the coupon",
            "enum": [
              "scheduled",
              "active",
              "expired"
            ],
            "example": "scheduled",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2025-04-09T18:49:22.026Z",
            "type": "string"
          },
          "usageCount": {
            "description": "Number of times the coupon has been used",
            "example": 12,
            "type": "number"
          },
          "userId": {
            "description": "User ID associated with the coupon (if applicable)",
            "example": "q0m15dTLGeiGOXG123123",
            "type": "string"
          },
          "variantIds": {
            "description": "Variant Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "usageCount",
          "limitPerCustomer",
          "altId",
          "altType",
          "name",
          "code",
          "discountType",
          "discountValue",
          "status",
          "startDate",
          "applyToFuturePayments",
          "applyToFuturePaymentsConfig",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CrawledUrlDTO": {
        "properties": {
          "content": {
            "description": "URL to the stored content file",
            "example": "https://storage.googleapis.com/crm-conversations-ai-staging/conversationAI/2025/8/1/locations/qIyivCmsuEOSnyoFYEej/688c739c88c89f21ad30f63e-4IseusbZ3vDXMT8WNw9M.txt",
            "type": "string"
          },
          "contentEditedByUser": {
            "description": "Whether the content was edited by user",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Unique identifier for the URL",
            "example": "688c73a25275c513f5f3a7de",
            "type": "string"
          },
          "knowledgeBaseId": {
            "description": "Knowledge base ID this URL belongs to",
            "example": "Arc9QRauPKkSuMJO8D0m",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID associated with this URL",
            "example": "qIyivCmsuEOSnyoFYEej",
            "type": "string"
          },
          "status": {
            "description": "Current processing status of the URL",
            "enum": [
              "Pending",
              "Processing",
              "Successful",
              "Failed",
              "Existing",
              "Restricted",
              "Cancelled",
              "Aborted",
              "Training"
            ],
            "example": "Successful",
            "type": "string"
          },
          "title": {
            "description": "Title of the webpage",
            "example": "MDN Blog",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2025-08-01T07:58:29.858Z",
            "type": "string"
          },
          "url": {
            "description": "The actual URL that was crawled",
            "example": "https://developer.mozilla.org/en-US/blog",
            "type": "string"
          }
        },
        "required": [
          "id",
          "url",
          "title",
          "status",
          "locationId",
          "knowledgeBaseId",
          "content",
          "contentEditedByUser",
          "updatedAt"
        ],
        "type": "object"
      },
      "CrawlingAggregateDTO": {
        "properties": {
          "_id": {
            "description": "Status grouping identifier",
            "enum": [
              "Pending",
              "Processing",
              "Successful",
              "Failed",
              "Existing",
              "Restricted",
              "Cancelled",
              "Aborted",
              "Training"
            ],
            "example": "Failed",
            "type": "string"
          },
          "records": {
            "description": "Array of records for this status",
            "items": {
              "$ref": "#/components/schemas/CrawlingRecordDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "records"
        ],
        "type": "object"
      },
      "CrawlingRecordDTO": {
        "properties": {
          "error": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorDetailsDTO"
              }
            ],
            "description": "Error details (for failed records)"
          },
          "id": {
            "description": "Unique record identifier",
            "example": "688e41118a188704914d13c0",
            "type": "string"
          },
          "title": {
            "description": "Page title (for successful/pending records)",
            "example": "JavaScript Temporal is coming | MDN Blog",
            "type": "string"
          },
          "url": {
            "description": "URL being crawled",
            "example": "https://developer.mozilla.org/en-US/blog/rss.xml",
            "type": "string"
          }
        },
        "required": [
          "url",
          "id"
        ],
        "type": "object"
      },
      "CrawlingStatusDataDTO": {
        "properties": {
          "aggregate": {
            "description": "Aggregated crawling results by status",
            "items": {
              "$ref": "#/components/schemas/CrawlingAggregateDTO"
            },
            "type": "array"
          },
          "operationDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OperationDetailsDTO"
              }
            ],
            "description": "Detailed operation information"
          }
        },
        "required": [
          "aggregate",
          "operationDetails"
        ],
        "type": "object"
      },
      "CrawlingStatusResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrawlingStatusDataDTO"
              }
            ],
            "description": "Detailed crawling status data"
          },
          "success": {
            "description": "Indicates if the operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "data"
        ],
        "type": "object"
      },
      "CreateActionDTO": {
        "properties": {
          "details": {
            "description": "Action-specific details. The structure depends on the action type. For TRIGGER_WORKFLOW use triggerWorkflowDto, for UPDATE_CONTACT_FIELD use updateContactFieldDto, for APPOINTMENT_BOOKING use appointmentBookingDto, for STOP_BOT use stopBotDto, for HUMAN_HAND_OVER use humanHandOverDto, for ADVANCED_FOLLOWUP use advancedFollowupDto, and for TRANSFER_BOT use transferBotDto.",
            "oneOf": [
              {
                "$ref": "#/components/schemas/triggerWorkflowDto"
              },
              {
                "$ref": "#/components/schemas/updateContactFieldDto"
              },
              {
                "$ref": "#/components/schemas/appointmentBookingDto"
              },
              {
                "$ref": "#/components/schemas/stopBotDto"
              },
              {
                "$ref": "#/components/schemas/humanHandOverDto"
              },
              {
                "$ref": "#/components/schemas/advancedFollowupDto"
              },
              {
                "$ref": "#/components/schemas/transferBotDto"
              }
            ]
          },
          "name": {
            "example": "Trigger a Workflow",
            "type": "string"
          },
          "type": {
            "enum": [
              "triggerWorkflow",
              "updateContactField",
              "appointmentBooking",
              "stopBot",
              "humanHandOver",
              "advancedFollowup",
              "transferBot"
            ],
            "example": "triggerWorkflow",
            "type": "string"
          }
        },
        "required": [
          "type",
          "name",
          "details"
        ],
        "type": "object"
      },
      "CreateAddTagSuccessfulResponseDto": {
        "properties": {
          "tags": {
            "description": "Current tags on the contact after the operation",
            "example": [
              "minim",
              "velit magna"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CreateAgentResponseDTO": {
        "properties": {
          "agentName": {
            "description": "Display name of the voice AI agent",
            "example": "Customer Support Agent",
            "type": "string"
          },
          "agentPrompt": {
            "description": "Custom instructions defining the agent's behavior",
            "example": "You are a helpful customer service representative.",
            "type": "string"
          },
          "agentWorkingHours": {
            "description": "Time intervals when the agent accepts calls, organized by day of week",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/AgentWorkingHoursDTO"
            },
            "type": "array"
          },
          "businessName": {
            "description": "Name of the business this agent represents",
            "example": "Acme Corporation",
            "type": "string"
          },
          "callEndWorkflowIds": {
            "description": "Array of workflow IDs triggered automatically when calls end",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Unique identifier for the created agent",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "inboundNumber": {
            "description": "Phone number for receiving inbound calls",
            "example": "+1234567890",
            "type": "string"
          },
          "isAgentAsBackupDisabled": {
            "description": "Indicates whether this agent is excluded from backup scenarios",
            "example": false,
            "type": "boolean"
          },
          "language": {
            "description": "Language code for the agent's speech and understanding",
            "example": "en-US",
            "type": "string"
          },
          "locationId": {
            "description": "Unique identifier for the location where this agent operates",
            "example": "LOC123456789ABCDEF",
            "type": "string"
          },
          "maxCallDuration": {
            "description": "Maximum call duration in seconds, between 180-900",
            "example": 600,
            "maximum": 900,
            "minimum": 180,
            "type": "number"
          },
          "numberPoolId": {
            "description": "Identifier for the number pool managing this agent's phone allocation",
            "example": "pool_507f1f77bcf86cd799439011",
            "type": "string"
          },
          "patienceLevel": {
            "description": "Current tolerance level for caller response delays",
            "example": "medium",
            "type": "string"
          },
          "reminderAfterIdleTimeSeconds": {
            "description": "Seconds to wait before sending idle reminders, between 1-20",
            "example": 5,
            "maximum": 20,
            "minimum": 1,
            "type": "number"
          },
          "sendPostCallNotificationTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendPostCallNotificationSchema"
              }
            ],
            "description": "Current post-call notification settings including recipient configuration"
          },
          "sendUserIdleReminders": {
            "description": "Indicates whether automatic idle reminders are enabled",
            "example": true,
            "type": "boolean"
          },
          "timezone": {
            "description": "IANA timezone identifier for working hours and scheduling",
            "example": "America/New_York",
            "type": "string"
          },
          "translation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranslationSchema"
              }
            ],
            "description": "Current language translation settings including enablement status and target language"
          },
          "voiceId": {
            "description": "Identifier for the speech synthesis voice being used",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "welcomeMessage": {
            "description": "Greeting message spoken when the agent answers calls",
            "example": "Hello! Thank you for calling. How can I assist you today?",
            "type": "string"
          }
        },
        "required": [
          "id",
          "locationId",
          "agentName",
          "businessName",
          "welcomeMessage",
          "agentPrompt",
          "voiceId",
          "language",
          "patienceLevel",
          "maxCallDuration",
          "sendUserIdleReminders",
          "reminderAfterIdleTimeSeconds",
          "timezone",
          "isAgentAsBackupDisabled"
        ],
        "type": "object"
      },
      "CreateBlogPostParams": {
        "properties": {
          "author": {
            "description": "This needs to be author id, which you can get from the author get api call.",
            "example": "6683abde331c041f32c07aea",
            "type": "string"
          },
          "blogId": {
            "description": "You can find the blog id from blog site dashboard link",
            "example": "Blog ID",
            "type": "string"
          },
          "canonicalLink": {
            "example": "https://tryghl.blog/post/testing-unsplash",
            "type": "string"
          },
          "categories": {
            "description": "This needs to be array of category ids, which you can get from the category get api call.",
            "example": [
              "9c48df2694a849b6089f9d0d3513efe",
              "6683abde331c041f32c07aee"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "example": "A short description",
            "type": "string"
          },
          "imageAltText": {
            "example": "Alt text for your blog image",
            "type": "string"
          },
          "imageUrl": {
            "example": "Image URl",
            "type": "string"
          },
          "locationId": {
            "example": "Location ID",
            "type": "string"
          },
          "publishedAt": {
            "description": "Provide ISO timestamp",
            "example": "2025-02-05T18:30:47.000Z",
            "type": "string"
          },
          "rawHTML": {
            "example": "<h1>Your blog content</h1>",
            "type": "string"
          },
          "status": {
            "enum": [
              "DRAFT",
              "PUBLISHED",
              "SCHEDULED",
              "ARCHIVED"
            ],
            "example": "This can be PUBLISHED OR SCHEDULED OR ARCHIVED OR DRAFT",
            "schema": {
              "type": "string"
            },
            "type": "string"
          },
          "tags": {
            "example": [
              "blog",
              "seo"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "title": {
            "example": "Your blog title",
            "type": "string"
          },
          "urlSlug": {
            "example": "any-blog-post-url",
            "type": "string"
          }
        },
        "required": [
          "title",
          "locationId",
          "blogId",
          "imageUrl",
          "description",
          "rawHTML",
          "status",
          "imageAltText",
          "categories",
          "author",
          "urlSlug",
          "publishedAt"
        ],
        "type": "object"
      },
      "CreateBookingServiceDTO": {
        "properties": {
          "addOns": {
            "description": "Add-ons",
            "items": {
              "$ref": "#/components/schemas/ServiceAddOnDTO"
            },
            "type": "array"
          },
          "id": {
            "description": "Service ID",
            "example": "a3b4c5d6e7f8901234567890",
            "type": "string"
          },
          "position": {
            "description": "Position",
            "example": 0,
            "type": "number"
          },
          "staffId": {
            "description": "Staff ID",
            "example": "8MkU36Wps2w5bRbuGtw3",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "CreateBrandBoardParam": {
        "properties": {
          "brandBoardId": {
            "description": "Source brand board ID to copy from (creates a new brand board based on this template)",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "colors": {
            "description": "Array of colors for the brand board",
            "example": [
              {
                "hex": "#FF5733",
                "hexa": "#FF5733FF",
                "label": "Brand Orange",
                "rgb": "rgb(255, 87, 51)",
                "rgba": "rgba(255, 87, 51, 1)"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Color"
            },
            "type": "array"
          },
          "default": {
            "description": "Set as the default brand board for this location",
            "example": true,
            "type": "boolean"
          },
          "fonts": {
            "description": "Array of fonts for the brand board",
            "example": [
              {
                "fallback": "sans-serif",
                "font": "Montserrat",
                "label": "Heading Font"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Font"
            },
            "type": "array"
          },
          "locationId": {
            "description": "Location ID where the brand board will be created",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "logos": {
            "description": "Array of logos for the brand board",
            "example": [
              {
                "label": "Primary Logo",
                "path": "/locations/ve9EPM428h8vShlRW1KT/logos/my-logo.png",
                "url": "https://storage.googleapis.com/bucket/logos/my-logo.png"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Logo"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the brand board",
            "example": "My Brand Board",
            "type": "string"
          },
          "parentId": {
            "description": "Parent folder ID in media library for organizing brand boards",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "type": {
            "description": "Source type indicating how the brand board was created",
            "enum": [
              "template",
              "blank",
              "snapshot",
              "url"
            ],
            "example": "blank",
            "type": "string"
          },
          "url": {
            "description": "Website URL to extract design kit from (colors, fonts, logos)",
            "example": "https://example.com",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name"
        ],
        "type": "object"
      },
      "CreateBrandVoicePublicV1BodyDto": {
        "properties": {
          "answers": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BrandVoiceAnswersDto"
              }
            ],
            "description": "Brand voice answers. Required when type is \"manual\"",
            "example": {
              "brandName": "Acme Inc",
              "customerPainPoints": "Difficulty with time management",
              "targetAudience": "Small business owners",
              "toneOfVoice": "Professional and friendly"
            }
          },
          "description": {
            "description": "Company description to generate brand voice from. Required when type is \"description\", optional when type is \"url\"",
            "example": "We are a tech company focused on innovative solutions for small businesses",
            "type": "string"
          },
          "name": {
            "description": "Name",
            "example": "My Brand Voice",
            "type": "string"
          },
          "type": {
            "description": "Creation type. \"manual\" creates with provided custom answers, \"url\" generates answers from a website, \"description\" generates answers from a text description",
            "enum": [
              "manual",
              "url",
              "description"
            ],
            "example": "manual",
            "type": "string"
          },
          "url": {
            "description": "Website URL to generate brand voice from. Required when type is \"url\"",
            "example": "https://example.com",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "CreateBrandVoicePublicV1ResponseDto": {
        "properties": {
          "answers": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BrandVoiceAnswersPublicV1Dto"
              }
            ],
            "description": "Brand voice answers"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the brand voice has been soft deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Brand voice ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isDefault": {
            "description": "Whether this is the default brand voice",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "oHJiAh0wDG3BzmzACVD6",
            "type": "string"
          },
          "name": {
            "description": "Brand voice name",
            "example": "My Brand Voice",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "isDefault",
          "createdAt",
          "updatedAt",
          "locationId",
          "deleted"
        ],
        "type": "object"
      },
      "CreateBuilderDto": {
        "properties": {
          "builderVersion": {
            "default": "2",
            "enum": [
              "1",
              "2"
            ],
            "type": "string"
          },
          "fromEmail": {
            "example": "test@example.com",
            "type": "string"
          },
          "fromName": {
            "example": "Name of sender",
            "type": "string"
          },
          "importProvider": {
            "enum": [
              "mailchimp",
              "active_campaign",
              "kajabi",
              "other",
              "import_with_email_ai"
            ],
            "type": "string"
          },
          "importURL": {
            "example": "https://tplshare.com/fhYJ3Mi",
            "type": "string"
          },
          "isPlainText": {
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "example": "Template1",
            "type": "string"
          },
          "parentId": {
            "example": "zYy3YOUuHxgomU1uYJty",
            "type": "string"
          },
          "previewText": {
            "example": "preview text",
            "type": "string"
          },
          "subjectLine": {
            "example": "Email Subject",
            "type": "string"
          },
          "templateDataUrl": {
            "example": "",
            "type": "string"
          },
          "templateSource": {
            "example": "template_library",
            "type": "string"
          },
          "title": {
            "example": "template title",
            "type": "string"
          },
          "type": {
            "enum": [
              "html",
              "folder",
              "import",
              "builder",
              "blank",
              "ai_template",
              "vibe-editor"
            ],
            "type": "string"
          },
          "updatedBy": {
            "example": "zYy3YOUuHxgomU1uYJty",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "type",
          "importProvider"
        ],
        "type": "object"
      },
      "CreateBuilderSuccesfulResponseDto": {
        "properties": {
          "redirect": {
            "description": "template id",
            "example": "66e811229245fc098765590",
            "type": "string"
          },
          "traceId": {
            "description": "trace id",
            "example": "0c52e980-41f6-4be7-8c4b-e2c5a13dc3c2",
            "type": "string"
          }
        },
        "required": [
          "redirect",
          "traceId"
        ],
        "type": "object"
      },
      "CreateBusinessDto": {
        "properties": {
          "address": {
            "example": "street adress",
            "type": "string"
          },
          "city": {
            "example": "new york",
            "type": "string"
          },
          "country": {
            "example": "us",
            "type": "string"
          },
          "description": {
            "example": "business description",
            "type": "string"
          },
          "email": {
            "example": "john@example.com",
            "type": "string"
          },
          "locationId": {
            "example": "5DP4iH6HLkQsiKESj6rh",
            "type": "string"
          },
          "name": {
            "example": "Microsoft",
            "type": "string"
          },
          "phone": {
            "example": "+18832327657",
            "type": "string"
          },
          "postalCode": {
            "example": "12312312",
            "type": "string"
          },
          "state": {
            "example": "new york",
            "type": "string"
          },
          "website": {
            "example": "www.xyz.com",
            "type": "string"
          }
        },
        "required": [
          "name",
          "locationId"
        ],
        "type": "object"
      },
      "CreateCalendarNotificationDTO": {
        "properties": {
          "additionalEmailIds": {
            "description": "Additional email addresses to receive notifications.",
            "example": [
              "example1@example.com",
              "example2@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "additionalPhoneNumbers": {
            "description": "Additional phone numbers to receive notifications.",
            "example": [
              "+919876744444",
              "+919876744445"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "afterTime": {
            "description": "Specifies the time after which the follow-up notification should be sent. This is not required for other notification types.",
            "example": [
              {
                "timeOffset": 1,
                "unit": "hours"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SchedulesDTO"
            },
            "type": "array"
          },
          "beforeTime": {
            "description": "Specifies the time before which the reminder notification should be sent. This is not required for other notification types.",
            "example": [
              {
                "timeOffset": 1,
                "unit": "hours"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SchedulesDTO"
            },
            "type": "array"
          },
          "body": {
            "description": "Body  for email notification. Not necessary for in-App notification",
            "type": "string"
          },
          "channel": {
            "description": "Notification channel",
            "enum": [
              "email",
              "inApp",
              "sms",
              "whatsapp"
            ],
            "type": "string"
          },
          "fromAddress": {
            "description": "from address for email notification",
            "type": "string"
          },
          "fromName": {
            "description": "from name for email/sms notification",
            "type": "string"
          },
          "fromNumber": {
            "description": "from number for sms notification",
            "type": "string"
          },
          "isActive": {
            "default": true,
            "description": "Is the notification active",
            "type": "boolean"
          },
          "notificationType": {
            "description": "Notification type",
            "enum": [
              "booked",
              "confirmation",
              "cancellation",
              "reminder",
              "followup",
              "reschedule"
            ],
            "type": "string"
          },
          "receiverType": {
            "description": "notification recipient type",
            "enum": [
              "contact",
              "guest",
              "assignedUser",
              "emails",
              "phoneNumbers",
              "business"
            ],
            "type": "string"
          },
          "selectedUsers": {
            "description": "Selected users for in-App and business email notifications. Supports user IDs and special keyword \"sub_account_admin\"",
            "example": [
              "userId1",
              "userId2",
              "sub_account_admin"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "subject": {
            "description": "Subject  for email notification. Not necessary for in-App notification",
            "type": "string"
          },
          "templateId": {
            "description": "Template ID for email notification. Not necessary for in-App notification",
            "type": "string"
          }
        },
        "required": [
          "receiverType",
          "channel",
          "notificationType"
        ],
        "type": "object"
      },
      "CreateCalendarResourceDTO": {
        "properties": {
          "calendarIds": {
            "description": "Service calendar IDs to be mapped with the resource.\n\n    One equipment can only be mapped with one service calendar.\n    \nOne room can be mapped with multiple service calendars.",
            "items": {
              "type": "string"
            },
            "maxItems": 100,
            "type": "array"
          },
          "capacity": {
            "description": "Capacity of the room.",
            "type": "number"
          },
          "description": {
            "type": "string"
          },
          "locationId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "outOfService": {
            "description": "Quantity of the out of service equipment.",
            "type": "number"
          },
          "quantity": {
            "description": "Quantity of the equipment.",
            "type": "number"
          }
        },
        "required": [
          "locationId",
          "name",
          "description",
          "quantity",
          "outOfService",
          "capacity",
          "calendarIds"
        ],
        "type": "object"
      },
      "CreateCategoryQueueDTO": {
        "properties": {
          "categoryId": {
            "description": "Category ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "enableFuturePosts": {
            "description": "Enable Future Posts. Defaults to false.",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "prioritizeNewContent": {
            "description": "Prioritize New Content. Defaults to false.",
            "example": false,
            "type": "boolean"
          },
          "timeSlots": {
            "items": {
              "$ref": "#/components/schemas/TimeSlotDTO"
            },
            "type": "array"
          },
          "userId": {
            "description": "User id",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "categoryId",
          "timeSlots",
          "userId"
        ],
        "type": "object"
      },
      "CreateCategoryQueueResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Queue created successfully",
            "type": "string"
          },
          "queue": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedCategoryQueueDTO"
              }
            ],
            "description": "The newly created queue."
          }
        },
        "type": "object"
      },
      "CreateCollectionResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CollectionSchema"
              }
            ],
            "description": "created Collection"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "CreateContactDtoV3": {
        "properties": {
          "address1": {
            "description": "Street address of the contact",
            "example": "3535 1st St N",
            "nullable": true,
            "type": "string"
          },
          "assignedTo": {
            "description": "User's Id",
            "example": "y0BeYjuRIlDwsDcOHOJo",
            "type": "string"
          },
          "city": {
            "description": "City of the contact",
            "example": "Dolomite",
            "nullable": true,
            "type": "string"
          },
          "companyName": {
            "description": "Company name of the contact",
            "example": "DGS VolMAX",
            "nullable": true,
            "type": "string"
          },
          "country": {
            "description": "Country code of the contact (ISO 3166-1 alpha-2)",
            "example": "US",
            "type": "string"
          },
          "customFields": {
            "description": "List of custom field values to assign to the contact",
            "example": [
              {
                "fieldValue": "My Text",
                "id": "6dvNaf7VhkQ9snc5vnjJ",
                "key": "my_custom_field"
              }
            ],
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/TextField"
                },
                {
                  "$ref": "#/components/schemas/LargeTextField"
                },
                {
                  "$ref": "#/components/schemas/SingleSelectField"
                },
                {
                  "$ref": "#/components/schemas/RadioField"
                },
                {
                  "$ref": "#/components/schemas/NumericField"
                },
                {
                  "$ref": "#/components/schemas/MonetoryField"
                },
                {
                  "$ref": "#/components/schemas/CheckboxField"
                },
                {
                  "$ref": "#/components/schemas/MultiSelectField"
                },
                {
                  "$ref": "#/components/schemas/FileField"
                }
              ]
            },
            "type": "array"
          },
          "dateOfBirth": {
            "description": "The birth date of the contact. Supported formats: YYYY/MM/DD, MM/DD/YYYY, YYYY-MM-DD, MM-DD-YYYY, YYYY.MM.DD, MM.DD.YYYY, YYYY_MM_DD, MM_DD_YYYY",
            "example": "1990-09-25",
            "nullable": true,
            "type": "object"
          },
          "dnd": {
            "description": "Whether Do Not Disturb is enabled for the contact",
            "example": true,
            "type": "boolean"
          },
          "dndSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingsSchemaV3"
              }
            ],
            "description": "Per-channel DND settings for the contact",
            "example": {
              "call": {
                "message": "Do not call",
                "status": "active"
              },
              "email": {
                "status": "inactive"
              }
            }
          },
          "email": {
            "description": "Email address of the contact",
            "example": "rosan@example.com",
            "nullable": true,
            "type": "string"
          },
          "firstName": {
            "description": "First name of the contact",
            "example": "Rosan",
            "nullable": true,
            "type": "string"
          },
          "gender": {
            "description": "Gender of the contact",
            "example": "male",
            "type": "string"
          },
          "inboundDndSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InboundDndSettingsSchema"
              }
            ],
            "description": "Inbound DND settings per channel for the contact",
            "example": {
              "all": {
                "message": "Do not contact me",
                "status": "active"
              }
            }
          },
          "lastName": {
            "description": "Last name of the contact",
            "example": "Deo",
            "nullable": true,
            "type": "string"
          },
          "locationId": {
            "description": "Location Id the contact should be created under",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Full name of the contact",
            "example": "Rosan Deo",
            "nullable": true,
            "type": "string"
          },
          "phone": {
            "description": "Phone number of the contact",
            "example": "+1 888-888-8888",
            "nullable": true,
            "type": "string"
          },
          "postalCode": {
            "description": "Postal code of the contact",
            "example": "35061",
            "type": "string"
          },
          "source": {
            "description": "Source from which the contact was created",
            "example": "public api",
            "type": "string"
          },
          "state": {
            "description": "State of the contact",
            "example": "AL",
            "nullable": true,
            "type": "string"
          },
          "tags": {
            "description": "List of tags to assign to the contact",
            "example": [
              "nisi sint commodo amet",
              "consequat"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone of the contact",
            "example": "America/Chihuahua",
            "nullable": true,
            "type": "string"
          },
          "website": {
            "description": "Website URL of the contact",
            "example": "https://www.tesla.com",
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "CreateContactsSuccessfulResponseDtoV3": {
        "properties": {
          "contact": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetContactByIdSchemaV3"
              }
            ],
            "description": "Contact details",
            "example": {
              "email": "rubika@example.com",
              "firstName": "rubika",
              "id": "seD4PfOuKoVMLkEZqohJ",
              "lastName": "Deo",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "name": "rubika deo",
              "phone": "+18832327657"
            }
          }
        },
        "type": "object"
      },
      "CreateConversationDto": {
        "properties": {
          "contactId": {
            "description": "Contact ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "contactId"
        ],
        "type": "object"
      },
      "CreateConversationFormDTO": {
        "properties": {
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "name": {
            "description": "Conversation form name",
            "example": "Welcome Form",
            "type": "string"
          },
          "questions": {
            "description": "Quick-reply questions shown in the welcome message of the conversation form",
            "example": [
              {
                "question": "How can we help?",
                "response": "Thanks for reaching out! A team member will assist you shortly."
              },
              {
                "question": "I want to learn more",
                "response": "Great! Here is a link to our services."
              }
            ],
            "items": {
              "$ref": "#/components/schemas/WelcomeMessageQuestion"
            },
            "type": "array"
          },
          "text": {
            "description": "Welcome message text",
            "example": "Hi! How can we help?",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "text",
          "questions"
        ],
        "type": "object"
      },
      "CreateConversationSuccessResponse": {
        "properties": {
          "conversation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ConversationCreateResponseDto"
              }
            ],
            "description": "Conversation data of the provided conversation ID.",
            "example": {
              "assignedTo": "ve9EPM428kjkvShlRW1KT",
              "contactId": "ve9EPM428kjkvShlRW1KT",
              "dateAdded": "2023-10-01T12:00:00Z",
              "dateUpdated": "2023-10-01T12:00:00Z",
              "deleted": false,
              "id": "tDtDnQdgm2LXpyiqYvZ6",
              "lastMessageDate": "2023-10-01T12:00:00Z",
              "locationId": "ve9EPM428kjkvShlRW1KT"
            }
          },
          "success": {
            "description": "Indicates whether the API request was successful.",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "conversation"
        ],
        "type": "object"
      },
      "CreateCouponParams": {
        "properties": {
          "altId": {
            "description": "Location Id",
            "example": "BQdAwxa0ky1iK2sstLGJ",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "applyToFuturePayments": {
            "default": true,
            "description": "Is Coupon applicable on upcoming subscription transactions",
            "example": true,
            "type": "boolean"
          },
          "applyToFuturePaymentsConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ApplyToFuturePaymentsConfig"
              }
            ],
            "default": {
              "type": "forever"
            },
            "description": "If coupon is applicable on upcoming subscription transactions, how many months should it be applicable for a subscription",
            "example": [
              {
                "duration": 5,
                "durationType": "months",
                "type": "fixed"
              },
              {
                "type": "forever"
              }
            ]
          },
          "code": {
            "description": "Coupon Code",
            "example": "LEVELUPDAY2022",
            "type": "string"
          },
          "discountType": {
            "description": "Discount Type",
            "enum": [
              "percentage",
              "amount"
            ],
            "example": "amount",
            "type": "string"
          },
          "discountValue": {
            "description": "Discount Value",
            "example": 10,
            "type": "number"
          },
          "endDate": {
            "description": "End date in YYYY-MM-DDTHH:mm:ssZ format",
            "example": "2023-01-31T22:45:00.000Z",
            "type": "string"
          },
          "limitPerCustomer": {
            "default": false,
            "description": "Limits whether a coupon can be redeemed only once per customer.",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Coupon Name",
            "example": "New Year Sale",
            "type": "string"
          },
          "priceIds": {
            "description": "Price Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "productIds": {
            "description": "Product Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "startDate": {
            "description": "Start date in YYYY-MM-DDTHH:mm:ssZ format",
            "example": "2023-01-01T22:45:00.000Z",
            "type": "string"
          },
          "usageLimit": {
            "description": "Max number of times coupon can be used",
            "example": 10,
            "type": "number"
          },
          "variantIds": {
            "description": "Variant Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "code",
          "discountType",
          "discountValue",
          "startDate"
        ],
        "type": "object"
      },
      "CreateCouponResponseDto": {
        "properties": {
          "_id": {
            "description": "Unique MongoDB identifier for the coupon",
            "example": "67f6c132d9485f9dacd5f123",
            "type": "string"
          },
          "altId": {
            "description": "Location Id",
            "example": "79t07PzK8Tvf73d12312",
            "type": "string"
          },
          "altType": {
            "description": "Type of entity",
            "example": "location",
            "type": "string"
          },
          "applyToFuturePayments": {
            "description": "Indicates if the coupon applies to future recurring payments",
            "example": true,
            "type": "boolean"
          },
          "applyToFuturePaymentsConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ApplyToFuturePaymentsConfigDto"
              }
            ],
            "description": "Configuration for how the coupon applies to future payments"
          },
          "code": {
            "description": "Redemption code for the coupon",
            "example": "NEWT6",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2025-04-09T18:49:22.026Z",
            "type": "string"
          },
          "discountType": {
            "description": "Type of discount (percentage or amount)",
            "enum": [
              "percentage",
              "amount"
            ],
            "example": "percentage",
            "type": "string"
          },
          "discountValue": {
            "description": "Value of the discount (percentage or fixed amount)",
            "example": 25,
            "type": "number"
          },
          "endDate": {
            "description": "End date when the coupon expires",
            "example": "2025-05-30T18:30:00.000Z",
            "type": "string"
          },
          "limitPerCustomer": {
            "description": "Maximum number of times a customer can use this coupon (0 for unlimited)",
            "example": 5,
            "type": "number"
          },
          "name": {
            "description": "Display name of the coupon",
            "example": "NEWT6",
            "type": "string"
          },
          "startDate": {
            "description": "Date when the coupon becomes active",
            "example": "2025-04-30T18:30:00.000Z",
            "type": "string"
          },
          "status": {
            "description": "Current status of the coupon",
            "enum": [
              "scheduled",
              "active",
              "expired"
            ],
            "example": "scheduled",
            "type": "string"
          },
          "traceId": {
            "description": "Unique identifier for tracing this API request",
            "example": "c667b18d-8f5e-44cf-a914",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2025-04-09T18:49:22.026Z",
            "type": "string"
          },
          "usageCount": {
            "description": "Number of times the coupon has been used",
            "example": 12,
            "type": "number"
          },
          "userId": {
            "description": "User ID associated with the coupon (if applicable)",
            "example": "q0m15dTLGeiGOXG123123",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "usageCount",
          "limitPerCustomer",
          "altId",
          "altType",
          "name",
          "code",
          "discountType",
          "discountValue",
          "status",
          "startDate",
          "applyToFuturePayments",
          "applyToFuturePaymentsConfig",
          "createdAt",
          "updatedAt",
          "traceId"
        ],
        "type": "object"
      },
      "CreateCustomMenuDTO": {
        "properties": {
          "allowCamera": {
            "description": "Whether to allow camera access (only for iframe mode)",
            "example": false,
            "type": "boolean"
          },
          "allowMicrophone": {
            "description": "Whether to allow microphone access (only for iframe mode)",
            "example": false,
            "type": "boolean"
          },
          "icon": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IconSchema"
              }
            ],
            "description": "Icon information for the custom menu"
          },
          "locations": {
            "description": "List of sub-account IDs where the menu should be shown. This list is applicable only when showOnLocation is true and showToAllLocations is false",
            "example": [
              "gfWreTIHL8pDbggBb7af",
              "67WreTIHL8pDbggBb7ty"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "openMode": {
            "description": "Mode for opening the menu link",
            "enum": [
              "iframe",
              "new_tab",
              "current_tab"
            ],
            "type": "string"
          },
          "showOnCompany": {
            "default": true,
            "description": "Whether the menu must be displayed on the agency's level",
            "example": true,
            "type": "boolean"
          },
          "showOnLocation": {
            "default": true,
            "description": "Whether the menu must be displayed for sub-accounts level",
            "example": true,
            "type": "boolean"
          },
          "showToAllLocations": {
            "default": true,
            "description": "Whether the menu must be displayed to all sub-accounts",
            "example": true,
            "type": "boolean"
          },
          "title": {
            "description": "Title of the custom menu",
            "example": "Custom Menu",
            "type": "string"
          },
          "url": {
            "description": "URL of the custom menu",
            "example": "https://custom-menus.com/",
            "type": "string"
          },
          "userRole": {
            "description": "Which user-roles should the menu be accessible to?",
            "enum": [
              "all",
              "admin",
              "user"
            ],
            "type": "string"
          }
        },
        "required": [
          "title",
          "url",
          "icon",
          "showOnCompany",
          "showOnLocation",
          "showToAllLocations",
          "openMode",
          "locations",
          "userRole"
        ],
        "type": "object"
      },
      "CreateCustomObjectRecordDto": {
        "properties": {},
        "type": "object"
      },
      "CreateCustomObjectSchemaDTO": {
        "properties": {
          "description": {
            "description": "Pet Object`s description",
            "example": "These are non vaccinated pets",
            "type": "string"
          },
          "key": {
            "description": "key that would be used to refer the Custom Object internally (lowercase + underscore_separated). 'custom_objects.' would be added as prefix by default",
            "example": "custom_objects.pet",
            "type": "string"
          },
          "labels": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomObjectLabelDto"
              }
            ],
            "description": "This is what your custom object will be called. These labels will be used to display your custom object on the UI",
            "example": {
              "plural": "Pets",
              "singular": "Pet"
            }
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "primaryDisplayPropertyDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomObjectDisplayPropertyDetails"
              }
            ],
            "description": "Primary property which will be displayed on the record page"
          }
        },
        "required": [
          "labels",
          "key",
          "locationId",
          "primaryDisplayPropertyDetails"
        ],
        "type": "object"
      },
      "CreateCustomProvidersDto": {
        "properties": {
          "description": {
            "description": "Description of payment gateway. Shown on the payments integrations page as subtext",
            "example": "This payment gateway supports payments in India via UPI, Net banking, cards and wallets.",
            "type": "string"
          },
          "imageUrl": {
            "description": "Public image url for logo of the payment gateway displayed on the payments integrations page.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "name": {
            "description": "The name of the custom provider",
            "example": "Company Paypal Integration",
            "type": "string"
          },
          "paymentsUrl": {
            "description": "This url will be loaded in iFrame to start a payment session.",
            "example": "https://testpayment.paypal.com",
            "type": "string"
          },
          "queryUrl": {
            "description": "The url used for querying payments related events. Ex. verify, refund, subscription etc.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "supportsSubscriptionSchedule": {
            "description": "Whether the config supports subscription schedule or not. true represents config supports subscription schedule",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "name",
          "description",
          "paymentsUrl",
          "queryUrl",
          "imageUrl",
          "supportsSubscriptionSchedule"
        ],
        "type": "object"
      },
      "CreateCustomProvidersResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the custom provider.",
            "example": "662a44ad19a2a44d3cd9d749",
            "type": "string"
          },
          "createdAt": {
            "description": "The creation timestamp of the custom provider.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the config is deleted or not. true represents config is deleted",
            "example": true,
            "type": "boolean"
          },
          "description": {
            "description": "Description of payment gateway. Shown on the payments integrations page as subtext",
            "example": "This payment gateway supports payments in India via UPI, Net banking, cards and wallets.",
            "type": "string"
          },
          "imageUrl": {
            "description": "Public image url for logo of the payment gateway displayed on the payments integrations page.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "locationId": {
            "description": "Location id",
            "example": "Lk3nlfk4lxlelVEwcW",
            "type": "string"
          },
          "marketplaceAppId": {
            "description": "The application id of marketplace",
            "example": "65f0b217a05c774da7f1efa5",
            "type": "string"
          },
          "name": {
            "description": "The name of the custom provider",
            "example": "Company Paypal Integration",
            "type": "string"
          },
          "paymentProvider": {
            "description": "Payment provider details.",
            "example": "{ live: { liveMode: true }, test: { liveMode: false, apiKey: \"y5ZQxryRFXZHvUJZdLXXXXXX\", publishableKey: \"rzp_test_zPRoVMLOa0A9wo\" }}",
            "type": "object"
          },
          "paymentsUrl": {
            "description": "This url will be loaded in iFrame to start a payment session.",
            "example": "https://testpayment.paypal.com",
            "type": "string"
          },
          "queryUrl": {
            "description": "The url used for querying payments related events. Ex. verify, refund, subscription etc.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "traceId": {
            "description": "Trace id of the custom provider.",
            "example": "302d2cf4-1ba0-4bf5-bc3b-f8fa76fda58a",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the custom provider.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "name",
          "description",
          "paymentsUrl",
          "queryUrl",
          "imageUrl",
          "_id",
          "locationId",
          "marketplaceAppId",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CreateDeleteCantactsCampaignsSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "deprecated": true,
            "description": "Legacy misspelling of `succeeded`. Deprecated; use `succeeded`.",
            "example": true,
            "type": "boolean"
          },
          "succeeded": {
            "description": "Whether the campaign operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "CreateDeleteTagSuccessfulResponseDto": {
        "properties": {
          "tags": {
            "description": "Current tags on the contact after the operation",
            "example": [
              "minim",
              "velit magna"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CreateDtoV3": {
        "properties": {
          "assignedTo": {
            "description": "Identifier of the user the opportunity is assigned to",
            "example": "082goXVW3lIExEQPOnd3",
            "type": "string"
          },
          "contactId": {
            "description": "Identifier of the contact linked to the opportunity",
            "example": "mTkSCb1UBjb5tk4OvB69",
            "type": "string"
          },
          "customFields": {
            "description": "Add custom fields to opportunities.",
            "example": [
              {
                "fieldValue": "9039160788",
                "id": "6dvNaf7VhkQ9snc5vnjJ"
              }
            ],
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/customFieldsInputStringSchemaV3"
                },
                {
                  "$ref": "#/components/schemas/customFieldsInputArraySchemaV3"
                },
                {
                  "$ref": "#/components/schemas/customFieldsInputObjectSchemaV3"
                }
              ]
            },
            "type": "array"
          },
          "forecastExpectedCloseDate": {
            "description": "Expected close date. Supported formats: YYYY/MM/DD, MM/DD/YYYY, YYYY-MM-DD, MM-DD-YYYY, YYYY.MM.DD, MM.DD.YYYY, or ISO 8601",
            "example": "2026-04-23",
            "type": "string"
          },
          "forecastProbability": {
            "description": "Forecast probability",
            "example": 20,
            "type": "number"
          },
          "locationId": {
            "description": "Identifier of the location (sub-account)",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "monetaryValue": {
            "description": "Monetary value of the opportunity",
            "example": 220,
            "type": "number"
          },
          "name": {
            "description": "Name of the opportunity",
            "example": "First Opps",
            "type": "string"
          },
          "pipelineId": {
            "description": "pipeline Id",
            "example": "VDm7RPYC2GLUvdpKmBfC",
            "type": "string"
          },
          "pipelineStageId": {
            "description": "Identifier of the pipeline stage",
            "example": "7915dedc-8f18-44d5-8bc3-77c04e994a10",
            "type": "string"
          },
          "status": {
            "description": "Current status of the opportunity",
            "enum": [
              "open",
              "won",
              "lost",
              "abandoned",
              "all"
            ],
            "example": "open",
            "type": "string"
          }
        },
        "required": [
          "pipelineId",
          "locationId",
          "name",
          "status",
          "contactId"
        ],
        "type": "object"
      },
      "CreateEmailCampaignPublicV2BodyDto": {
        "properties": {
          "editorContent": {
            "description": "Optional initial editor content to persist immediately after campaign creation. Provide HTML or plain-text string content.",
            "example": "<html><body>Hello World</body></html>",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type for the campaign content. Use `html` for code-editor campaigns or `text` for plain-text campaigns.",
            "enum": [
              "html",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "Untitled campaign name",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "templateId": {
            "description": "Existing template ID to create the campaign from. Omit this field to create a blank campaign.",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "timeZone": {
            "description": "Timezone for the campaign",
            "example": "Asia/Kolkata",
            "type": "string"
          },
          "userId": {
            "description": "ID of the user performing this action",
            "example": "507f1f77bcf86cd799439099",
            "type": "string"
          },
          "userName": {
            "description": "Name of the user performing this action",
            "example": "John Doe",
            "type": "string"
          }
        },
        "required": [
          "name",
          "editorType",
          "timeZone",
          "userId"
        ],
        "type": "object"
      },
      "CreateEmailCampaignPublicV2ResponseDto": {
        "properties": {
          "campaignCategory": {
            "description": "Campaign category",
            "example": "email-campaign",
            "type": "string"
          },
          "campaignType": {
            "description": "Campaign type",
            "example": "bulk-email",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Campaign ID",
            "example": "67f15c2ae99226d5bcccb8f3",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "February Newsletter",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "email-campaign",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "bulkRequest_abc123",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "all",
              "sent",
              "failed",
              "archived",
              "draft",
              "processing",
              "scheduled",
              "cancelled",
              "paused"
            ],
            "example": "sent",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          },
          "variations": {
            "description": "AB test variation identifiers (available only for AB test campaigns)",
            "example": [
              {
                "isWinner": true,
                "sourceId": "9MhVcU7dTdLI7XOU1Vdt"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/EmailCampaignVariationPublicV2Dto"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CreateEmployeeDto": {
        "properties": {
          "autoPilotMaxMessages": {
            "default": 75,
            "description": "Maximum number of messages in auto-pilot mode before requiring human intervention. (max: 100, min: 1)",
            "example": 75,
            "type": "number"
          },
          "businessName": {
            "description": "Name of the business the agent represents.",
            "example": "Tech Corp",
            "type": "string"
          },
          "channels": {
            "description": "Communication channels the agent can operate on",
            "example": [
              "SMS",
              "Live_Chat",
              "WhatsApp"
            ],
            "items": {
              "enum": [
                "IG",
                "FB",
                "SMS",
                "WebChat",
                "WhatsApp",
                "Live_Chat"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "goal": {
            "description": "The goal of the agent.",
            "example": "Assist customers with inquiries.",
            "type": "string"
          },
          "instructions": {
            "description": "Instructions for the agent.",
            "example": "Provide  customer service.",
            "type": "string"
          },
          "isPrimary": {
            "default": false,
            "description": "Indicates if this agent is a primary agent.",
            "example": true,
            "type": "boolean"
          },
          "knowledgeBaseIds": {
            "description": "Array of knowledge base IDs associated with this agent.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "mode": {
            "default": "off",
            "description": "Mode of operation - OFF, SUGGESTIVE, or AUTO_PILOT",
            "enum": [
              "off",
              "suggestive",
              "auto-pilot"
            ],
            "example": "auto-pilot",
            "type": "string"
          },
          "name": {
            "description": "Name of the agent.",
            "example": "John Doe",
            "type": "string"
          },
          "personality": {
            "description": "Personality traits of the agent.",
            "example": "Friendly and helpful",
            "type": "string"
          },
          "respondToAudio": {
            "default": false,
            "description": "Allow agent to respond to audio",
            "example": true,
            "type": "boolean"
          },
          "respondToImages": {
            "default": false,
            "description": "Allow agent to respond to images",
            "example": true,
            "type": "boolean"
          },
          "sleepEnabled": {
            "default": false,
            "deprecated": true,
            "description": "Indicates if sleep functionality is enabled.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnManualMessage": {
            "description": "Enable sleep when a manual outbound message is sent.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnWorkflowMessage": {
            "description": "Enable sleep when a workflow outbound message is sent.",
            "example": false,
            "type": "boolean"
          },
          "sleepTime": {
            "description": "Duration of sleep period (required if sleepEnabled is true). Set to null for indefinite sleep. (max 2880 for minutes, 172800 for seconds, 48 for hours)",
            "example": 2,
            "type": "number"
          },
          "sleepTimeUnit": {
            "description": "Unit of sleep time - HOURS, MINUTES, or SECONDS (required if sleepEnabled is true). Set to null for indefinite sleep.",
            "enum": [
              "hours",
              "minutes",
              "seconds"
            ],
            "example": "hours",
            "type": "string"
          },
          "waitTime": {
            "default": 2,
            "description": "Wait time before agent responds (max 5 for minutes, 300 for seconds)",
            "example": 2,
            "type": "number"
          },
          "waitTimeUnit": {
            "default": "seconds",
            "description": "Unit for wait time - SECONDS or MINUTES",
            "enum": [
              "minutes",
              "seconds"
            ],
            "example": "seconds",
            "type": "string"
          }
        },
        "required": [
          "name",
          "personality",
          "goal",
          "instructions"
        ],
        "type": "object"
      },
      "CreateEstimatesDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "autoInvoice": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoInvoicingDto"
              }
            ],
            "description": "Auto invoice for the estimate",
            "example": {
              "directPayments": true,
              "enabled": true
            }
          },
          "automaticTaxesEnabled": {
            "default": false,
            "description": "Automatic taxes enabled for the Estimate",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact information to send the estimate to"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "estimateNumber": {
            "description": "Estimate Number, if not specified will take in the next valid estimate number",
            "example": 1001,
            "type": "number"
          },
          "estimateNumberPrefix": {
            "default": "EST-",
            "description": "Prefix for the estimate number",
            "example": "EST-",
            "type": "string"
          },
          "expiryDate": {
            "description": "expiry date estimate",
            "example": "2024-08-10",
            "type": "string"
          },
          "frequencySettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FrequencySettingsDto"
              }
            ],
            "description": "frequency settings for the estimate"
          },
          "issueDate": {
            "description": "issue date estimate",
            "example": "2024-08-07",
            "type": "string"
          },
          "items": {
            "description": "An array of items for the estimate.",
            "items": {
              "$ref": "#/components/schemas/EstimateLineItemDto"
            },
            "type": "array"
          },
          "liveMode": {
            "default": true,
            "description": "livemode for estimate",
            "example": true,
            "type": "boolean"
          },
          "meta": {
            "description": "Meta data for the estimate",
            "example": {
              "key": "value"
            },
            "type": "object"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the estimate"
          },
          "name": {
            "description": "Estimate Name",
            "example": "Home Service Estimate",
            "type": "string"
          },
          "paymentScheduleConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentScheduleConfigDto"
              }
            ],
            "description": "Payment Schedule Config for the estimate"
          },
          "sendEstimateDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendEstimateDto"
              }
            ],
            "description": "When sending estimate directly while saving"
          },
          "sentTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SentToDto"
              }
            ],
            "description": "Email and sent to details for the estimate"
          },
          "termsNotes": {
            "description": "Terms notes, Also supports HTML markups",
            "example": "<p>This is a default terms.</p>",
            "type": "string"
          },
          "title": {
            "description": "Title for the estimate",
            "example": "ESTIMATE",
            "type": "string"
          },
          "userId": {
            "description": "User Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "discount",
          "contactDetails",
          "frequencySettings"
        ],
        "type": "object"
      },
      "CreateEventCalendarScheduleDTO": {
        "properties": {
          "rules": {
            "description": "Schedule rules defining when the schedule is active",
            "example": [
              {
                "day": "monday",
                "intervals": [
                  {
                    "from": "09:00",
                    "to": "17:00"
                  }
                ],
                "type": "wday"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ScheduleRuleDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone for the schedule (IANA timezone identifier)",
            "example": "America/New_York",
            "pattern": "^[A-Za-z_]+/[A-Za-z_]+$",
            "type": "string"
          }
        },
        "required": [
          "rules",
          "timezone"
        ],
        "type": "object"
      },
      "CreateFaqResponseDTO": {
        "properties": {
          "faq": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FaqResponseDTO"
              }
            ],
            "description": "Created FAQ details"
          },
          "success": {
            "description": "Success status of the operation",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "faq"
        ],
        "type": "object"
      },
      "CreateFolder": {
        "properties": {
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Field name",
            "example": "Name",
            "type": "string"
          },
          "objectKey": {
            "description": "The key for your custom object. This key uniquely identifies the custom object. Example: \"custom_object.pet\" for a custom object related to pets.",
            "example": "custom_object.pet",
            "type": "string"
          }
        },
        "required": [
          "objectKey",
          "name",
          "locationId"
        ],
        "type": "object"
      },
      "CreateFolderParams": {
        "properties": {
          "altId": {
            "description": "Location Id",
            "example": "sx6wyHhbFdRXh302LLNR",
            "type": "string"
          },
          "altType": {
            "description": "Type of entity (location only)",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "name": {
            "description": "Name of the folder to be created",
            "example": "New Folder",
            "type": "string"
          },
          "parentId": {
            "description": "ID of the parent folder (optional)",
            "example": "64af50c42d567a3b4f5989e0",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name"
        ],
        "type": "object"
      },
      "CreateFulfillmentDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "items": {
            "description": "Fulfilled items",
            "items": {
              "$ref": "#/components/schemas/FulfillmentItems"
            },
            "type": "array"
          },
          "notifyCustomer": {
            "description": "Need to send a notification to customer",
            "example": true,
            "type": "boolean"
          },
          "trackings": {
            "description": "Fulfillment tracking information",
            "items": {
              "$ref": "#/components/schemas/FulfillmentTracking"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "trackings",
          "items",
          "notifyCustomer"
        ],
        "type": "object"
      },
      "CreateFulfillmentResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FulfillmentSchema"
              }
            ],
            "description": "fulfillment data"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "CreateGoogleIntegrationDTO": {
        "properties": {
          "adAccountId": {
            "description": "Ad account identifier",
            "example": "123-456-7890",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "mccId": {
            "description": "MCC identifier",
            "example": "987-654-3210",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "adAccountId",
          "mccId"
        ],
        "type": "object"
      },
      "CreateIntegrationDTO": {
        "properties": {
          "adAccountId": {
            "description": "Ad account identifier",
            "example": "act_123456",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "pageId": {
            "description": "Facebook page ID",
            "example": "123456789",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "pageId"
        ],
        "type": "object"
      },
      "CreateInvoiceDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact information to send the invoice to"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-14",
            "type": "string"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "1001",
            "type": "string"
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "items": {
            "description": "An array of items for the invoice.",
            "items": {
              "$ref": "#/components/schemas/InvoiceItemDto"
            },
            "type": "array"
          },
          "lateFeesConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesConfigurationDto"
              }
            ],
            "description": "late fees configuration"
          },
          "liveMode": {
            "type": "boolean"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the invoice"
          },
          "name": {
            "description": "Invoice Name",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentMethods": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentMethodDto"
              }
            ],
            "description": "Payment Methods for Invoices"
          },
          "paymentSchedule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentScheduleDto"
              }
            ],
            "description": "split invoice into payment schedule summing up to full invoice amount"
          },
          "sentTo": {
            "$ref": "#/components/schemas/SentToDto"
          },
          "termsNotes": {
            "description": "Terms notes, Also supports HTML markups",
            "example": "<p>This is a default terms.</p>",
            "type": "string"
          },
          "tipsConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TipsConfigurationDto"
              }
            ],
            "description": "tips configuration for the invoice"
          },
          "title": {
            "description": "Title for the invoice",
            "example": "INVOICE",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "discount",
          "contactDetails",
          "issueDate",
          "sentTo",
          "liveMode"
        ],
        "type": "object"
      },
      "CreateInvoiceFromEstimateDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "markAsInvoiced": {
            "description": "Mark Estimate as Invoiced",
            "example": true,
            "type": "boolean"
          },
          "version": {
            "description": "Version of the update request",
            "enum": [
              "v1",
              "v2"
            ],
            "example": "v2",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "markAsInvoiced"
        ],
        "type": "object"
      },
      "CreateInvoiceFromEstimateResponseDTO": {
        "properties": {
          "estimate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EstimateResponseDto"
              }
            ],
            "description": "Estimate details"
          },
          "invoice": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
              }
            ],
            "description": "Invoice details"
          }
        },
        "required": [
          "estimate",
          "invoice"
        ],
        "type": "object"
      },
      "CreateInvoiceResponseDto": {
        "properties": {
          "_id": {
            "description": "Invoice Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amountDue": {
            "description": "Total Amount Due",
            "example": 999,
            "type": "number"
          },
          "amountPaid": {
            "description": "Amount Paid",
            "example": 0,
            "type": "number"
          },
          "automaticTaxesCalculated": {
            "description": "Is Automatic taxes calculated for the Invoice items",
            "example": true,
            "type": "boolean"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            },
            "type": "object"
          },
          "contactDetails": {
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            },
            "type": "object"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            },
            "type": "object"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "invoiceItems": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "19",
            "type": "number"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentSchedule": {
            "description": "split invoice into payment schedule summing up to full invoice amount",
            "type": "object"
          },
          "status": {
            "description": "Invoice Status",
            "enum": [
              "draft",
              "sent",
              "payment_processing",
              "paid",
              "void",
              "partially_paid"
            ],
            "example": "draft",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "amountPaid",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "invoiceNumber",
          "currency",
          "contactDetails",
          "issueDate",
          "dueDate",
          "invoiceItems",
          "total",
          "title",
          "amountDue",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CreateInvoiceScheduleDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "contactDetails": {
            "$ref": "#/components/schemas/ContactDetailsDto"
          },
          "currency": {
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/InvoiceItemDto"
            },
            "type": "array"
          },
          "lateFeesConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesConfigurationDto"
              }
            ],
            "description": "Late fees configuration for the invoices"
          },
          "liveMode": {
            "type": "boolean"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the invoice"
          },
          "name": {
            "type": "string"
          },
          "paymentMethods": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentMethodDto"
              }
            ],
            "description": "Payment Methods for Invoices"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "termsNotes": {
            "type": "string"
          },
          "tipsConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TipsConfigurationDto"
              }
            ],
            "description": "Configuration for tips on invoices"
          },
          "title": {
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "contactDetails",
          "schedule",
          "liveMode",
          "businessDetails",
          "currency",
          "items",
          "discount"
        ],
        "type": "object"
      },
      "CreateInvoiceScheduleResponseDto": {
        "properties": {
          "_id": {
            "description": "Schedule Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "compiledTermsNotes": {
            "description": "Compiled terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoices": {
            "description": "List of invoices",
            "items": {
              "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
            },
            "type": "array"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "status": {
            "description": "Schedule Status",
            "example": "draft",
            "type": "object"
          },
          "termsNotes": {
            "description": "Terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "altId",
          "altType",
          "name",
          "invoices",
          "businessDetails",
          "currency",
          "contactDetails",
          "items",
          "total",
          "title",
          "termsNotes",
          "compiledTermsNotes",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CreateInvoiceTemplateDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "currency": {
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "internal": {
            "type": "boolean"
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/InvoiceItemDto"
            },
            "type": "array"
          },
          "lateFeesConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesConfigurationDto"
              }
            ],
            "description": "Late fees configuration for the invoices"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the invoice"
          },
          "name": {
            "description": "Name of the template",
            "example": "New Template",
            "type": "string"
          },
          "paymentMethods": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentMethodDto"
              }
            ],
            "description": "Payment Methods for Invoices"
          },
          "termsNotes": {
            "type": "string"
          },
          "tipsConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TipsConfigurationDto"
              }
            ],
            "description": "Configuration for tips on invoices"
          },
          "title": {
            "description": "Template title",
            "example": "New Template",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items"
        ],
        "type": "object"
      },
      "CreateInvoiceTemplateResponseDto": {
        "properties": {
          "_id": {
            "description": "Template Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the Template",
            "example": "New Template",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "total",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CreateKnowledgeBaseDTO": {
        "properties": {
          "description": {
            "type": "string"
          },
          "locationId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "locationId"
        ],
        "type": "object"
      },
      "CreateKnowledgeBaseResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/KnowledgeBaseDataDTO"
              }
            ],
            "description": "Created knowledge base details"
          },
          "success": {
            "description": "Success status of the operation",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "data"
        ],
        "type": "object"
      },
      "CreateLeadFormDTO": {
        "properties": {
          "customDisclaimer": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomDisclaimer"
              }
            ],
            "description": "Custom disclaimer config",
            "example": {
              "body": "By submitting...",
              "checkboxes": [
                {
                  "isRequired": true,
                  "key": "terms",
                  "text": "I agree"
                }
              ],
              "title": "Terms & Conditions"
            }
          },
          "draftFormId": {
            "description": "Draft form ID",
            "example": "1234567890",
            "type": "string"
          },
          "greetingCard": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GreetingCard"
              }
            ],
            "description": "Greeting card config",
            "example": {
              "content": [
                "Learn more about our services"
              ],
              "style": "LIST_STYLE",
              "title": "Welcome!"
            }
          },
          "isDraft": {
            "description": "If the form is a draft, set to true",
            "example": true,
            "type": "boolean"
          },
          "locale": {
            "description": "Locale",
            "example": "EN_US",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "name": {
            "description": "Lead form name",
            "example": "Contact Form",
            "type": "string"
          },
          "privacyPolicyLink": {
            "description": "Privacy policy URL. Required when `isDraft` is false or omitted; optional for drafts.",
            "example": "https://example.com/privacy",
            "type": "string"
          },
          "privacyPolicyText": {
            "description": "Privacy policy text",
            "example": "We respect your privacy",
            "type": "string"
          },
          "questionPageHeadline": {
            "description": "Question page headline",
            "example": "Tell us about yourself",
            "type": "string"
          },
          "questions": {
            "description": "List of questions displayed on the lead form. Required (non-empty) when `isDraft` is false or omitted; optional for drafts.",
            "example": [
              {
                "key": "full_name",
                "options": [],
                "type": "FULL_NAME"
              },
              {
                "key": "email_address",
                "options": [],
                "type": "EMAIL"
              },
              {
                "key": "are_you_interested",
                "label": "Are you interested?",
                "options": [
                  {
                    "value": "Yes"
                  },
                  {
                    "value": "No"
                  }
                ],
                "type": "CUSTOM"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/FormQuestion"
            },
            "type": "array"
          },
          "thankYouPage": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ThankYouPage"
              }
            ],
            "description": "Thank you page config. Required when `isDraft` is false or omitted; optional for drafts.",
            "example": {
              "body": "We will contact you soon",
              "buttonLink": "https://example.com",
              "buttonText": "Visit Website",
              "buttonType": "VIEW_WEBSITE",
              "title": "Thank You!"
            }
          },
          "type": {
            "description": "Lead form type",
            "enum": [
              "MORE_VOLUME",
              "HIGHER_INTENT"
            ],
            "example": "MORE_VOLUME",
            "type": "string"
          }
        },
        "required": [
          "type",
          "name",
          "locationId",
          "questions",
          "privacyPolicyLink",
          "thankYouPage"
        ],
        "type": "object"
      },
      "CreateLinkedinIntegrationDTO": {
        "properties": {
          "adAccountId": {
            "description": "Ad account identifier",
            "example": "12345678",
            "type": "string"
          },
          "adAccountName": {
            "description": "Ad account name",
            "example": "My Ad Account",
            "type": "string"
          },
          "currencyCode": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_123",
            "type": "string"
          },
          "organizationId": {
            "description": "Organization identifier",
            "example": "12345678",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "adAccountId",
          "adAccountName",
          "currencyCode",
          "organizationId"
        ],
        "type": "object"
      },
      "CreateLiveChatMessageFeedbackResponse": {
        "properties": {
          "success": {
            "description": "Whether the live chat feedback was recorded successfully",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "CreateLocationDto": {
        "properties": {
          "address": {
            "description": "The address of the business for which sub-account is created",
            "example": "4th fleet street",
            "type": "string"
          },
          "city": {
            "description": "The city where the business is located for which sub-account is created",
            "example": "New York",
            "type": "string"
          },
          "companyId": {
            "description": "Company/Agency Id",
            "example": "UAXssdawIWAWD",
            "type": "string"
          },
          "country": {
            "description": "The 2 letter country-code in which the business is present for which sub-account is created",
            "enum": [
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CA",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "KR",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "GB",
              "UA",
              "AE",
              "US",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "mailgun": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MailgunSchema"
              }
            ],
            "description": "The mailgun credentials for location"
          },
          "name": {
            "description": "The name for the sub-account/location",
            "example": "Mark Shoes",
            "type": "string"
          },
          "phone": {
            "description": "The phone number of the business for which sub-account is created with the appropriate country-code",
            "example": "+1410039940",
            "type": "string"
          },
          "postalCode": {
            "description": "The postal code of the business for which sub-account is created",
            "example": "567654",
            "type": "string"
          },
          "prospectInfo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProspectInfoDto"
              }
            ],
            "example": {
              "email": "john.doe@example.com",
              "firstName": "John",
              "lastName": "Doe"
            }
          },
          "settings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SettingsSchema"
              }
            ],
            "description": "The default settings for location"
          },
          "snapshotId": {
            "description": "The snapshot ID to be loaded into the location.",
            "example": "XXXXXXXXXXX",
            "type": "string"
          },
          "social": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialSchema"
              }
            ],
            "description": "The social media links for location"
          },
          "state": {
            "description": "The state in which the business operates for which sub-account is created",
            "example": "Illinois",
            "type": "string"
          },
          "timezone": {
            "description": "The timezone of the business for which sub-account is created",
            "example": "US/Central",
            "type": "string"
          },
          "twilio": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TwilioSchema"
              }
            ],
            "deprecated": true,
            "description": "(DEPRECATED) The twilio credentials for location"
          },
          "website": {
            "description": "The website of the business for which sub-account is created",
            "example": "https://yourwebsite.com",
            "type": "string"
          }
        },
        "required": [
          "name",
          "companyId"
        ],
        "type": "object"
      },
      "CreateLocationSuccessfulResponseDto": {
        "properties": {
          "address": {
            "description": "The address of the business for which sub-account is created",
            "example": "4th fleet street",
            "type": "string"
          },
          "city": {
            "description": "The city where the business is located for which sub-account is created",
            "example": "New York",
            "type": "string"
          },
          "companyId": {
            "description": "Company/Agency Id",
            "example": "UAXssdawIWAWD",
            "type": "string"
          },
          "country": {
            "description": "The country in which the business is present for which sub-account is created",
            "enum": [
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CA",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "KR",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "GB",
              "UA",
              "AE",
              "US",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "domain": {
            "example": "test.msgsndr.com",
            "type": "string"
          },
          "email": {
            "description": "The email for the sub-account/location",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "id": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "The name for the sub-account/location",
            "example": "Mark Shoes",
            "type": "string"
          },
          "phone": {
            "description": "The phone number of the business for which sub-account is created",
            "example": "+1410039940",
            "type": "string"
          },
          "postalCode": {
            "description": "The postal code of the business for which sub-account is created",
            "example": "567654",
            "type": "string"
          },
          "settings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SettingsSchema"
              }
            ],
            "description": "The default settings for location"
          },
          "social": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialSchema"
              }
            ],
            "description": "The social media links for location"
          },
          "state": {
            "description": "The state in which the business operates for which sub-account is created",
            "example": "Illinois",
            "type": "string"
          },
          "timezone": {
            "description": "The timezone of the business for which sub-account is created",
            "example": "US/Central",
            "type": "string"
          },
          "website": {
            "description": "The website of the business for which sub-account is created",
            "example": "https://yourwebsite.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CreateOfflineUserListJobDTO": {
        "properties": {
          "csvPath": {
            "description": "CSV file path",
            "example": "/uploads/users.csv",
            "type": "string"
          },
          "isDynamic": {
            "description": "Dynamic list flag",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "smartListIds": {
            "description": "Smart list IDs",
            "example": [
              "sl_123"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "userListId": {
            "description": "User list identifier",
            "example": "ul_123",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "CreateOrUpdateServiceBookingResponseDTO": {
        "properties": {
          "bookingId": {
            "description": "Booking ID",
            "example": "7NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "contactId": {
            "description": "Contact ID",
            "example": "9NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "createdBy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedOrUpdatedBy"
              }
            ],
            "description": "Booking booked by metadata"
          },
          "dateAdded": {
            "description": "Date Added",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date Updated",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "string"
          },
          "deleted": {
            "description": "Tells if the booking is deleted",
            "example": false,
            "type": "boolean"
          },
          "endTime": {
            "description": "End Time",
            "example": "2023-09-25T16:30:00+05:30",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "meetingLocation": {
            "description": "Meeting Location (If service location is an ask the booker, then the meeting location is used for the booking)",
            "example": "123 Main St, Anytown, USA",
            "type": "string"
          },
          "messages": {
            "description": "Optional informative or warning messages (e.g. meeting location ignored for non-ask-booker locations)",
            "example": [
              "Meeting location is not supported for the selected service location and has been ignored."
            ],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "serviceLocationId": {
            "description": "Service Location ID",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          },
          "services": {
            "description": "Services",
            "items": {
              "$ref": "#/components/schemas/ServiceDTO"
            },
            "type": "array"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "string"
          },
          "status": {
            "description": "Status",
            "example": "confirmed",
            "type": "string"
          },
          "timezone": {
            "description": "Timezone",
            "example": "America/New_York",
            "type": "string"
          },
          "title": {
            "description": "Service Booking Title",
            "example": "John Doe - Hair Styling",
            "type": "string"
          }
        },
        "required": [
          "bookingId",
          "locationId",
          "contactId",
          "serviceLocationId",
          "title",
          "startTime",
          "endTime",
          "services",
          "timezone",
          "status",
          "deleted",
          "dateAdded",
          "dateUpdated",
          "createdBy"
        ],
        "type": "object"
      },
      "CreatePostDTO": {
        "properties": {
          "accountIds": {
            "description": "Account IDs for the post. Each account ID identifies a connected social media account.\n\n**Get IDs from:** [Get Accounts API](./get-account) — use the `id` field from each account.\n\n**Validations:**\n- Required for non-draft posts\n- Must be a non-empty array\n- All account IDs must be valid connected accounts for the location",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "applyWatermark": {
            "description": "Apply watermark to media in this post.\n\n**Note:** Watermarks are applied to images only. Videos are not watermarked.",
            "example": true,
            "type": "boolean"
          },
          "categoryId": {
            "description": "Category ID to organize the post. Categories help group related posts.\n\n**Get Category IDs from:** [Get Categories API](./social-planner/get-categories-location-id) — use the `_id` field.\n\n**Validation:** Must be a valid MongoDB ObjectId.",
            "example": "65f151c99bc2bf3aaf970d72",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID of the creator who is creating/managing the post. Must be a valid MongoDB ObjectId.\n\n**Get User IDs from:** [Get User API](../users/get-user) — use the `id` field from the user object.\n\n**Validation:** Must be a valid MongoDB ObjectId.",
            "example": "65f151c99bc2bf3aaf970d72",
            "type": "string"
          },
          "facebookPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FacebookPostSchema"
              }
            ],
            "description": "Facebook-specific post configuration.\n\n**Key Fields:**\n- `type`: Post type (`post`, `story`, `reel`)\n\n**Restrictions:**\n- Facebook Groups do NOT support Reels\n- Reels require exactly 1 video\n- Stories do not support captions\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)"
          },
          "followUpComment": {
            "description": "Follow-up comment to be posted immediately after the main post is published.\n\n**Supported Platforms:** Facebook, Instagram, LinkedIn, YouTube\n\n**NOT Supported:** TikTok, Google My Business (GMB), Pinterest\n\n**Use Case:** Great for adding hashtags, additional context, or engagement prompts without cluttering the main post.\n\n- Follow-up comment is automatically trimmed to platform limits\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)",
            "example": "What do you think? Let us know in the comments!",
            "type": "string"
          },
          "gmbPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GMBPostSchema"
              }
            ],
            "description": "GMB Post Details",
            "example": {
              "actionType": "BOOK",
              "gmbEventType": "STANDARD",
              "url": "https://example.com"
            }
          },
          "instagramPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InstagramPostSchema"
              }
            ],
            "description": "Instagram-specific post configuration.\n\n**Key Fields:**\n- `type`: Post type (`post`, `story`, `reel`)\n- `collaborators`: Map of account IDs to Instagram usernames for collaboration invites (max 3 per account)\n- `showOnFeed`: Show reel on profile feed (for reels)\n\n**Collaborators Structure:**\n```json\n{ \"accountId\": [\"username1\", \"username2\"] }\n```\nWhere `accountId` is from [Get Accounts API](./get-account) and usernames are Instagram handles without @.\n\n**Restrictions:**\n- Media is REQUIRED for all Instagram posts\n- Max 30 hashtags allowed in caption\n- Stories do not support captions\n- Collaborators: Posts/Reels only (NOT Stories)\n- Reels require exactly 1 video\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)"
          },
          "linkedinPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedinPostSchema"
              }
            ],
            "description": "LinkedIn-specific post configuration.\n\n**Key Fields:**\n- `postAsPdf`: Set to `true` to post images as a PDF carousel document\n- `pdfTitle`: Title for the PDF document (max 100 characters)\n\n**Limits:**\n- Max 9 images/videos for regular posts\n- Max 300 pages for PDF carousel\n- Max PDF size: 100 MB\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)"
          },
          "media": {
            "description": "Post Media Data \n The limitations of media as per the platforms is provided through the reference link in API description",
            "example": [
              {
                "altText": "A sunset over the ocean with silhouetted palm trees",
                "caption": "Sample caption",
                "type": "image/jpeg",
                "url": "https://example.com/image.jpg"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/PostMediaSchema"
            },
            "type": "array"
          },
          "ogTagsDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgTagsSchema"
              }
            ],
            "description": "Og Tags Meta Data",
            "example": {
              "metaImage": "https://example.com/image.jpg",
              "metaLink": "https://www.yahoo.com/",
              "ogDescription": "Page Description",
              "ogTitle": "Page Title"
            }
          },
          "pinterestPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PinterestPostSchema"
              }
            ],
            "description": "Pinterest-specific post configuration. Required when posting to Pinterest accounts.\n\n**Required Fields:**\n- `boardIds`: Object mapping account OAuth IDs to Pinterest board IDs\n\n**Optional Fields:**\n- `title`: Pin title (max 100 characters)\n- `link`: Destination URL for the pin (max 2048 characters)\n\n**Get Board IDs:** Use the Pinterest boards API or retrieve from connected account details.\n\n**Limits:**\n- Max 1 image/video per pin\n- Caption max 800 characters\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)"
          },
          "postApprovalDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostApprovalSchema"
              }
            ],
            "description": "Post Approval Details",
            "example": {
              "approvalStatus": "pending",
              "approver": "iVrVJ2uoXNF0wzcBzgl5"
            }
          },
          "scheduleDate": {
            "description": "Schedule Date",
            "example": "2024-01-15T10:00:00Z",
            "type": "string"
          },
          "scheduleTimeUpdated": {
            "description": "Flag indicating if the schedule datetime was manually updated. Used for tracking rescheduled posts.",
            "example": true,
            "type": "boolean"
          },
          "selectedBestTime": {
            "description": "Selected Best Time slot for scheduling",
            "example": "2024-01-15T10:00:00Z",
            "type": "string"
          },
          "status": {
            "description": "Post status indicating the current state of the post.\n\n**Available Status Values:**\n- `draft` - Post saved as draft, not yet ready for publishing\n- `scheduled` - Post scheduled for future publishing (requires `scheduleDate`)\n- `in_review` - Post pending approval (requires `scheduleDate` and `postApprovalDetails`)\n- `published` - Post has been published\n- `in_progress` - Post is currently being processed\n- `pending` - Post is awaiting platform processing for Instagram media container creation\n- `failed` - Post publishing failed\n- `notification_sent` - Story notification sent (for manual story posting)\n- `deleted` - Post has been deleted\n\n**Validations:**\n- `scheduled` or `in_review` status requires `scheduleDate` to be set\n- Draft posts skip most validations (accountIds, media requirements)",
            "enum": [
              "draft",
              "scheduled",
              "in_review",
              "published",
              "in_progress",
              "pending",
              "failed",
              "notification_sent",
              "deleted"
            ],
            "example": "scheduled",
            "type": "string"
          },
          "summary": {
            "description": "Post content/caption text. Character limits vary by platform.\n\n**Custom Values & Hashtags:**\n- You can include custom values/variables in the content (e.g., `{{contact.name}}`)\n- Hashtags: Use `#hashtag` format. Instagram allows max 30 hashtags.\n- Mentions: Use platform-specific mention format (see `mentions` field for structured mentions)\n\n**Validations:**\n- Instagram/Facebook Story: Caption NOT supported for direct publishing\n- Facebook, LinkedIn, GMB: Content OR media is required (at least one)\n- Content is automatically trimmed to platform limits\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)",
            "example": "Hello World! Check out our latest updates. #social #marketing",
            "type": "string"
          },
          "tags": {
            "description": "Array of Tag IDs to associate with the post for organization and filtering.\n\n**Get Tag IDs from:** [Get Tags API](./social-planner/get-tags-location-id) — use the `_id` field from each tag.\n\n**Validation:** All IDs must be valid MongoDB ObjectIds.",
            "example": [
              "65f151c99bc2bf3aaf970d72",
              "65f151c99bc2bf3aaf970d73"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tiktokPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TiktokPostSchema"
              }
            ],
            "description": "Tiktok Post Details",
            "example": {
              "enableComment": true,
              "enableDuet": false,
              "privacyLevel": "PUBLIC_TO_EVERYONE"
            }
          },
          "type": {
            "description": "Type of post to create. Determines the format and platform requirements.\n\n**Available Types:**\n- `post` - Standard feed post (all platforms)\n- `story` - Temporary 24-hour story (Instagram, Facebook)\n- `reel` - Short-form video content (Instagram, Facebook, TikTok, YouTube)\n\n**Customize Per Platform:**\nYou can specify different content/types per platform using `facebookPostDetails.type`, `instagramPostDetails.type`, etc.\n\n**Validations:**\n- Reels require exactly 1 video\n- Stories: Caption not supported for Instagram/Facebook\n- Facebook Groups do not support Reels",
            "enum": [
              "post",
              "story",
              "reel"
            ],
            "example": "post",
            "type": "string"
          },
          "userId": {
            "description": "User ID of the user creating/managing the post. Required for OAuth channel posts (non-draft).",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "type": "string"
          },
          "youtubePostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/YoutubePostSchema"
              }
            ],
            "description": "YouTube-specific post configuration.\n\n**Key Fields:**\n- `title`: Video title (max 100 characters)\n- `type`: Video type (`video` for regular videos, `short` for YouTube Shorts)\n- `privacyLevel`: Video visibility (`private`, `public`, `unlisted`)\n\n**Limits:**\n- Max 1 video per post\n- Caption (description) max 5,000 characters\n\n**Requirements:**\n- Video is REQUIRED for YouTube posts\n- `type` field is required"
          }
        },
        "required": [
          "type",
          "accountIds",
          "userId"
        ],
        "type": "object"
      },
      "CreatePostSuccessfulResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Created Post",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatePostSuccessfulResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "post": {
                "_id": "61bb16833b3f2791f9715be2",
                "insights": {
                  "comment": 5,
                  "like": 12,
                  "share": 3
                },
                "locationId": "ve9EPM428h8vShlRW1KT",
                "status": "published"
              }
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "CreatePostSuccessfulResponseSchema": {
        "properties": {
          "post": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPostFormattedSchema"
              }
            ],
            "description": "Post Data",
            "example": {
              "_id": "61bb16833b3f2791f9715be2",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "platform": "google",
              "status": "published",
              "summary": "Sample Summary"
            }
          }
        },
        "type": "object"
      },
      "CreatePriceDto": {
        "properties": {
          "allowOutOfStockPurchases": {
            "description": "Continue selling when out of stock",
            "example": true,
            "type": "boolean"
          },
          "amount": {
            "description": "The amount of the price. ( min: 0 )",
            "example": 99.99,
            "type": "number"
          },
          "availableQuantity": {
            "description": "Available inventory stock quantity",
            "example": 5,
            "type": "number"
          },
          "compareAtPrice": {
            "description": "The compare at price for the price.",
            "example": 19.99,
            "type": "number"
          },
          "currency": {
            "description": "The currency of the price.",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "A brief description of the price.",
            "type": "string"
          },
          "digitalDelivery": {
            "description": "Digital delivery options",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isDigitalProduct": {
            "description": "Is the product a digital product",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "The unique identifier of the location associated with the price.",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "membershipOffers": {
            "description": "An array of membership offers associated with the price.",
            "items": {
              "$ref": "#/components/schemas/MembershipOfferDto"
            },
            "type": "array"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PriceMetaDto"
              }
            ],
            "description": "Additional metadata associated with the price."
          },
          "name": {
            "description": "The name of the price.",
            "example": "Price Name",
            "type": "string"
          },
          "recurring": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringDto"
              }
            ],
            "description": "The recurring details of the price (if type is recurring)."
          },
          "setupFee": {
            "description": "The setup fee for the price.",
            "example": 10.99,
            "type": "number"
          },
          "shippingOptions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingOptionsDto"
              }
            ],
            "description": "Shipping options of the Price"
          },
          "sku": {
            "description": "The unique identifier of the SKU associated with the price",
            "example": "sku_123",
            "type": "string"
          },
          "totalCycles": {
            "description": "The total number of billing cycles for the price. ( min: 1 )",
            "example": 12,
            "type": "number"
          },
          "trackInventory": {
            "description": "Need to track inventory stock quantity",
            "example": true,
            "type": "boolean"
          },
          "trialPeriod": {
            "description": "The trial period duration in days (if applicable).",
            "example": 7,
            "type": "number"
          },
          "type": {
            "description": "The type of the price.",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          },
          "userId": {
            "description": "The unique identifier of the user who created the price.",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "variantOptionIds": {
            "description": "An array of variant option IDs associated with the price.",
            "example": [
              "option_id_1",
              "option_id_2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "type",
          "currency",
          "amount",
          "locationId"
        ],
        "type": "object"
      },
      "CreatePriceResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the price.",
            "example": "655b33aa2209e60b6adb87a7",
            "type": "string"
          },
          "allowOutOfStockPurchases": {
            "description": "Continue selling when out of stock",
            "example": true,
            "type": "boolean"
          },
          "amount": {
            "description": "The amount of the price.",
            "example": 199999,
            "type": "number"
          },
          "availableQuantity": {
            "description": "Available inventory stock quantity",
            "example": 5,
            "type": "number"
          },
          "compareAtPrice": {
            "description": "The compare-at price for comparison purposes.",
            "example": 2000000,
            "type": "number"
          },
          "createdAt": {
            "description": "The creation timestamp of the price.",
            "example": "2023-11-20T10:23:38.645Z",
            "format": "date-time",
            "type": "string"
          },
          "currency": {
            "description": "The currency code for the price.",
            "example": "INR",
            "type": "string"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "membershipOffers": {
            "description": "An array of membership offers associated with the price.",
            "items": {
              "$ref": "#/components/schemas/MembershipOfferDto"
            },
            "type": "array"
          },
          "name": {
            "description": "The name of the price.",
            "example": "Red / S",
            "type": "string"
          },
          "product": {
            "description": "The unique identifier for the associated product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "recurring": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringDto"
              }
            ],
            "description": "The recurring details of the price (if type is recurring)."
          },
          "trackInventory": {
            "description": "Indicates whether inventory tracking is enabled.",
            "example": null,
            "type": "boolean"
          },
          "type": {
            "description": "The type of the price (e.g., one_time).",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the price.",
            "example": "2024-01-23T09:57:04.852Z",
            "format": "date-time",
            "type": "string"
          },
          "userId": {
            "description": "The unique identifier for the user.",
            "example": "6YAtzfzpmHAdj0e8GkKp",
            "type": "string"
          },
          "variantOptionIds": {
            "description": "An array of variant option IDs associated with the price.",
            "example": [
              "h4z7u0im2q8",
              "h3nst2ltsnn"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "name",
          "type",
          "currency",
          "amount"
        ],
        "type": "object"
      },
      "CreateProductCollectionsDto": {
        "properties": {
          "altId": {
            "description": "Location Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "The type of alt. For now it is only LOCATION",
            "enum": [
              "location"
            ],
            "example": "LOCATION",
            "type": "string"
          },
          "collectionId": {
            "description": "Unique Identifier of the Product Collection, Mongo Id",
            "example": "66057f9d28536eae584ec047",
            "type": "string"
          },
          "image": {
            "description": "The URL of the image that is going to be displayed as the collection Thumbnail",
            "example": "http://example.com/watermark.png",
            "type": "string"
          },
          "name": {
            "description": "Name of the Product Collection",
            "example": "Best Sellers",
            "type": "string"
          },
          "seo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CollectionSEODto"
              }
            ],
            "description": "The metadata information which will be displayed in SEO previews"
          },
          "slug": {
            "description": "Slug of the Product Collection which helps in navigation",
            "example": "best-sellers",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "CreateProductDto": {
        "properties": {
          "automaticTaxCategoryId": {
            "description": "Tax category ID for Automatic taxes calculation.",
            "example": "65d71377c326ea78e1c47df5",
            "type": "string"
          },
          "availableInStore": {
            "description": "Indicates whether the product is available in-store.",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "An array of category Ids for the product",
            "example": [
              "65d71377c326ea78e1c47df5",
              "65d71377c326ea78e1c47d34"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "A brief description of the product.",
            "example": "Product description goes here.",
            "type": "string"
          },
          "image": {
            "description": "The URL for the product image.",
            "example": "https://storage.googleapis.com/ghl-test/3SwdhCsvxI8Au3KsPJt6/media/65af8d5df88bdb4b1022ee90.png",
            "type": "string"
          },
          "isLabelEnabled": {
            "default": false,
            "description": "Is the product label enabled. If this is true, label object cannot be empty.",
            "example": true,
            "type": "boolean"
          },
          "isTaxesEnabled": {
            "default": false,
            "description": "Are there any taxes attached to the product. If this is true, taxes array cannot be empty.",
            "example": true,
            "type": "boolean"
          },
          "label": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductLabelDto"
              }
            ],
            "description": "Details for Product Label"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "medias": {
            "description": "An array of medias for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductMediaDto"
            },
            "type": "array"
          },
          "name": {
            "description": "The name of the product.",
            "example": "Awesome Product",
            "type": "string"
          },
          "productType": {
            "enum": [
              "DIGITAL",
              "PHYSICAL",
              "SERVICE",
              "PHYSICAL/DIGITAL"
            ],
            "type": "string"
          },
          "seo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductSEODto"
              }
            ],
            "description": "SEO data for the product that will be displayed in the preview"
          },
          "slug": {
            "description": "The slug using which the product navigation will be handled",
            "example": "awesome-product",
            "type": "string"
          },
          "statementDescriptor": {
            "description": "The statement descriptor for the product.",
            "example": "abcde",
            "type": "string"
          },
          "taxInclusive": {
            "default": false,
            "description": "Whether the taxes should be included in the purchase price",
            "example": true,
            "type": "boolean"
          },
          "taxes": {
            "description": "List of ids of Taxes attached to the Product. If taxes are passed, isTaxesEnabled should be true.",
            "example": [
              "654492a4e6bef380114de15a"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "variants": {
            "description": "An array of variants for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductVariantDto"
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "locationId",
          "productType"
        ],
        "type": "object"
      },
      "CreateProductResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "automaticTaxCategoryId": {
            "description": "Tax category ID for Automatic taxes calculation.",
            "example": "65d71377c326ea78e1c47df5",
            "type": "string"
          },
          "availableInStore": {
            "description": "Indicates whether the product is available in-store.",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "An array of category Ids for the product",
            "example": [
              "65d71377c326ea78e1c47df5",
              "65d71377c326ea78e1c47d34"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "The creation timestamp of the product.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "product description",
            "example": "This is a really awesome product",
            "type": "string"
          },
          "image": {
            "description": "The URL for the product image.",
            "example": "https://storage.googleapis.com/ghl-test/3SwdhCsvxI8Au3KsPJt6/media/65af8d5df88bdb4b1022ee90.png",
            "type": "string"
          },
          "isTaxesEnabled": {
            "default": false,
            "description": "The field indicates whether taxes are enabled for the product or not.",
            "example": true,
            "type": "boolean"
          },
          "label": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductLabelDto"
              }
            ],
            "description": "The Product label details"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "name": {
            "description": "The name of the product.",
            "example": "Awesome Product",
            "type": "string"
          },
          "productType": {
            "description": "The type of the product (e.g., PHYSICAL).",
            "example": "PHYSICAL",
            "type": "string"
          },
          "slug": {
            "description": "The slug of the product by which the product will be navigated",
            "example": "washing-machine",
            "type": "string"
          },
          "statementDescriptor": {
            "description": "The statement descriptor for the product.",
            "example": "abcde",
            "type": "string"
          },
          "taxes": {
            "description": "An array of ids of Taxes attached to the Product. If the expand query includes tax, the taxes will be of type `ProductTaxDto`. Please refer to the `ProductTaxDto` for additional details.",
            "example": [
              "654492a4e6bef380114de15a"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "The last update timestamp of the product.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          },
          "variants": {
            "description": "An array of variants for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductVariantDto"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "locationId",
          "name",
          "productType",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CreatePublicAgentDTO": {
        "properties": {
          "agencyId": {
            "description": "Agency ID",
            "example": "gjL2sFNXJfJYa3d2OYSN",
            "type": "string"
          },
          "authorEmail": {
            "description": "Author email",
            "example": "john@example.com",
            "type": "string"
          },
          "authorId": {
            "description": "Author ID",
            "example": "usr_abc123def456",
            "type": "string"
          },
          "authorName": {
            "description": "Author name",
            "example": "John Doe",
            "type": "string"
          },
          "description": {
            "description": "Description of the agent",
            "example": "AI agent specialized in handling customer inquiries and support tickets",
            "type": "string"
          },
          "edges": {
            "description": "Edges array (deprecated, prefer using version.edges)",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "locationId": {
            "description": "Location ID",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "name": {
            "description": "Name of the agent",
            "example": "Customer Support Agent",
            "type": "string"
          },
          "nodes": {
            "description": "Nodes array (deprecated, prefer using version.nodes)",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "status": {
            "description": "Status of the agent",
            "enum": [
              "active",
              "inactive",
              "archived"
            ],
            "example": "active",
            "type": "string"
          },
          "version": {
            "description": "Version data for the agent including nodes, edges, and configuration",
            "example": {
              "description": "Initial version",
              "edges": [],
              "globalVariables": [],
              "inputVariables": [],
              "nodes": [],
              "runtimeVariables": [],
              "scopes": [],
              "uiEdges": [],
              "uiNodes": [],
              "versionName": "Version 1"
            },
            "type": "object"
          }
        },
        "required": [
          "locationId",
          "status",
          "version"
        ],
        "type": "object"
      },
      "CreatePublicAgentResponseDTO": {
        "properties": {
          "agent": {
            "description": "Created agent data with metadata",
            "example": {
              "agencyId": "gjL2sFNXJfJYa3d2OYSN",
              "agentId": "p1q2r3s4t5u6v7w8x9y0z1a2",
              "authorId": "usr_abc123def456",
              "createdAt": "2024-02-27T10:30:00.000Z",
              "description": "AI agent specialized in handling customer inquiries and support tickets",
              "folderId": "C2QujeCh8ZnC7al2InWR",
              "folderName": null,
              "locationId": "C2QujeCh8ZnC7al2InWR",
              "name": "Customer Support Agent",
              "status": "active",
              "updatedAt": "2024-02-27T10:30:00.000Z"
            },
            "type": "object"
          },
          "message": {
            "description": "Response message",
            "example": "Agent created successfully with staging version.",
            "type": "string"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          },
          "versions": {
            "description": "Created versions array (initial staging version)",
            "example": [
              {
                "agentId": "p1q2r3s4t5u6v7w8x9y0z1a2",
                "createdAt": "2024-02-27T10:30:00.000Z",
                "isPublished": false,
                "state": "staging",
                "version": 1,
                "versionId": "v1a2b3c4d5e6f7g8h9i0",
                "versionName": "Customer Support Agent v1"
              }
            ],
            "type": "array"
          }
        },
        "required": [
          "success",
          "message",
          "agent",
          "versions"
        ],
        "type": "object"
      },
      "CreatePublicServiceBookingDTO": {
        "properties": {
          "contactId": {
            "description": "Contact ID",
            "example": "9NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "endTime": {
            "description": "End Time",
            "example": "2023-09-25T16:30:00+05:30",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "meetingLocation": {
            "description": "Meeting Location (If service location is an ask the booker, then the meeting location is required)",
            "example": "123 Main St, Anytown, USA",
            "type": "string"
          },
          "serviceLocationId": {
            "description": "Service Location ID (If not provided, then the default service location will be used)",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          },
          "services": {
            "description": "Services",
            "items": {
              "$ref": "#/components/schemas/CreateBookingServiceDTO"
            },
            "type": "array"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "status": {
            "description": "Status. (If not provided, the status configured in Service Global Settings will be used.)",
            "enum": [
              "confirmed",
              "new"
            ],
            "example": "confirmed",
            "type": "string"
          },
          "timezone": {
            "description": "Timezone",
            "example": "America/New_York",
            "type": "string"
          },
          "title": {
            "description": "Service Booking Title",
            "example": "Service Appointment",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "contactId",
          "startTime",
          "endTime",
          "timezone",
          "services"
        ],
        "type": "object"
      },
      "CreateQueueItemDTO": {
        "properties": {
          "directToQueue": {
            "description": "When true, creates the queue item directly without requiring an edit session, even for active/paused queues. The order field is ignored and the item position is determined by the queue's prioritizeNewContent setting: if true, the item is added to the top of the queue; if false, it is added to the bottom.",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "modifiedPostPayload": {
            "allOf": [
              {
                "$ref": "#/components/schemas/QueueModifiedPostDTO"
              }
            ],
            "description": "New post details"
          },
          "order": {
            "description": "Order for the new item in the queue (cyclic-aware). Accepts:\n- A number: explicit order value calculated by FE as midpoint between adjacent items\n- \"top\": place at cyclic top (first to be scheduled next)\n- \"bottom\": place at cyclic bottom (last to be scheduled)\n\nFor positions between items, FE calculates: Math.floor((prevItem.order + nextItem.order) / 2)\nDefaults to end if not provided. Note: This field is ignored when directToQueue is true -\nthe order will be automatically calculated based on the queue's prioritizeNewContent setting.",
            "example": "top",
            "oneOf": [
              {
                "type": "number"
              },
              {
                "type": "string"
              }
            ]
          },
          "primaryImage": {
            "description": "Primary media URL (image) for the post. Falls back to modifiedPostPayload.primaryImage if not set.",
            "example": "http://example.com/media.png",
            "type": "string"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "variations": {
            "description": "Variations",
            "items": {
              "$ref": "#/components/schemas/VariationInputDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "CreateQueueItemResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Queue item created successfully",
            "type": "string"
          },
          "queueItem": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedQueueItemWithVariationsDTO"
              }
            ],
            "description": "The newly created queue item"
          }
        },
        "type": "object"
      },
      "CreateRedirectParams": {
        "properties": {
          "action": {
            "enum": [
              "funnel",
              "website",
              "url",
              "all"
            ],
            "example": "URL",
            "type": "string"
          },
          "domain": {
            "example": "example.com",
            "type": "string"
          },
          "locationId": {
            "example": "6p2RxpgtMKQwO3E6IUaT",
            "type": "string"
          },
          "path": {
            "example": "/Hello",
            "type": "string"
          },
          "target": {
            "example": "https://www.google.com",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "domain",
          "path",
          "target",
          "action"
        ],
        "type": "object"
      },
      "CreateRedirectResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RedirectResponseDTO"
              }
            ],
            "description": "Data containing details of the created redirect"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "CreateScheduleDTO": {
        "properties": {
          "calendarIds": {
            "description": "Calendar IDs associated with the schedule",
            "example": [
              "WvVX9LpvlBO6K506xLbp",
              "XyZ8MnQrStUvWxYzAbCdEf"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "locationId": {
            "description": "Location ID where this schedule applies",
            "example": "IkqiJlXJ7o9h61tCHHod",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for the schedule",
            "example": "Business Hours Schedule",
            "type": "string"
          },
          "rules": {
            "description": "Schedule rules defining when the schedule is active",
            "example": [
              {
                "day": "monday",
                "intervals": [
                  {
                    "from": "09:00",
                    "to": "17:00"
                  }
                ],
                "type": "wday"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ScheduleRuleDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone for the schedule (IANA timezone identifier)",
            "example": "America/New_York",
            "pattern": "^[A-Za-z_]+/[A-Za-z_]+$",
            "type": "string"
          },
          "userId": {
            "description": "User ID associated with the schedule",
            "example": "IkqiJlXJ7o9h61tCHHod",
            "type": "string"
          }
        },
        "required": [
          "timezone",
          "locationId",
          "name",
          "userId"
        ],
        "type": "object"
      },
      "CreateServiceDTO": {
        "properties": {
          "coverImage": {
            "description": "Service cover image URL",
            "example": "https://example.com/cover.jpg",
            "type": "string"
          },
          "description": {
            "description": "Service description",
            "example": "Full hair styling session",
            "type": "string"
          },
          "eventColor": {
            "description": "Service event color (hex)",
            "example": "#66C61C",
            "type": "string"
          },
          "formId": {
            "description": "Custom form ID (will be used to display the custom form on the booking page, if only one service is selected)",
            "example": "65e5f6dfacf123513228d390",
            "type": "string"
          },
          "isPrivate": {
            "description": "Whether service is private (not shown publicly)",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "name": {
            "description": "Service name",
            "example": "Hair Styling",
            "type": "string"
          },
          "payment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentDTO"
              }
            ],
            "description": "Payment details (default amount is 0, currency configured in Service Global Settings is used.)"
          },
          "postBuffer": {
            "description": "Post-buffer: Additional time that can be added after an appointment, allowing for extra time to wrap up",
            "example": 15,
            "type": "number"
          },
          "postBufferUnit": {
            "description": "Post-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "example": 10,
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Pre-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "serviceCategoryId": {
            "description": "Service category ID (uses default category if not provided)",
            "example": "65e5f6dfacf123513228d381",
            "type": "string"
          },
          "serviceDuration": {
            "description": "This controls the duration of the appointment",
            "example": 30,
            "type": "number"
          },
          "serviceDurationUnit": {
            "description": "Duration unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "slug": {
            "description": "Unique URL-friendly identifier",
            "example": "hair-styling",
            "type": "string"
          },
          "staff": {
            "description": "Assigned staff members (at least one required)",
            "items": {
              "$ref": "#/components/schemas/StaffDTO"
            },
            "type": "array"
          },
          "variations": {
            "description": "Service variations (pass empty array for no variations)",
            "items": {
              "$ref": "#/components/schemas/CreateServiceVariationDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId",
          "name",
          "slug",
          "staff"
        ],
        "type": "object"
      },
      "CreateServiceLocationDTO": {
        "properties": {
          "address": {
            "description": "Use a full street address when locationType is offline. Use a user-facing label when locationType is ask_booker.",
            "example": "789 5th Avenue, Floor 3, New York, NY 10022 / Home Service",
            "type": "string"
          },
          "coverImage": {
            "description": "URL of the cover image for this service location",
            "example": "https://storage.example.com/locations/midtown-therapy-studio/cover.jpg",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "locationType": {
            "description": "Location type",
            "enum": [
              "offline",
              "ask_booker"
            ],
            "example": "offline",
            "type": "string"
          },
          "name": {
            "description": "Location name",
            "example": "Midtown Therapy Studio",
            "type": "string"
          },
          "phone": {
            "description": "Phone number",
            "example": "+1-212-555-0174",
            "type": "string"
          },
          "slug": {
            "description": "URL-friendly slug identifier",
            "example": "midtown-therapy-studio",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "CreateServiceVariationDTO": {
        "properties": {
          "name": {
            "description": "Variation name",
            "example": "Standard Haircut",
            "type": "string"
          },
          "payment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentDTO"
              }
            ],
            "description": "Payment details"
          },
          "postBuffer": {
            "description": "Post-buffer: Additional time that can be added after an appointment, allowing for extra time to wrap up",
            "example": 15,
            "type": "number"
          },
          "postBufferUnit": {
            "description": "Post-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "example": 10,
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Pre-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "serviceDuration": {
            "description": "This controls the duration of the appointment",
            "example": 30,
            "type": "number"
          },
          "serviceDurationUnit": {
            "description": "Duration unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "CreateShippingCarrierDto": {
        "properties": {
          "allowsMultipleServiceSelection": {
            "description": "The seller can choose multiple services while creating shipping rates if this is true.",
            "example": true,
            "type": "boolean"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "callbackUrl": {
            "description": "The URL endpoint that CRM needs to retrieve shipping rates. This must be a public URL.",
            "example": "https://example.com/get-shipping-rates",
            "type": "string"
          },
          "name": {
            "description": "Name of the shipping carrier",
            "example": "FedEx",
            "type": "string"
          },
          "services": {
            "description": "An array of available shipping carrier services",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierServiceDto"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "callbackUrl"
        ],
        "type": "object"
      },
      "CreateShippingCarrierResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingCarrierSchema"
              }
            ],
            "description": "Shipping carrier data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "CreateShippingRateDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amount": {
            "description": "The amount of the shipping rate if it is normal rate (0 means free ). Fixed Handling fee if it is a carrier rate (it will add to the carrier rate).",
            "example": 99.99,
            "type": "number"
          },
          "conditionType": {
            "description": "Type of condition to provide the conditional pricing",
            "enum": [
              "none",
              "price",
              "weight"
            ],
            "example": "price",
            "type": "string"
          },
          "currency": {
            "description": "The currency of the amount of the rate / handling fee",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "Delivery description",
            "example": "Ships next day",
            "type": "string"
          },
          "isCarrierRate": {
            "description": "is this a carrier rate",
            "example": true,
            "type": "boolean"
          },
          "maxCondition": {
            "description": "Maximum condition for applying this price. set 0 or null if there is no maximum",
            "example": 99.99,
            "type": "number"
          },
          "minCondition": {
            "description": "Minimum condition for applying this price. set 0 or null if there is no minimum",
            "example": 99.99,
            "type": "number"
          },
          "name": {
            "description": "Name of the shipping zone",
            "example": "North zone",
            "type": "string"
          },
          "percentageOfRateFee": {
            "description": "Percentage of rate fee if it is a carrier rate.",
            "example": 10.99,
            "type": "number"
          },
          "shippingCarrierId": {
            "description": "Shipping carrier id",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "shippingCarrierServices": {
            "description": "An array of items",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierServiceDto"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "currency",
          "amount",
          "conditionType",
          "minCondition",
          "maxCondition",
          "shippingCarrierId"
        ],
        "type": "object"
      },
      "CreateShippingRateResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingRateSchema"
              }
            ],
            "description": "Shipping zone data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "CreateShippingZoneDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "countries": {
            "description": "List of countries that are available",
            "items": {
              "$ref": "#/components/schemas/ShippingZoneCountryDto"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the shipping zone",
            "example": "North zone",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "countries"
        ],
        "type": "object"
      },
      "CreateShippingZoneResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingZoneSchema"
              }
            ],
            "description": "Shipping zone data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "CreateSingleActionDTO": {
        "properties": {
          "actionParameters": {
            "description": "Action parameters - structure varies by actionType",
            "examples": {
              "appointmentBooking": {
                "summary": "Appointment Booking Action",
                "value": {
                  "calendarId": "507f1f77bcf86cd799439011",
                  "daysOfOfferingDates": 3,
                  "hoursBetweenSlots": 1,
                  "slotsPerDay": 3
                }
              },
              "callTransfer": {
                "summary": "Call Transfer Action",
                "value": {
                  "hearWhisperMessage": true,
                  "transferToType": "number",
                  "transferToValue": "+12345678901",
                  "triggerMessage": "Let me transfer you to a manager right away"
                }
              },
              "customAction": {
                "summary": "Custom Action",
                "value": {
                  "apiDetails": {
                    "authenticationRequired": true,
                    "authenticationValue": "token123",
                    "headers": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "parameters": [
                      {
                        "description": "Order ID to look up",
                        "example": "ORD-12345",
                        "name": "orderId",
                        "type": "string"
                      }
                    ],
                    "url": "https://api.example.com/orders"
                  },
                  "responsePathsToExtract": [
                    "data.orderId",
                    "status"
                  ],
                  "triggerMessage": "Let me check that order status",
                  "triggerPrompt": "When caller provides order number"
                }
              },
              "dataExtraction": {
                "summary": "Data Extraction Action",
                "value": {
                  "contactFieldId": "507f1f77bcf86cd799439011",
                  "description": "Caller's phone number",
                  "examples": [
                    "+1234567890",
                    "+9876543210"
                  ],
                  "overwriteExistingValue": false
                }
              },
              "knowledgeBase": {
                "summary": "Knowledge Base Action",
                "value": {
                  "knowledgeBaseId": "507f1f77bcf86cd799439011",
                  "triggerPrompt": "When caller asks about pricing"
                }
              },
              "sms": {
                "summary": "SMS Action",
                "value": {
                  "messageBody": "Your appointment is confirmed for tomorrow at 2 PM",
                  "triggerMessage": "I'll send you a confirmation text",
                  "triggerPrompt": "When caller asks for booking confirmation"
                }
              },
              "workflowTrigger": {
                "summary": "Workflow Trigger Action",
                "value": {
                  "triggerMessage": "Let me start that process for you",
                  "triggerPrompt": "When caller requests a quote",
                  "workflowId": "507f1f77bcf86cd799439011"
                }
              }
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallTransferActionParameters"
              },
              {
                "$ref": "#/components/schemas/DataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/InCallDataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/WorkflowTriggerParameters"
              },
              {
                "$ref": "#/components/schemas/SMSParameters"
              },
              {
                "$ref": "#/components/schemas/AppointmentBookingActionParameters"
              },
              {
                "$ref": "#/components/schemas/CustomActionParameters"
              },
              {
                "$ref": "#/components/schemas/KnowledgeBaseParameters"
              }
            ]
          },
          "actionType": {
            "description": "Type of action",
            "enum": [
              "CALL_TRANSFER",
              "DATA_EXTRACTION",
              "IN_CALL_DATA_EXTRACTION",
              "WORKFLOW_TRIGGER",
              "SMS",
              "APPOINTMENT_BOOKING",
              "CUSTOM_ACTION",
              "KNOWLEDGE_BASE"
            ],
            "example": "CALL_TRANSFER",
            "type": "string"
          },
          "agentId": {
            "description": "Agent ID to attach the action to",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "507f1f77bcf86cd799439012",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for this action",
            "example": "Transfer to Manager",
            "type": "string"
          }
        },
        "required": [
          "agentId",
          "locationId",
          "actionType",
          "name",
          "actionParameters"
        ],
        "type": "object"
      },
      "CreateSnapshotShareLinkRequestDTO": {
        "properties": {
          "relationship_number": {
            "description": "Comma separated Relationship number of Agencies to create agency restricted share link",
            "example": "0-128-926,1-208-926,2-008-926",
            "type": "string"
          },
          "share_location_id": {
            "description": "Comma separated Sub-Account ids to create sub-account restricted share link",
            "example": "l1C08ntBrFjLS0elLIYU, U1C08ntBrFjLS0elKIYP",
            "type": "string"
          },
          "share_type": {
            "description": "Type of share link to generate",
            "enum": [
              "link",
              "permanent_link",
              "agency_link",
              "location_link"
            ],
            "example": "permanent_link",
            "type": "string"
          },
          "snapshot_id": {
            "description": "id for snapshot to be shared",
            "example": "1eM2UgkfaECOYyUdCo9Pa",
            "type": "string"
          }
        },
        "required": [
          "snapshot_id",
          "share_type"
        ],
        "type": "object"
      },
      "CreateSnapshotShareLinkSuccessfulResponseDTO": {
        "properties": {
          "id": {
            "description": "id for shared snapshot",
            "example": "1eM2UgkfaECOYyUdCo9Pa",
            "type": "string"
          },
          "shareLink": {
            "description": "Share Link for snapshot",
            "example": "https://affiliates.gohighlevel.com/?share=1eM2UgkfaECOYyUdCo9Pa",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CreateStoreSettingDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "shippingOrigin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreShippingOriginDto"
              }
            ],
            "description": "Shipping origin address"
          },
          "storeOrderFulfillmentNotification": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreOrderFulfillmentNotificationDto"
              }
            ],
            "description": "Store order fulfillment notification email"
          },
          "storeOrderNotification": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreOrderNotificationDto"
              }
            ],
            "description": "Store order notification email"
          }
        },
        "required": [
          "altId",
          "altType",
          "shippingOrigin"
        ],
        "type": "object"
      },
      "CreateStoreSettingResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreSettingSchema"
              }
            ],
            "description": "Shipping carrier data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "CreateTaskParams": {
        "properties": {
          "assignedTo": {
            "description": "User Id to whom the task is assigned",
            "example": "hxHGVRb1YJUscrCB8eXK",
            "type": "string"
          },
          "body": {
            "description": "Body or description of the task",
            "example": "loram ipsum",
            "type": "string"
          },
          "completed": {
            "description": "Whether the task is completed",
            "example": true,
            "type": "boolean"
          },
          "dueDate": {
            "description": "Due date of the task (ISO 8601 format)",
            "example": "2020-10-25T11:00:00Z",
            "type": "string"
          },
          "title": {
            "description": "Title of the task",
            "example": "First Task",
            "type": "string"
          }
        },
        "required": [
          "title",
          "dueDate",
          "completed"
        ],
        "type": "object"
      },
      "CreateTemplateFolderPublicV2BodyDto": {
        "properties": {
          "name": {
            "description": "Folder name",
            "example": "Spring Campaigns",
            "type": "string"
          },
          "userId": {
            "description": "ID of the user performing this action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "CreateTemplateFolderPublicV2ResponseDto": {
        "properties": {
          "createdAt": {
            "description": "Created timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "id": {
            "description": "Folder ID",
            "example": "67f15c2ae99226d5bcccb8f3",
            "type": "string"
          },
          "name": {
            "description": "Folder name",
            "example": "Spring Campaigns",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "CreateTemplatePublicV2BodyDto": {
        "properties": {
          "editorContent": {
            "description": "Optional initial editor content. Provide HTML or plain-text string content.",
            "example": "<html><body>Hello World</body></html>",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type for the new template. Use `html` for code-editor templates or `text` for plain-text templates.",
            "enum": [
              "html",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "name": {
            "description": "Template name",
            "example": "Newsletter Template",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Email preview text",
            "type": "string"
          },
          "subjectLine": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "userId": {
            "description": "ID of the user performing this action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "required": [
          "name",
          "editorType"
        ],
        "type": "object"
      },
      "CreateTemplatePublicV2ResponseDto": {
        "properties": {
          "createdAt": {
            "description": "Created timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type",
            "enum": [
              "html",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Template ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether template is plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Template name",
            "example": "Newsletter Template",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Email preview text",
            "type": "string"
          },
          "previewUrl": {
            "description": "Preview URL",
            "example": "https://example.com/preview/template123",
            "type": "string"
          },
          "subjectLine": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "editorType",
          "isPlainText"
        ],
        "type": "object"
      },
      "CreateUserDto": {
        "properties": {
          "companyId": {
            "description": "Company/Agency ID to associate the user with",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "email": {
            "description": "Email address of the user (used for login)",
            "example": "john@example.com",
            "type": "string"
          },
          "firstName": {
            "description": "First name of the user",
            "example": "John",
            "type": "string"
          },
          "lastName": {
            "description": "Last name of the user",
            "example": "Deo",
            "type": "string"
          },
          "locationIds": {
            "description": "List of location IDs to assign to the user",
            "example": [
              "C2QujeCh8ZnC7al2InWR"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "password": {
            "description": "Password for the user account. All passwords will be required to meet the following criteria:\n\n- Minimum 12 characters\n- At least one uppercase letter (A–Z)\n- At least one lowercase letter (a–z)\n- At least one number (0–9)\n- At least one special character (e.g., !, @, #, $)",
            "example": "************",
            "type": "string"
          },
          "permissions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PermissionsDto"
              }
            ],
            "description": "User permissions controlling access to various features",
            "example": {
              "campaignsEnabled": true,
              "campaignsReadOnly": false,
              "contactsEnabled": true,
              "workflowsEnabled": true
            }
          },
          "phone": {
            "description": "Phone number of the user in E.164 format",
            "example": "+18832327657",
            "type": "string"
          },
          "platformLanguage": {
            "description": "Platform language preference for the user",
            "enum": [
              "en_US",
              "es",
              "fr_CA",
              "fr_FR",
              "nl",
              "de",
              "pt_PT",
              "pt_BR",
              "it",
              "sv",
              "da",
              "fi",
              "no"
            ],
            "example": "en_US",
            "type": "string"
          },
          "profilePhoto": {
            "description": "URL of the user profile photo",
            "example": "https://img.png",
            "type": "string"
          },
          "role": {
            "description": "User role within the account (admin or user)",
            "example": "admin",
            "type": "string"
          },
          "scopes": {
            "description": "Scopes allowed for users. Only scopes that have been passed will be enabled. Note:- If passed empty all the scopes will be get disabled",
            "example": [
              "contacts.write",
              "campaigns.readonly"
            ],
            "items": {
              "enum": [
                "campaigns.readonly",
                "campaigns.write",
                "calendars.readonly",
                "calendars/events.write",
                "calendars/groups.write",
                "calendars.write",
                "contacts.write",
                "contacts/bulkActions.write",
                "workflows.readonly",
                "workflows.write",
                "triggers.write",
                "funnels.write",
                "forms.write",
                "surveys.write",
                "quizzes.write",
                "websites.write",
                "medias.write",
                "medias.readonly",
                "opportunities.write",
                "opportunities/leadValue.readonly",
                "opportunities/bulkActions.write",
                "pipelines.create",
                "reporting/phone.readonly",
                "reporting/adwords.readonly",
                "reporting/facebookAds.readonly",
                "reporting/attributions.readonly",
                "prospecting/auditReport.write",
                "reporting/reports.readonly",
                "reporting/agent.readonly",
                "reporting/reports.write",
                "reporting/stats.export",
                "payments.write",
                "payments/records.write",
                "payments/orders.readonly",
                "payments/orders.export",
                "payments/orders.import",
                "payments/orders.collectPayment",
                "payments/subscriptions.readonly",
                "payments/subscriptions.write",
                "payments/subscriptions.update",
                "payments/subscriptions.export",
                "payments/subscriptions.pauseResumeCancel",
                "payments/subscriptions.sharePaymentMethod",
                "payments/transactions.readonly",
                "payments/transactions.export",
                "payments/transactions.import",
                "payments/transactions.refund",
                "payments/transactions.viewReceipts",
                "payments/taxesSettings.readonly",
                "payments/settings.readonly",
                "payments/taxesSettings.updateInclusiveExclusive",
                "payments/taxesSettings.manageRates",
                "payments/taxesSettings.configureAutomatic",
                "products.readonly",
                "products.write",
                "products.delete",
                "products.duplicate",
                "products.bulkActions",
                "payments/settings.write",
                "payments/settings.configureReceipt",
                "payments/settings.configureSubscription",
                "invoices.write",
                "invoices.readonly",
                "invoices/schedule.readonly",
                "invoices/schedule.write",
                "invoices/template.readonly",
                "invoices/template.write",
                "reputation/review.write",
                "reputation/listing.write",
                "reputation/reviewsAIAgents.write",
                "reputation/gbp.write",
                "conversations.write",
                "conversations.readonly",
                "conversations/message.readonly",
                "conversations/message.write",
                "contentAI.write",
                "ai-studio.readonly",
                "ai-studio.write",
                "dashboard/stats.readonly",
                "locations/tags.write",
                "locations/tags.readonly",
                "marketing.write",
                "eliza.write",
                "settings.write",
                "socialplanner/post.write",
                "socialplanner/account.readonly",
                "socialplanner/account.write",
                "socialplanner/category.readonly",
                "socialplanner/category.write",
                "socialplanner/csv.readonly",
                "socialplanner/csv.write",
                "socialplanner/group.write",
                "socialplanner/hashtag.readonly",
                "socialplanner/hashtag.write",
                "socialplanner/oauth.readonly",
                "socialplanner/oauth.write",
                "socialplanner/post.readonly",
                "socialplanner/recurring.readonly",
                "socialplanner/recurring.write",
                "socialplanner/review.readonly",
                "socialplanner/review.write",
                "socialplanner/rss.readonly",
                "socialplanner/rss.write",
                "socialplanner/search.readonly",
                "socialplanner/setting.readonly",
                "socialplanner/setting.write",
                "socialplanner/stat.readonly",
                "socialplanner/tag.readonly",
                "socialplanner/tag.write",
                "socialplanner/filters.readonly",
                "socialplanner/medias.readonly",
                "socialplanner/medias.write",
                "socialplanner/watermarks.readonly",
                "socialplanner/watermarks.write",
                "socialplanner/metatag.readonly",
                "socialplanner/facebook.readonly",
                "socialplanner/linkedin.readonly",
                "socialplanner/twitter.readonly",
                "socialplanner/notification.readonly",
                "socialplanner/notification.write",
                "socialplanner/snapshot.readonly",
                "socialplanner/snapshot.write",
                "marketing/affiliate.write",
                "blogs.write",
                "membership.write",
                "communities.write",
                "gokollab.write",
                "certificates.write",
                "certificates.readonly",
                "adPublishing.write",
                "adPublishing.readonly",
                "prospecting.write",
                "prospecting.readonly",
                "prospecting/reports.readonly",
                "private-integration-location.readonly",
                "private-integration-location.write",
                "private-integration-company.readonly",
                "private-integration-company.write",
                "native-integrations.readonly",
                "native-integrations.write",
                "wordpress.write",
                "wordpress.read",
                "custom-menu-link.write",
                "qrcodes.write",
                "users/team-management.write",
                "users/team-management.readonly",
                "loginas.write",
                "users-sso-login-management.write",
                "users-sso-login-management.readonly",
                "sso-config.write",
                "snapshots/api.readonly",
                "snapshots/api.create",
                "snapshots/api.edit",
                "snapshots/api.push",
                "snapshots/api.refresh",
                "snapshots/api.share",
                "snapshots/api.delete",
                "internaltools.location-transfer.write",
                "internaltools.location-transfer.readonly",
                "affiliateportal.write",
                "affiliateportal.readonly",
                "companies.write",
                "internaltools.billing.write",
                "internaltools.billing.readonly",
                "internaltools.billing-common.readonly",
                "internaltools.billing-common.write",
                "voice-ai-agents.write",
                "voice-ai-agents.readonly",
                "voice-ai-common.readonly",
                "voice-ai-common.write",
                "voice-ai-agent-goals.readonly",
                "voice-ai-agent-goals.write",
                "voice-ai-dashboard.readonly",
                "agency/launchpad.write",
                "agency/launchpad.readonly",
                "launchpad/location.write",
                "launchpad/location.readonly",
                "text-ai-agents.write",
                "text-ai-agent-goals.readonly",
                "text-ai-agent-goals.write",
                "text-ai-agent-training.write",
                "text-ai-agents-dashboard.readonly",
                "locations.create",
                "locations.delete",
                "askai.write",
                "copilot.readonly",
                "locations.export.list",
                "locations.features-limits.manage",
                "locations.pause-resume",
                "locations.agency-subaccounts.manage",
                "locations.billing.manage",
                "locations.details.manage",
                "audit-logs.readonly",
                "audit-logs.export"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "scopesAssignedToOnly": {
            "description": "Assigned Scopes allowed for users. Only scopes that have been passed will be enabled. If passed empty all the assigned scopes will be get disabled",
            "example": [
              "contacts.write",
              "campaigns.readonly"
            ],
            "items": {
              "enum": [
                "campaigns.readonly",
                "campaigns.write",
                "calendars.readonly",
                "calendars/events.write",
                "calendars/groups.write",
                "calendars.write",
                "contacts.write",
                "contacts/bulkActions.write",
                "workflows.readonly",
                "workflows.write",
                "triggers.write",
                "funnels.write",
                "forms.write",
                "surveys.write",
                "quizzes.write",
                "websites.write",
                "medias.write",
                "medias.readonly",
                "opportunities.write",
                "opportunities/leadValue.readonly",
                "opportunities/bulkActions.write",
                "pipelines.create",
                "reporting/phone.readonly",
                "reporting/adwords.readonly",
                "reporting/facebookAds.readonly",
                "reporting/attributions.readonly",
                "prospecting/auditReport.write",
                "reporting/reports.readonly",
                "reporting/agent.readonly",
                "reporting/reports.write",
                "reporting/stats.export",
                "payments.write",
                "payments/records.write",
                "payments/orders.readonly",
                "payments/orders.export",
                "payments/orders.import",
                "payments/orders.collectPayment",
                "payments/subscriptions.readonly",
                "payments/subscriptions.write",
                "payments/subscriptions.update",
                "payments/subscriptions.export",
                "payments/subscriptions.pauseResumeCancel",
                "payments/subscriptions.sharePaymentMethod",
                "payments/transactions.readonly",
                "payments/transactions.export",
                "payments/transactions.import",
                "payments/transactions.refund",
                "payments/transactions.viewReceipts",
                "payments/taxesSettings.readonly",
                "payments/settings.readonly",
                "payments/taxesSettings.updateInclusiveExclusive",
                "payments/taxesSettings.manageRates",
                "payments/taxesSettings.configureAutomatic",
                "products.readonly",
                "products.write",
                "products.delete",
                "products.duplicate",
                "products.bulkActions",
                "payments/settings.write",
                "payments/settings.configureReceipt",
                "payments/settings.configureSubscription",
                "invoices.write",
                "invoices.readonly",
                "invoices/schedule.readonly",
                "invoices/schedule.write",
                "invoices/template.readonly",
                "invoices/template.write",
                "reputation/review.write",
                "reputation/listing.write",
                "reputation/reviewsAIAgents.write",
                "reputation/gbp.write",
                "conversations.write",
                "conversations.readonly",
                "conversations/message.readonly",
                "conversations/message.write",
                "contentAI.write",
                "ai-studio.readonly",
                "ai-studio.write",
                "dashboard/stats.readonly",
                "locations/tags.write",
                "locations/tags.readonly",
                "marketing.write",
                "eliza.write",
                "settings.write",
                "socialplanner/post.write",
                "socialplanner/account.readonly",
                "socialplanner/account.write",
                "socialplanner/category.readonly",
                "socialplanner/category.write",
                "socialplanner/csv.readonly",
                "socialplanner/csv.write",
                "socialplanner/group.write",
                "socialplanner/hashtag.readonly",
                "socialplanner/hashtag.write",
                "socialplanner/oauth.readonly",
                "socialplanner/oauth.write",
                "socialplanner/post.readonly",
                "socialplanner/recurring.readonly",
                "socialplanner/recurring.write",
                "socialplanner/review.readonly",
                "socialplanner/review.write",
                "socialplanner/rss.readonly",
                "socialplanner/rss.write",
                "socialplanner/search.readonly",
                "socialplanner/setting.readonly",
                "socialplanner/setting.write",
                "socialplanner/stat.readonly",
                "socialplanner/tag.readonly",
                "socialplanner/tag.write",
                "socialplanner/filters.readonly",
                "socialplanner/medias.readonly",
                "socialplanner/medias.write",
                "socialplanner/watermarks.readonly",
                "socialplanner/watermarks.write",
                "socialplanner/metatag.readonly",
                "socialplanner/facebook.readonly",
                "socialplanner/linkedin.readonly",
                "socialplanner/twitter.readonly",
                "socialplanner/notification.readonly",
                "socialplanner/notification.write",
                "socialplanner/snapshot.readonly",
                "socialplanner/snapshot.write",
                "marketing/affiliate.write",
                "blogs.write",
                "membership.write",
                "communities.write",
                "gokollab.write",
                "certificates.write",
                "certificates.readonly",
                "adPublishing.write",
                "adPublishing.readonly",
                "prospecting.write",
                "prospecting.readonly",
                "prospecting/reports.readonly",
                "private-integration-location.readonly",
                "private-integration-location.write",
                "private-integration-company.readonly",
                "private-integration-company.write",
                "native-integrations.readonly",
                "native-integrations.write",
                "wordpress.write",
                "wordpress.read",
                "custom-menu-link.write",
                "qrcodes.write",
                "users/team-management.write",
                "users/team-management.readonly",
                "loginas.write",
                "users-sso-login-management.write",
                "users-sso-login-management.readonly",
                "sso-config.write",
                "snapshots/api.readonly",
                "snapshots/api.create",
                "snapshots/api.edit",
                "snapshots/api.push",
                "snapshots/api.refresh",
                "snapshots/api.share",
                "snapshots/api.delete",
                "internaltools.location-transfer.write",
                "internaltools.location-transfer.readonly",
                "affiliateportal.write",
                "affiliateportal.readonly",
                "companies.write",
                "internaltools.billing.write",
                "internaltools.billing.readonly",
                "internaltools.billing-common.readonly",
                "internaltools.billing-common.write",
                "voice-ai-agents.write",
                "voice-ai-agents.readonly",
                "voice-ai-common.readonly",
                "voice-ai-common.write",
                "voice-ai-agent-goals.readonly",
                "voice-ai-agent-goals.write",
                "voice-ai-dashboard.readonly",
                "agency/launchpad.write",
                "agency/launchpad.readonly",
                "launchpad/location.write",
                "launchpad/location.readonly",
                "text-ai-agents.write",
                "text-ai-agent-goals.readonly",
                "text-ai-agent-goals.write",
                "text-ai-agent-training.write",
                "text-ai-agents-dashboard.readonly",
                "locations.create",
                "locations.delete",
                "askai.write",
                "copilot.readonly",
                "locations.export.list",
                "locations.features-limits.manage",
                "locations.pause-resume",
                "locations.agency-subaccounts.manage",
                "locations.billing.manage",
                "locations.details.manage",
                "audit-logs.readonly",
                "audit-logs.export"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "twilioPhone": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Per-location inbound Twilio number in E.164 format, keyed by location id (Call and Voicemail Inbound Number for direct Twilio, not LC Phone). Replacement semantics: if you send twilioPhone in the request body, the stored map is replaced entirely with this object (not merged). Any location id omitted from the object is removed from the saved map. Omit the twilioPhone property entirely to leave existing numbers unchanged. Send an empty object {} to clear all per-location numbers. To clear a single location only, set that location id to an empty string \"\".",
            "example": {
              "C2QujeCh8ZnC7al2InWR": "+18832327657",
              "M2QrtfVt8ZnC7cv2InDL": "+18832327657"
            },
            "type": "object"
          },
          "type": {
            "description": "User account type (account for sub-account users, agency for agency-level users)",
            "example": "account",
            "type": "string"
          }
        },
        "required": [
          "companyId",
          "email",
          "password",
          "type",
          "role",
          "locationIds",
          "firstName",
          "lastName"
        ],
        "type": "object"
      },
      "CreateWhiteLabelIntegrationProviderDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "description": {
            "description": "A brief description providing additional information about the integration provider.",
            "example": "Description",
            "type": "string"
          },
          "imageUrl": {
            "description": "The URL to an image representing the integration provider. The imageUrl should start with \"https://\" and ensure that this URL is publicly accessible.",
            "example": "https://example.com/image.jpg",
            "type": "string"
          },
          "provider": {
            "description": "The type of payment provider associated with the integration provider.",
            "enum": [
              "authorize-net",
              "nmi"
            ],
            "example": {
              "AUTHORIZE_NET": "authorize-net",
              "NMI": "nmi"
            },
            "type": "string"
          },
          "title": {
            "description": "The title or name of the integration provider.",
            "example": "Title",
            "type": "string"
          },
          "uniqueName": {
            "description": "A unique name given to the integration provider, uniqueName must start and end with a character. Only lowercase characters and hyphens (-) are supported",
            "example": "easy-direct",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "uniqueName",
          "title",
          "provider",
          "description",
          "imageUrl"
        ],
        "type": "object"
      },
      "CreateWhitelabelIntegrationResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier of the integration provider.",
            "example": "65cb47dda50f4f13ced4b870",
            "type": "string"
          },
          "altId": {
            "description": "The altId / locationId of the integration provider.",
            "example": "Z4Bxl8J4SaPEPLq9IQ8g",
            "type": "string"
          },
          "altType": {
            "description": "The altType of the integration provider.",
            "example": "location",
            "type": "string"
          },
          "createdAt": {
            "description": "The timestamp when the integration provider was created.",
            "example": "2024-02-13T10:43:41.026Z",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "A brief description providing additional information about the integration provider.",
            "example": "Lorem",
            "type": "string"
          },
          "imageUrl": {
            "description": "The URL to an image representing the integration provider.",
            "example": "https://example.com/assets/pmd/img/payments/nmi-logo.webp",
            "type": "string"
          },
          "provider": {
            "description": "The payment provider associated with the integration provider.",
            "example": "nmi",
            "type": "string"
          },
          "route": {
            "description": "The route name associated with the integration provider.",
            "example": "epd",
            "type": "string"
          },
          "title": {
            "description": "The title or name of the integration provider.",
            "example": "Example",
            "type": "string"
          },
          "updatedAt": {
            "description": "The timestamp when the integration provider was last updated.",
            "example": "2024-02-13T10:43:41.026Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "title",
          "route",
          "provider",
          "description",
          "imageUrl",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "CreateWidgetDTO": {
        "properties": {
          "chatType": {
            "description": "Chat type",
            "enum": [
              "liveChat",
              "emailChat"
            ],
            "example": "emailChat",
            "type": "string"
          },
          "default": {
            "description": "Default",
            "example": false,
            "type": "boolean"
          },
          "deleted": {
            "description": "Deleted",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "oHJiAh0wDG3BzmzACVD6",
            "type": "string"
          },
          "name": {
            "description": "Name",
            "example": "Chat Widget 1",
            "type": "string"
          },
          "settings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WidgetSettingsDTO"
              }
            ],
            "description": "Settings",
            "example": {
              "chatType": "emailChat"
            }
          },
          "version": {
            "description": "Version",
            "example": 2,
            "type": "number"
          }
        },
        "required": [
          "version",
          "chatType",
          "name",
          "locationId"
        ],
        "type": "object"
      },
      "CreateWorkflowDto": {
        "properties": {
          "eventStartTime": {
            "description": "Start time of the workflow event (ISO 8601 format)",
            "example": "2021-06-23T03:30:00+01:00",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CreatedByResponseDTO": {
        "properties": {
          "channel": {
            "description": "Creation Channel",
            "example": "WEB_USER",
            "type": "string"
          },
          "createdAt": {
            "description": "Created At",
            "example": "2025-01-02T09:35:39.032Z",
            "type": "string"
          },
          "source": {
            "description": "From where the record was created",
            "example": "PUBLIC_API",
            "type": "string"
          },
          "sourceId": {
            "description": "User/Resource Id",
            "example": "26653146-ec82-435d-8a99-84ecdb7fde13",
            "type": "string"
          }
        },
        "required": [
          "channel",
          "createdAt",
          "source",
          "sourceId"
        ],
        "type": "object"
      },
      "CreatedCategoryQueueDTO": {
        "properties": {
          "_id": {
            "description": "Queue ID",
            "example": "686ebf10c78c233e45c28d66",
            "type": "string"
          },
          "categoryId": {
            "description": "Category ID",
            "example": "683702938b19583ce320e5eb",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2025-07-09T19:12:16.366Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "ID of the user who created the queue",
            "example": "uefV3MmLHs2sjJr2KfmL",
            "type": "string"
          },
          "enableFuturePosts": {
            "description": "Enable posting future content",
            "example": true,
            "type": "boolean"
          },
          "lastScheduledTime": {
            "description": "Timestamp of the last scheduled post. Always null for a new queue.",
            "example": null,
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "Qp26qppJgfrTZis7jsBy",
            "type": "string"
          },
          "prioritizeNewContent": {
            "description": "Prioritize new content over older content",
            "example": true,
            "type": "boolean"
          },
          "skipDateTime": {
            "description": "Dates/times to skip posting. Always empty for a new queue.",
            "example": [],
            "items": {
              "format": "date-time",
              "type": "string"
            },
            "type": "array"
          },
          "startDate": {
            "description": "Start date of the queue",
            "example": "2025-07-09T19:12:16.363Z",
            "format": "date-time",
            "type": "string"
          },
          "status": {
            "description": "Status of the queue. Always \"draft\" for a new queue.",
            "enum": [
              "active",
              "paused",
              "draft"
            ],
            "example": "draft",
            "type": "string"
          },
          "timeSlots": {
            "description": "Time slots for scheduling posts",
            "items": {
              "$ref": "#/components/schemas/CreatedTimeSlotDTO"
            },
            "type": "array"
          },
          "totalPosts": {
            "description": "Total number of posts in the queue. Always 0 for a new queue.",
            "example": 0,
            "type": "number"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2025-07-09T19:12:16.366Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CreatedOrUpdatedBy": {
        "properties": {
          "source": {
            "description": "The source of the appointment",
            "type": "string"
          },
          "userId": {
            "description": "The ID of the user who created or updated the appointment",
            "type": "string"
          }
        },
        "required": [
          "source"
        ],
        "type": "object"
      },
      "CreatedQueueItemWithVariationsDTO": {
        "properties": {
          "_id": {
            "description": "The unique identifier of the queue item.",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-12-09T13:41:21.385Z",
            "type": "string"
          },
          "currentVariation": {
            "description": "The index of the current variation being used for this post",
            "example": 0,
            "type": "number"
          },
          "deleted": {
            "description": "Indicates if the item is deleted",
            "example": false,
            "type": "boolean"
          },
          "errors": {
            "description": "List of errors associated with the queue item. Possible values: INVALID_USER_ID, PIXABAY_MEDIA.",
            "example": [
              "INVALID_USER_ID",
              "PIXABAY_MEDIA"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "lastScheduledTime": {
            "description": "Timestamp of the last scheduled post. Always null for a new queue.",
            "example": null,
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "fvg1TXIiVxGcdOaL0riG",
            "type": "string"
          },
          "modifiedPostPayload": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetModifiedPayloadFormattedSchema"
              }
            ],
            "description": "The formatted post data modified from original post."
          },
          "order": {
            "description": "The order of the item in the queue.",
            "example": 1000,
            "type": "number"
          },
          "parentPostId": {
            "description": "The ID of the parent post before splitting to individual social posts.",
            "example": "60af88475f1b2c001f5d5f4e",
            "type": "string"
          },
          "postId": {
            "description": "The ID of the original post, if any.",
            "example": "60af88475f1b2c001f5d5f4d",
            "type": "string"
          },
          "primaryImage": {
            "description": "The primary image URL for the post.",
            "example": "https://example.com/images/post-image.png",
            "type": "string"
          },
          "queueId": {
            "description": "The ID of the queue this post belongs to",
            "example": "60af88475f1b2c001f5d5f4a",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-12-09T13:41:21.385Z",
            "type": "string"
          },
          "variations": {
            "description": "A list of content variations for the post.",
            "items": {
              "$ref": "#/components/schemas/VariationDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CreatedTimeSlotDTO": {
        "properties": {
          "_id": {
            "description": "Time slot ID",
            "example": "686ebf10c78c23d665c28d67",
            "type": "string"
          },
          "dayOfWeek": {
            "description": "Day of the week (0=Sunday, 1=Monday, ...)",
            "example": 0,
            "type": "number"
          },
          "time": {
            "description": "Time of the day (HH:mm format)",
            "example": "00:00",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CreationLocaleDTO": {
        "properties": {
          "country": {
            "description": "Country code",
            "example": "US",
            "type": "string"
          },
          "language": {
            "description": "Language code",
            "example": "en",
            "type": "string"
          }
        },
        "required": [
          "country",
          "language"
        ],
        "type": "object"
      },
      "CsvPostStatusResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Updated Successfully",
            "type": "string"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "CsvResponse": {
        "properties": {
          "accountIds": {
            "description": "Account Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "applyWatermark": {
            "description": "Apply watermark flag",
            "example": false,
            "type": "boolean"
          },
          "approver": {
            "description": "Approver User Id",
            "example": "FSeSDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "count": {
            "description": "Number of posts in the CSV",
            "example": 5,
            "type": "number"
          },
          "createdBy": {
            "description": "User Id who created the CSV import",
            "example": "AccountId_SDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "csvFileType": {
            "description": "CSV file type",
            "enum": [
              "basic",
              "advance"
            ],
            "example": "basic",
            "type": "string"
          },
          "file": {
            "description": "File path of the CSV",
            "example": "omaDY3RbWtTP511e/social-import/d23d68c2-82c0-1db6e2.csv",
            "type": "string"
          },
          "fileName": {
            "description": "Name of the CSV file",
            "example": "sample.csv",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "mediaOptimization": {
            "description": "Media optimization flag",
            "example": true,
            "type": "boolean"
          },
          "originId": {
            "description": "Origin Id for tracking source",
            "example": "FSeSDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "status": {
            "description": "CSV import status",
            "enum": [
              "pending",
              "in_progress",
              "completed",
              "failed",
              "in_review",
              "importing",
              "deleted"
            ],
            "example": "completed",
            "type": "string"
          },
          "traceId": {
            "description": "Trace Id for debugging",
            "example": "FSeSDsdfdf45Dgs4w3ssss",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date Updated",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CustomActionApiDetailsDTO": {
        "properties": {
          "authenticationRequired": {
            "description": "Whether authentication is required",
            "example": true,
            "type": "boolean"
          },
          "authenticationValue": {
            "description": "Authentication token or API key (required if authenticationRequired is true)",
            "example": "token123",
            "type": "string"
          },
          "headers": {
            "description": "HTTP headers to include",
            "items": {
              "$ref": "#/components/schemas/CustomActionHeaderDTO"
            },
            "type": "array"
          },
          "method": {
            "description": "HTTP method",
            "enum": [
              "POST",
              "GET"
            ],
            "example": "GET",
            "type": "string"
          },
          "parameters": {
            "description": "API parameters to send",
            "items": {
              "$ref": "#/components/schemas/CustomActionParameterDTO"
            },
            "type": "array"
          },
          "url": {
            "description": "API endpoint URL",
            "example": "https://api.example.com/orders",
            "type": "string"
          }
        },
        "required": [
          "url",
          "method"
        ],
        "type": "object"
      },
      "CustomActionHeaderDTO": {
        "properties": {
          "key": {
            "description": "HTTP header name",
            "example": "id",
            "type": "string"
          },
          "value": {
            "description": "HTTP header value",
            "example": "1234567890",
            "type": "string"
          }
        },
        "required": [
          "key",
          "value"
        ],
        "type": "object"
      },
      "CustomActionParameterDTO": {
        "properties": {
          "description": {
            "description": "Parameter description",
            "example": "Order ID to look up",
            "type": "string"
          },
          "example": {
            "description": "Example parameter value",
            "example": "ORD-12345",
            "type": "string"
          },
          "name": {
            "description": "Parameter name",
            "example": "orderId",
            "type": "string"
          },
          "type": {
            "description": "Parameter type",
            "example": "string",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "CustomActionParameters": {
        "properties": {
          "apiDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomActionApiDetailsDTO"
              }
            ],
            "description": "API endpoint configuration"
          },
          "selectedPaths": {
            "description": "Selected response paths to extract from API response. Required: at least 1 value if the method is GET. Should be empty if the method is POST.",
            "example": [
              "data.orderId",
              "status"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "triggerMessage": {
            "description": "Message to tell the caller",
            "example": "Let me check that order status",
            "type": "string"
          },
          "triggerPrompt": {
            "description": "When to call the custom API",
            "example": "When caller provides order number",
            "type": "string"
          }
        },
        "required": [
          "triggerPrompt",
          "triggerMessage",
          "apiDetails"
        ],
        "type": "object"
      },
      "CustomDisclaimer": {
        "properties": {
          "body": {
            "description": "Disclaimer body text",
            "example": "By submitting...",
            "type": "string"
          },
          "checkboxes": {
            "description": "Consent checkboxes the user must agree to before submitting the form",
            "example": [
              {
                "isRequired": true,
                "key": "terms_checkbox",
                "text": "I agree to the Terms & Conditions"
              },
              {
                "isRequired": false,
                "key": "marketing_optin",
                "text": "I would like to receive marketing emails"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/CustomDisclaimerCheckbox"
            },
            "type": "array"
          },
          "title": {
            "description": "Disclaimer title",
            "example": "Terms & Conditions",
            "type": "string"
          }
        },
        "required": [
          "title",
          "body"
        ],
        "type": "object"
      },
      "CustomDisclaimerCheckbox": {
        "properties": {
          "isRequired": {
            "description": "Checkbox required flag",
            "example": true,
            "type": "boolean"
          },
          "key": {
            "description": "Checkbox unique key",
            "example": "terms_checkbox",
            "type": "string"
          },
          "text": {
            "description": "Checkbox text label",
            "example": "I agree to terms",
            "type": "string"
          }
        },
        "required": [
          "isRequired",
          "text",
          "key"
        ],
        "type": "object"
      },
      "CustomFieldDeleteSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "CustomFieldResponseSchema": {
        "properties": {
          "fieldValue": {
            "description": "The value of the custom field",
            "example": "custom field value",
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "object"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              {
                "items": {
                  "type": "object"
                },
                "type": "array"
              }
            ]
          },
          "id": {
            "description": "Unique identifier of the custom field",
            "example": "MgobCB14YMVKuE4Ka8p1",
            "type": "string"
          }
        },
        "required": [
          "id",
          "fieldValue"
        ],
        "type": "object"
      },
      "CustomFieldsCreateCustomFieldsDTO": {
        "properties": {
          "acceptedFormats": {
            "description": "Allowed file formats for uploads. Options include: .pdf, .docx, .doc, .jpg, .jpeg, .png, .gif, .csv, .xlsx, .xls, all",
            "enum": [
              ".pdf",
              ".docx",
              ".doc",
              ".jpg",
              ".jpeg",
              ".png",
              ".gif",
              ".csv",
              ".xlsx",
              ".xls",
              "all"
            ],
            "type": "string"
          },
          "allowCustomOption": {
            "description": "Determines if users can add a custom option value different from the predefined options in records for RADIO type fields. A custom value added in one record does not automatically become an option and will not appear as an option for other records.",
            "example": true,
            "type": "boolean"
          },
          "dataType": {
            "description": "Type of field that you are trying to create",
            "enum": [
              "TEXT",
              "LARGE_TEXT",
              "NUMERICAL",
              "PHONE",
              "MONETORY",
              "CHECKBOX",
              "SINGLE_OPTIONS",
              "MULTIPLE_OPTIONS",
              "DATE",
              "TEXTBOX_LIST",
              "FILE_UPLOAD",
              "RADIO",
              "EMAIL"
            ],
            "type": "string"
          },
          "description": {
            "description": "Description of the field",
            "type": "string"
          },
          "fieldKey": {
            "description": "Field key. For Custom Object it's formatted as \"custom_object.{objectKey}.{fieldKey}\". \"custom_object\" is a fixed prefix, \"{objectKey}\" is your custom object's identifier, and \"{fieldKey}\" is the unique field name within that object. Example: \"custom_object.pet.name\" for a \"name\" field in a \"pet\" custom object.",
            "example": "custom_object.pet.name",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "maxFileLimit": {
            "description": "Maximum file limit for uploads. Applicable only for fields with a data type of FILE_UPLOAD.",
            "example": 2,
            "type": "number"
          },
          "name": {
            "description": "Field name",
            "example": "Name",
            "type": "string"
          },
          "objectKey": {
            "description": "The key for your custom object. This key uniquely identifies the custom object. Example: \"custom_object.pet\" for a custom object related to pets.",
            "example": "custom_object.pet",
            "type": "string"
          },
          "options": {
            "description": "Options for the field (Optional, valid only for SINGLE_OPTIONS, MULTIPLE_OPTIONS, RADIO, CHECKBOX, TEXTBOX_LIST type)",
            "items": {
              "$ref": "#/components/schemas/OptionDTO"
            },
            "type": "array"
          },
          "parentId": {
            "description": "ID of the parent folder",
            "type": "string"
          },
          "placeholder": {
            "description": "Placeholder text for the field",
            "type": "string"
          },
          "showInForms": {
            "description": "Whether the field should be shown in forms",
            "type": "boolean"
          }
        },
        "required": [
          "locationId",
          "showInForms",
          "dataType",
          "fieldKey",
          "objectKey",
          "parentId"
        ],
        "type": "object"
      },
      "CustomFieldsCustomFieldSuccessfulResponseDto": {
        "properties": {
          "field": {
            "$ref": "#/components/schemas/ICustomField"
          }
        },
        "type": "object"
      },
      "CustomFieldsListSuccessfulResponseDto": {
        "properties": {
          "customFields": {
            "items": {
              "$ref": "#/components/schemas/LocationsCustomFieldSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CustomFieldsResponseDTO": {
        "properties": {
          "fields": {
            "description": "Custom Fields for the object.",
            "items": {
              "$ref": "#/components/schemas/ICustomField"
            },
            "type": "array"
          },
          "folders": {
            "description": "Custom Fields folder for the object.",
            "items": {
              "$ref": "#/components/schemas/ICustomField"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CustomFieldsUpdateCustomFieldsDTO": {
        "properties": {
          "acceptedFormats": {
            "description": "Allowed file formats for uploads. Options include: .pdf, .docx, .doc, .jpg, .jpeg, .png, .gif, .csv, .xlsx, .xls, all",
            "enum": [
              ".pdf",
              ".docx",
              ".doc",
              ".jpg",
              ".jpeg",
              ".png",
              ".gif",
              ".csv",
              ".xlsx",
              ".xls",
              "all"
            ],
            "type": "string"
          },
          "description": {
            "description": "Description of the field",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "maxFileLimit": {
            "description": "Maximum file limit for uploads. Applicable only for fields with a data type of FILE_UPLOAD.",
            "example": 2,
            "type": "number"
          },
          "name": {
            "description": "Field name",
            "example": "Name",
            "type": "string"
          },
          "options": {
            "description": "Options for the field. Important: Providing options will completely replace the existing options array. You must include all existing options alongside any new options you wish to add. Removal of options is not supported through this update. Applicable only for SINGLE_OPTIONS, MULTIPLE_OPTIONS, RADIO, CHECKBOX, TEXTBOX_LIST types.",
            "items": {
              "$ref": "#/components/schemas/OptionDTO"
            },
            "type": "array"
          },
          "placeholder": {
            "description": "Placeholder text for the field",
            "type": "string"
          },
          "showInForms": {
            "description": "Whether the field should be shown in forms",
            "type": "boolean"
          }
        },
        "required": [
          "locationId",
          "showInForms"
        ],
        "type": "object"
      },
      "CustomFolderDeleteResponseDto": {
        "properties": {
          "id": {
            "example": "3v34PM428h8vShlRW1KT",
            "type": "string"
          },
          "key": {
            "example": "custom_object.pet.name",
            "type": "string"
          },
          "succeded": {
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "succeded",
          "id",
          "key"
        ],
        "type": "object"
      },
      "CustomMenuSchema": {
        "properties": {
          "allowCamera": {
            "description": "Indicates if camera access is allowed for this menu",
            "example": false,
            "type": "boolean"
          },
          "allowMicrophone": {
            "description": "Indicates if microphone access is allowed for this menu",
            "example": false,
            "type": "boolean"
          },
          "icon": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IconSchemaOptional"
              }
            ],
            "description": "Icon information for the menu item"
          },
          "id": {
            "description": "Unique identifier for the custom menu",
            "example": "12345",
            "type": "string"
          },
          "locations": {
            "description": "List of sub-account IDs where the menu should be shown. This list is applicable only when showOnLocation is true and showToAllLocations is false",
            "example": [
              "gfWreTIHL8pDbggBb7af",
              "67WreTIHL8pDbggBb7ty"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "openMode": {
            "description": "Mode for opening the menu link",
            "enum": [
              "iframe",
              "new_tab",
              "current_tab"
            ],
            "type": "string"
          },
          "order": {
            "description": "Order of the custom menu",
            "example": 1,
            "type": "number"
          },
          "showOnCompany": {
            "description": "Filter to show only agency-level menu links. When omitted, fetches both agency and sub-account menu links. Ignored if locationId is provided",
            "example": true,
            "type": "boolean"
          },
          "showOnLocation": {
            "description": "Whether the menu must be displayed for sub-accounts level",
            "example": true,
            "type": "boolean"
          },
          "showToAllLocations": {
            "description": "Whether the menu must be displayed to all sub-accounts",
            "example": true,
            "type": "boolean"
          },
          "title": {
            "description": "Title of the custom menu",
            "example": "Dashboard",
            "type": "string"
          },
          "url": {
            "description": "URL of the custom menu",
            "example": "/dashboard",
            "type": "string"
          },
          "userRole": {
            "description": "Which user-roles should the menu be accessible to?",
            "enum": [
              "all",
              "admin",
              "user"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "CustomNotificationDto": {
        "properties": {
          "customerAutoPaymentAmountChanged": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "customerAutoPaymentFailure": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "customerAutoPaymentInfo": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "customerAutoPaymentSuccess": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "customerPaymentFailure": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "customerPaymentSuccess": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "customerSendEstimate": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "customerSendInvoice": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamAutoPaymentFailure": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamAutoPaymentSkip": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamAutoPaymentSuccess": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamEstimateAccepted": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamEstimateDeclined": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamPaymentFailure": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamPaymentSuccess": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          },
          "teamRecurringSendInvoiceFailed": {
            "$ref": "#/components/schemas/CustomNotificationItemDto"
          }
        },
        "required": [
          "customerSendInvoice",
          "teamPaymentSuccess",
          "customerPaymentSuccess",
          "teamAutoPaymentSuccess",
          "customerAutoPaymentSuccess",
          "teamPaymentFailure",
          "customerPaymentFailure",
          "teamAutoPaymentFailure",
          "customerAutoPaymentFailure",
          "customerAutoPaymentInfo",
          "customerAutoPaymentAmountChanged",
          "teamAutoPaymentSkip",
          "teamRecurringSendInvoiceFailed",
          "customerSendEstimate",
          "teamEstimateAccepted",
          "teamEstimateDeclined"
        ],
        "type": "object"
      },
      "CustomNotificationItemDto": {
        "properties": {
          "defaultEmailTemplateId": {
            "description": "Default email TemplateId to be used for sending via email",
            "example": "dhwjqi2899012990w2u",
            "type": "string"
          },
          "emailSubject": {
            "description": "Subject of email which is sent out",
            "example": "Thank you for purchasing",
            "type": "string"
          },
          "emailTemplate": {
            "description": "Template to be used for sending email",
            "type": "string"
          },
          "enabled": {
            "description": "Flag indicating if the notification is enabled or not",
            "type": "boolean"
          },
          "fromEmail": {
            "description": "Email address to be used for sending email",
            "example": "alex@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Name to be used while sending email",
            "example": "Alex",
            "type": "string"
          },
          "smsTemplate": {
            "description": "Template to be used for sending sms",
            "type": "string"
          }
        },
        "required": [
          "enabled",
          "emailTemplate",
          "smsTemplate"
        ],
        "type": "object"
      },
      "CustomObjectByIdResponseDTO": {
        "properties": {
          "cache": {
            "description": "Is the response served from cache",
            "example": true,
            "type": "boolean"
          },
          "fields": {
            "items": {
              "$ref": "#/components/schemas/ICustomField"
            },
            "type": "array"
          },
          "object": {
            "$ref": "#/components/schemas/ICustomObjectSchema"
          }
        },
        "required": [
          "cache"
        ],
        "type": "object"
      },
      "CustomObjectDisplayPropertyDetails": {
        "properties": {
          "dataType": {
            "description": "Primary property data Type (it can either be TEXT or NUMERICAL type)",
            "example": "TEXT",
            "type": "string"
          },
          "key": {
            "description": "key that would be used to refer the custom field internally (lowercase + underscore_separated). 'custom_objects.{{objectKey}}' would be added as prefix by default is not passed",
            "example": "custom_objects.pet.name",
            "type": "string"
          },
          "name": {
            "description": "Name of the Primary property name which will be displayed on the record page",
            "example": "Pet name",
            "type": "string"
          }
        },
        "required": [
          "key",
          "name",
          "dataType"
        ],
        "type": "object"
      },
      "CustomObjectLabelDto": {
        "properties": {
          "plural": {
            "description": "Plural name of the custom object",
            "example": "Pets",
            "type": "string"
          },
          "singular": {
            "description": "Singular name of the custom object",
            "example": "Pet",
            "type": "string"
          }
        },
        "required": [
          "singular",
          "plural"
        ],
        "type": "object"
      },
      "CustomObjectLabelUpdateDto": {
        "properties": {
          "plural": {
            "description": "Plural name of the custom object",
            "example": "Cars",
            "type": "string"
          },
          "singular": {
            "description": "Singular name of the custom object",
            "example": "Car",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CustomObjectListResponseDTO": {
        "properties": {
          "objects": {
            "items": {
              "$ref": "#/components/schemas/ICustomObjectSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "CustomObjectResponseDTO": {
        "properties": {
          "object": {
            "$ref": "#/components/schemas/ICustomObjectSchema"
          }
        },
        "type": "object"
      },
      "CustomProviderKeys": {
        "properties": {
          "apiKey": {
            "description": "Api-key for custom payment provider config",
            "example": "y5ZQxryRFXZHvUJZdLeXXXXX",
            "type": "string"
          },
          "publishableKey": {
            "description": "Publishable-key for custom payment provider config",
            "example": "rzp_test_zPRoVMLOa0XXXX",
            "type": "string"
          }
        },
        "required": [
          "apiKey",
          "publishableKey"
        ],
        "type": "object"
      },
      "CustomQuestionFieldDTO": {
        "properties": {
          "customQuestionText": {
            "description": "Custom question text shown to the user",
            "example": "What service are you interested in?",
            "type": "string"
          },
          "singleChoiceAnswers": {
            "description": "Answer choices for the custom question",
            "example": [
              {
                "answerTexts": [
                  "Web Design",
                  "SEO",
                  "PPC"
                ]
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "customQuestionText",
          "singleChoiceAnswers"
        ],
        "type": "object"
      },
      "CustomRRulesOptions": {
        "properties": {
          "count": {
            "description": "Max number of task executions",
            "example": 10,
            "type": "number"
          },
          "createTaskIfOverDue": {
            "description": "Create Task If Over Due",
            "example": true,
            "type": "boolean"
          },
          "dayOfMonth": {
            "description": "1, 2, 3, ..., 27, 31",
            "example": 15,
            "type": "number"
          },
          "dayOfWeek": {
            "enum": [
              "MO",
              "TU",
              "WE",
              "TH",
              "FR",
              "SA",
              "SU"
            ],
            "example": "MO",
            "type": "string"
          },
          "dueAfterSeconds": {
            "description": "Due after seconds",
            "example": 23404000,
            "type": "number"
          },
          "endDate": {
            "description": "End Date",
            "example": "2021-09-30T00:00:00.000Z",
            "type": "string"
          },
          "interval": {
            "example": 2,
            "type": "number"
          },
          "intervalType": {
            "enum": [
              "yearly",
              "monthly",
              "weekly",
              "daily",
              "hourly"
            ],
            "example": "monthly",
            "type": "string"
          },
          "monthOfYear": {
            "description": "1, 2, ....., 11, 12",
            "example": 1,
            "type": "number"
          },
          "startDate": {
            "description": "Start Date",
            "example": "2021-09-30T00:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "intervalType",
          "interval",
          "startDate",
          "dueAfterSeconds"
        ],
        "type": "object"
      },
      "CustomValueDeleteSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "CustomValueIdSuccessfulResponseDto": {
        "properties": {
          "customValue": {
            "$ref": "#/components/schemas/CustomValueSchema"
          }
        },
        "type": "object"
      },
      "CustomValueSchema": {
        "properties": {
          "fieldKey": {
            "example": "{{ custom_values.custom_field }}",
            "type": "string"
          },
          "id": {
            "example": "rWQ709Pb62syqGLceg1x",
            "type": "string"
          },
          "locationId": {
            "example": "rWQ709Pb6dasyqGLceg1x",
            "type": "string"
          },
          "name": {
            "example": "Custom Field",
            "type": "string"
          },
          "value": {
            "example": "Value",
            "type": "string"
          }
        },
        "type": "object"
      },
      "CustomValuesListSuccessfulResponseDto": {
        "properties": {
          "customValues": {
            "items": {
              "$ref": "#/components/schemas/CustomValueSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "DataExtractionActionParameters": {
        "properties": {
          "contactFieldId": {
            "description": "ID of the contact field to be updated with the extracted data",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "description": {
            "description": "Description of what data to extract",
            "example": "Caller's phone number",
            "type": "string"
          },
          "examples": {
            "description": "Example values to help Agent understand the expected format. At least one example is required, maximum 5 examples allowed.",
            "example": [
              "+1234567890",
              "+9876543210"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "overwriteExistingValue": {
            "default": false,
            "description": "Whether to overwrite existing field value if already set, default is false",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "contactFieldId",
          "description",
          "examples"
        ],
        "type": "object"
      },
      "DateSchema": {
        "properties": {
          "day": {
            "description": "Day component of the date (1-31)",
            "example": 1,
            "type": "number"
          },
          "month": {
            "description": "Month component of the date (1-12)",
            "example": 1,
            "type": "number"
          },
          "year": {
            "description": "Year component of the date",
            "example": 2022,
            "type": "number"
          }
        },
        "required": [
          "year",
          "month",
          "day"
        ],
        "type": "object"
      },
      "DefaultCollectionResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductCategories"
              }
            ],
            "description": "Collection Data"
          },
          "status": {
            "description": "Status of the operation",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "data",
          "status"
        ],
        "type": "object"
      },
      "DefaultInvoiceResponseDto": {
        "properties": {
          "_id": {
            "description": "Invoice Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amountDue": {
            "description": "Total Amount Due",
            "example": 999,
            "type": "number"
          },
          "amountPaid": {
            "description": "Amount Paid",
            "example": 0,
            "type": "number"
          },
          "automaticTaxesCalculated": {
            "description": "Is Automatic taxes calculated for the Invoice items",
            "example": true,
            "type": "boolean"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            },
            "type": "object"
          },
          "contactDetails": {
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            },
            "type": "object"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            },
            "type": "object"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "invoiceItems": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "19",
            "type": "number"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentSchedule": {
            "description": "split invoice into payment schedule summing up to full invoice amount",
            "type": "object"
          },
          "status": {
            "description": "Invoice Status",
            "enum": [
              "draft",
              "sent",
              "payment_processing",
              "paid",
              "void",
              "partially_paid"
            ],
            "example": "draft",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "amountPaid",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "invoiceNumber",
          "currency",
          "contactDetails",
          "issueDate",
          "dueDate",
          "invoiceItems",
          "total",
          "title",
          "amountDue",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "DefaultPriceResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the price.",
            "example": "655b33aa2209e60b6adb87a7",
            "type": "string"
          },
          "allowOutOfStockPurchases": {
            "description": "Continue selling when out of stock",
            "example": true,
            "type": "boolean"
          },
          "amount": {
            "description": "The amount of the price.",
            "example": 199999,
            "type": "number"
          },
          "availableQuantity": {
            "description": "Available inventory stock quantity",
            "example": 5,
            "type": "number"
          },
          "compareAtPrice": {
            "description": "The compare-at price for comparison purposes.",
            "example": 2000000,
            "type": "number"
          },
          "createdAt": {
            "description": "The creation timestamp of the price.",
            "example": "2023-11-20T10:23:38.645Z",
            "format": "date-time",
            "type": "string"
          },
          "currency": {
            "description": "The currency code for the price.",
            "example": "INR",
            "type": "string"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "membershipOffers": {
            "description": "An array of membership offers associated with the price.",
            "items": {
              "$ref": "#/components/schemas/MembershipOfferDto"
            },
            "type": "array"
          },
          "name": {
            "description": "The name of the price.",
            "example": "Red / S",
            "type": "string"
          },
          "product": {
            "description": "The unique identifier for the associated product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "recurring": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringDto"
              }
            ],
            "description": "The recurring details of the price (if type is recurring)."
          },
          "trackInventory": {
            "description": "Indicates whether inventory tracking is enabled.",
            "example": null,
            "type": "boolean"
          },
          "type": {
            "description": "The type of the price (e.g., one_time).",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the price.",
            "example": "2024-01-23T09:57:04.852Z",
            "format": "date-time",
            "type": "string"
          },
          "userId": {
            "description": "The unique identifier for the user.",
            "example": "6YAtzfzpmHAdj0e8GkKp",
            "type": "string"
          },
          "variantOptionIds": {
            "description": "An array of variant option IDs associated with the price.",
            "example": [
              "h4z7u0im2q8",
              "h3nst2ltsnn"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "name",
          "type",
          "currency",
          "amount"
        ],
        "type": "object"
      },
      "DefaultProductResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "automaticTaxCategoryId": {
            "description": "Tax category ID for Automatic taxes calculation.",
            "example": "65d71377c326ea78e1c47df5",
            "type": "string"
          },
          "availableInStore": {
            "description": "Indicates whether the product is available in-store.",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "An array of category Ids for the product",
            "example": [
              "65d71377c326ea78e1c47df5",
              "65d71377c326ea78e1c47d34"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "The creation timestamp of the product.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "product description",
            "example": "This is a really awesome product",
            "type": "string"
          },
          "image": {
            "description": "The URL for the product image.",
            "example": "https://storage.googleapis.com/ghl-test/3SwdhCsvxI8Au3KsPJt6/media/65af8d5df88bdb4b1022ee90.png",
            "type": "string"
          },
          "isTaxesEnabled": {
            "default": false,
            "description": "The field indicates whether taxes are enabled for the product or not.",
            "example": true,
            "type": "boolean"
          },
          "label": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductLabelDto"
              }
            ],
            "description": "The Product label details"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "name": {
            "description": "The name of the product.",
            "example": "Awesome Product",
            "type": "string"
          },
          "productType": {
            "description": "The type of the product (e.g., PHYSICAL).",
            "example": "PHYSICAL",
            "type": "string"
          },
          "slug": {
            "description": "The slug of the product by which the product will be navigated",
            "example": "washing-machine",
            "type": "string"
          },
          "statementDescriptor": {
            "description": "The statement descriptor for the product.",
            "example": "abcde",
            "type": "string"
          },
          "taxes": {
            "description": "An array of ids of Taxes attached to the Product. If the expand query includes tax, the taxes will be of type `ProductTaxDto`. Please refer to the `ProductTaxDto` for additional details.",
            "example": [
              "654492a4e6bef380114de15a"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "The last update timestamp of the product.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          },
          "variants": {
            "description": "An array of variants for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductVariantDto"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "locationId",
          "name",
          "productType",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "DeleteAccountResponseSchema": {
        "properties": {
          "id": {
            "description": "Id",
            "example": "65fac446d599990d1313c1dd",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          }
        },
        "type": "object"
      },
      "DeleteActionDataDTO": {
        "properties": {
          "id": {
            "description": "ID of the deleted action",
            "example": "actionId123",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "DeleteActivePostResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Current post deleted and next post scheduled successfully",
            "type": "string"
          }
        },
        "type": "object"
      },
      "DeleteAppointmentSchema": {
        "properties": {},
        "type": "object"
      },
      "DeleteAssociationsResponseDTO": {
        "properties": {
          "deleted": {
            "description": "Deletion status",
            "example": true,
            "type": "boolean"
          },
          "id": {
            "description": "Association Id",
            "example": "6d6f6e676f5f6576656e7473",
            "type": "string"
          },
          "message": {
            "example": "Association deleted successfully",
            "type": "string"
          }
        },
        "required": [
          "deleted",
          "id",
          "message"
        ],
        "type": "object"
      },
      "DeleteBrandVoicePublicV1ResponseDto": {
        "properties": {
          "deleted": {
            "description": "Whether the brand voice is deleted",
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "deleted"
        ],
        "type": "object"
      },
      "DeleteBuilderSuccesfulResponseDto": {
        "properties": {
          "ok": {
            "description": "ok",
            "example": "true",
            "type": "string"
          },
          "traceId": {
            "description": "trace id",
            "example": "0c52e980-41f6-4be7-8c4b-32332ss",
            "type": "string"
          }
        },
        "type": "object"
      },
      "DeleteBusinessResponseDto": {
        "properties": {
          "success": {
            "description": "Success value",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteCampaignPublicV2ResponseDto": {
        "properties": {
          "deleted": {
            "description": "Whether the campaign was deleted successfully",
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "0c52e980-41f6-4be7-8c4b-32332ss",
            "type": "string"
          }
        },
        "required": [
          "deleted"
        ],
        "type": "object"
      },
      "DeleteContactsSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "deprecated": true,
            "description": "Legacy misspelling of `succeeded`. Deprecated; use `succeeded`.",
            "example": true,
            "type": "boolean"
          },
          "succeeded": {
            "description": "Whether the delete operation succeeded",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DeleteConversationSuccessfulResponse": {
        "properties": {
          "success": {
            "description": "Boolean value as the API response.",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteCouponParams": {
        "properties": {
          "altId": {
            "description": "Location Id",
            "example": "BQdAwxa0ky1iK2sstLGJ",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "id": {
            "description": "Coupon Id",
            "example": "6241712be68f7a98102ba272",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "id"
        ],
        "type": "object"
      },
      "DeleteCouponResponseDto": {
        "properties": {
          "success": {
            "description": "Indicates whether the delete was successful",
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "description": "Unique identifier for tracing this API request",
            "example": "c667b18d-8f5e-44cf-a914",
            "type": "string"
          }
        },
        "required": [
          "success",
          "traceId"
        ],
        "type": "object"
      },
      "DeleteCsvResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Deleted CSV",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CSVResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "csv": {
                "count": 5,
                "fileName": "sample.csv",
                "locationId": "ve9EPM428h8vShlRW1KT",
                "status": "deleted"
              }
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "DeleteCustomMenuSuccessfulResponseDTO": {
        "properties": {
          "deletedAt": {
            "description": "Timestamp of when the deletion was performed",
            "example": "2023-09-12T15:30:45.123Z",
            "format": "date-time",
            "type": "string"
          },
          "deletedMenuId": {
            "description": "The ID of the deleted custom menu",
            "example": "12345abcde",
            "type": "string"
          },
          "message": {
            "description": "A message providing additional information about the deletion operation",
            "example": "Custom menu successfully deleted",
            "type": "string"
          },
          "success": {
            "description": "Indicates whether the custom menu was successfully deleted",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DeleteCustomProvidersConfigDto": {
        "properties": {
          "liveMode": {
            "description": "Whether the config is for test mode or live mode. true represents config is for live payments",
            "example": "true",
            "type": "boolean"
          }
        },
        "required": [
          "liveMode"
        ],
        "type": "object"
      },
      "DeleteCustomProvidersResponseSchema": {
        "properties": {
          "success": {
            "description": "Whether the custom provider config is disconnect or not. true represents config is disconnect",
            "example": "true",
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteEmployeeResponseDTO": {
        "properties": {
          "id": {
            "description": "Unique identifier of the deleted agent.",
            "example": "emp_123",
            "type": "string"
          },
          "success": {
            "description": "Indicates if the agent was deleted successfully.",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "id"
        ],
        "type": "object"
      },
      "DeleteEventSuccessfulResponseDto": {
        "properties": {
          "succeeded": {
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DeleteFaqResponseDTO": {
        "properties": {
          "success": {
            "description": "Success status of the delete operation",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteIntegrationBodyDto": {
        "properties": {
          "companyId": {
            "description": "The company id from which the application is to be uninstalled. If you pass agency token, then companyId is required. It will uninstall application from agency as well as all sub-accounts.",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "locationId": {
            "description": "The location id from which the application is to be uninstalled. If you pass location token, then locationId is required. It will uninstall application from that location only.",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "reason": {
            "description": "The reason for uninstalling the application. Reason is required if you are uninstalling the application as a developer.",
            "example": "Application is not working as expected",
            "type": "string"
          }
        },
        "type": "object"
      },
      "DeleteIntegrationResponse": {
        "properties": {
          "success": {
            "description": "The status of the uninstallation of the application",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteInvoiceResponseDto": {
        "properties": {
          "_id": {
            "description": "Invoice Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amountDue": {
            "description": "Total Amount Due",
            "example": 999,
            "type": "number"
          },
          "amountPaid": {
            "description": "Amount Paid",
            "example": 0,
            "type": "number"
          },
          "automaticTaxesCalculated": {
            "description": "Is Automatic taxes calculated for the Invoice items",
            "example": true,
            "type": "boolean"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            },
            "type": "object"
          },
          "contactDetails": {
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            },
            "type": "object"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            },
            "type": "object"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "invoiceItems": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "19",
            "type": "number"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentSchedule": {
            "description": "split invoice into payment schedule summing up to full invoice amount",
            "type": "object"
          },
          "status": {
            "description": "Invoice Status",
            "enum": [
              "draft",
              "sent",
              "payment_processing",
              "paid",
              "void",
              "partially_paid"
            ],
            "example": "draft",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "amountPaid",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "invoiceNumber",
          "currency",
          "contactDetails",
          "issueDate",
          "dueDate",
          "invoiceItems",
          "total",
          "title",
          "amountDue",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "DeleteInvoiceScheduleResponseDto": {
        "properties": {
          "success": {
            "description": "success",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteInvoiceTemplateResponseDto": {
        "properties": {
          "success": {
            "description": "success",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteKnowledgeBaseResponseDTO": {
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteLikeResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Deleted Like",
            "type": "string"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "DeleteLinksSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "deprecated": true,
            "description": "Indicates whether the link was successfully deleted (legacy field, misspelled). Use `succeeded` with x-api-version: v3.",
            "example": true,
            "type": "boolean"
          },
          "succeeded": {
            "description": "Indicates whether the link was successfully deleted.",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DeleteMediaObjectItem": {
        "properties": {
          "_id": {
            "description": "Unique identifier of the file or folder to be deleted",
            "example": "686f630df0d3166d68fbcec2",
            "type": "string"
          }
        },
        "required": [
          "_id"
        ],
        "type": "object"
      },
      "DeleteMediaObjectsBodyParams": {
        "properties": {
          "altId": {
            "description": "Location identifier",
            "example": "sx6wyHhbFdRXh302LLNR",
            "type": "string"
          },
          "altType": {
            "description": "Type of entity that owns the files",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "filesToBeDeleted": {
            "description": "Array of file objects to be deleted or trashed",
            "example": [
              {
                "_id": "686f630df0d3166d68fbcec2"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/DeleteMediaObjectItem"
            },
            "type": "array"
          },
          "status": {
            "description": "Status to set for the files (deleted or trashed)",
            "enum": [
              "deleted",
              "trashed"
            ],
            "example": "deleted",
            "type": "string"
          }
        },
        "required": [
          "filesToBeDeleted",
          "altType",
          "altId",
          "status"
        ],
        "type": "object"
      },
      "DeletePostCsvSchema": {
        "properties": {
          "_id": {
            "description": "CSV Id",
            "example": "65f92e55cc884f0d0845e447",
            "type": "string"
          },
          "applyWatermark": {
            "description": "Apply watermark flag",
            "example": false,
            "type": "boolean"
          },
          "csvFileType": {
            "description": "CSV file type",
            "enum": [
              "basic",
              "advance"
            ],
            "example": "basic",
            "type": "string"
          },
          "mediaOptimization": {
            "description": "Media optimization flag",
            "example": true,
            "type": "boolean"
          },
          "status": {
            "description": "CSV import status",
            "enum": [
              "pending",
              "in_progress",
              "completed",
              "failed",
              "in_review",
              "importing",
              "deleted"
            ],
            "example": "completed",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date Updated",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "DeletePostResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Deleted CSV Post",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DeletePostResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "csv": {
                "_id": "65f92e55cc884f0d0845e447",
                "status": "completed"
              },
              "postId": "65f92e55cc884f0d0845e447"
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "DeletePostResponseSchema": {
        "properties": {
          "csv": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DeletePostCsvSchema"
              }
            ],
            "description": "CSV Data"
          },
          "postId": {
            "description": "Post Id",
            "example": "65f92e55cc884f0d0845e447",
            "type": "string"
          }
        },
        "required": [
          "postId"
        ],
        "type": "object"
      },
      "DeletePostSuccessfulResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Deleted Post",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DeletePostSuccessfulResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "postId": "323534534435"
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "DeletePostSuccessfulResponseSchema": {
        "properties": {
          "postId": {
            "description": "Platform-specific post identifier",
            "example": "323534534435",
            "type": "string"
          }
        },
        "type": "object"
      },
      "DeletePostsDto": {
        "properties": {
          "postIds": {
            "description": "Requested Results",
            "example": [
              "662791ee3f216822d7da0c8c"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "DeletePriceResponseDto": {
        "properties": {
          "status": {
            "description": "returns true if the price is successfully deleted",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DeleteProductCollectionResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DeleteProductResponseDto": {
        "properties": {
          "status": {
            "description": "returns true if the product is successfully deleted",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DeleteProductReviewResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DeletePublicAgentResponseDTO": {
        "properties": {
          "agentId": {
            "description": "Deleted agent ID",
            "example": "p1q2r3s4t5u6v7w8x9y0z1a2",
            "type": "string"
          },
          "message": {
            "description": "Response message",
            "example": "Agent deleted successfully",
            "type": "string"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message"
        ],
        "type": "object"
      },
      "DeleteRecurringTaskResponseDTO": {
        "properties": {
          "id": {
            "description": "Recurring Task Id",
            "example": "sx6wyHhbFdRXh302Lunr",
            "type": "string"
          },
          "success": {
            "description": "Success",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "success"
        ],
        "type": "object"
      },
      "DeleteRedirectResponseDTO": {
        "properties": {
          "data": {
            "description": "Status of the delete operation",
            "example": {
              "status": "ok"
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "DeleteServiceBookingResponseDTO": {
        "properties": {
          "message": {
            "description": "Response message",
            "example": "Service booking deleted successfully",
            "type": "string"
          },
          "success": {
            "description": "Indicates if the deletion was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message"
        ],
        "type": "object"
      },
      "DeleteServiceLocationResponseDTO": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Service deleted successfully",
            "type": "string"
          },
          "success": {
            "description": "Success",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteServiceResponseDTO": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Service deleted successfully",
            "type": "string"
          },
          "success": {
            "description": "Success",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DeleteShippingCarrierResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DeleteShippingRateResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DeleteShippingZoneResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DeleteTaskSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "deprecated": true,
            "description": "Legacy misspelling of `succeeded`. Deprecated; use `succeeded`.",
            "example": true,
            "type": "boolean"
          },
          "succeeded": {
            "description": "Whether the task was successfully deleted",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DeleteTemplatePublicV2ResponseDto": {
        "properties": {
          "deleted": {
            "description": "Whether the template was deleted successfully",
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "0c52e980-41f6-4be7-8c4b-32332ss",
            "type": "string"
          }
        },
        "required": [
          "deleted"
        ],
        "type": "object"
      },
      "DeleteUpdateOpportunitySuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "deprecated": true,
            "description": "Indicates whether the operation was successful. Deprecated — use `success` instead.",
            "example": true,
            "type": "boolean"
          },
          "success": {
            "description": "Indicates whether the operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DeleteUserSuccessfulResponseV3Dto": {
        "properties": {
          "message": {
            "description": "Message describing the result of the deletion request",
            "example": "Queued deleting user with e-mail john@example.com and name John Deo. Will take effect in a few minutes.",
            "type": "string"
          },
          "succeeded": {
            "description": "Indicates whether the user deletion was queued successfully",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "DeleteWebsiteUrlRequestDTO": {
        "properties": {
          "knowledgeBaseId": {
            "description": "knowledge base ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "locationId": {
            "description": "location ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "urlIds": {
            "description": "List of trained urls ids ( fetched from the Get all trained page links by knowledge base endpoint)",
            "example": "[tDtDnQdgm2LXpyiqYvZ6]",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "knowledgeBaseId",
          "locationId",
          "urlIds"
        ],
        "type": "object"
      },
      "DeleteWebsiteUrlResponseDTO": {
        "properties": {
          "success": {
            "description": "Indicates if the operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DiscardEditSessionDTO": {
        "properties": {
          "keepInDraft": {
            "default": false,
            "description": "If true, keeps the queue in DRAFT state after saving instead of automatically activating it. Only applicable when the queue is currently in DRAFT status.",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "sessionId"
        ],
        "type": "object"
      },
      "DiscardEditSessionResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Edit session discarded successfully",
            "type": "string"
          }
        },
        "type": "object"
      },
      "DisconnectCustomProvidersResponseSchema": {
        "properties": {
          "success": {
            "description": "Whether the custom provider config is disconnect or not. true represents config is disconnect",
            "example": "true",
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "DiscoverWebsiteDataDTO": {
        "properties": {
          "operationId": {
            "description": "Operation ID for tracking the discovery process",
            "example": "688e410c8a18870ecf4d13bb",
            "type": "string"
          },
          "status": {
            "description": "Current status of the website discovery operation",
            "enum": [
              "Pending",
              "Processing",
              "Successful",
              "Failed",
              "Existing",
              "Restricted",
              "Cancelled",
              "Aborted",
              "Training"
            ],
            "example": "Processing",
            "type": "string"
          },
          "url": {
            "description": "The URL being discovered/crawled",
            "example": "https://developer.mozilla.org/en-US/blog/",
            "type": "string"
          }
        },
        "required": [
          "operationId",
          "status",
          "url"
        ],
        "type": "object"
      },
      "DiscoverWebsiteRequestDTO": {
        "properties": {
          "knowledgeBaseId": {
            "description": "knowledge base ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "option": {
            "description": "Mode as string",
            "enum": [
              "Exact",
              "Path",
              "Domain"
            ],
            "example": "Exact",
            "type": "string"
          },
          "url": {
            "description": "Website URL as string",
            "example": "https://kubernetes.io/tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "url",
          "option",
          "knowledgeBaseId"
        ],
        "type": "object"
      },
      "DiscoverWebsiteResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DiscoverWebsiteDataDTO"
              }
            ],
            "description": "Data containing operation details"
          },
          "success": {
            "description": "Indicates if the operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "data"
        ],
        "type": "object"
      },
      "DndSettingSchema": {
        "properties": {
          "code": {
            "description": "DND code or reason",
            "example": "OPTED_OUT",
            "type": "string"
          },
          "message": {
            "description": "Custom message associated with the DND setting",
            "example": "Do not contact via this channel",
            "type": "string"
          },
          "status": {
            "description": "Do Not Disturb status for this channel",
            "enum": [
              "active",
              "inactive",
              "permanent"
            ],
            "example": "active",
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "DndSettingsSchemaV3": {
        "properties": {
          "call": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingSchema"
              }
            ],
            "description": "DND settings for phone calls",
            "example": {
              "code": "all",
              "message": "Do not call",
              "status": "active"
            }
          },
          "email": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingSchema"
              }
            ],
            "description": "DND settings for email",
            "example": {
              "code": "all",
              "message": "Do not email",
              "status": "active"
            }
          },
          "fb": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingSchema"
              }
            ],
            "description": "DND settings for Facebook",
            "example": {
              "code": "all",
              "message": "Do not contact via FB",
              "status": "active"
            }
          },
          "gmb": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingSchema"
              }
            ],
            "description": "DND settings for Google My Business",
            "example": {
              "code": "all",
              "message": "Do not contact via GMB",
              "status": "active"
            }
          },
          "sms": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingSchema"
              }
            ],
            "description": "DND settings for SMS",
            "example": {
              "code": "all",
              "message": "Do not SMS",
              "status": "active"
            }
          },
          "whatsApp": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingSchema"
              }
            ],
            "description": "DND settings for WhatsApp",
            "example": {
              "code": "all",
              "message": "Do not WhatsApp",
              "status": "active"
            }
          }
        },
        "type": "object"
      },
      "DocumentDto": {
        "properties": {
          "_id": {
            "description": "Unique identifier",
            "example": "67ac9a51106ee8311e911XXXX",
            "type": "string"
          },
          "createdAt": {
            "description": "Date to (ISO 8601)",
            "example": "2025-02-14T18:29:59.999Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the document is deleted",
            "example": false,
            "type": "boolean"
          },
          "documentId": {
            "description": "Document Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "documentRevision": {
            "description": "Number of times document is moved to draft state",
            "example": 1,
            "type": "number"
          },
          "fillableFields": {
            "description": "Fillable fields",
            "items": {
              "$ref": "#/components/schemas/FillableFieldsDTO"
            },
            "type": "array"
          },
          "grandTotal": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GrandTotalDto"
              }
            ],
            "description": "Grand total object of the document"
          },
          "isExpired": {
            "description": "Whether the document is expired",
            "example": false,
            "type": "boolean"
          },
          "links": {
            "description": "Links for the document if its sent",
            "items": {
              "$ref": "#/components/schemas/ProposalEstimateLinksDto"
            },
            "type": "array"
          },
          "locale": {
            "description": "Locale of the location",
            "example": "en-US",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "name": {
            "description": "Name of the document",
            "example": "Document Name",
            "type": "string"
          },
          "paymentStatus": {
            "description": "Payment status",
            "example": "paid",
            "items": {
              "enum": [
                "waiting_for_payment",
                "paid",
                "no_payment"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "recipients": {
            "description": "Recipients",
            "example": [
              {
                "contactName": "Jim Anton",
                "email": "jim@example.com",
                "firstName": "Jim",
                "hasCompleted": true,
                "id": "u240JcS0E5qE0ziHnwMm",
                "imageUrl": "",
                "imgUrl": "base64 image url",
                "ip": "123.123.123.123",
                "lastName": "Anton",
                "role": "signer",
                "signingOrder": 1
              }
            ],
            "items": {
              "$ref": "#/components/schemas/RecipientItem"
            },
            "type": "array"
          },
          "status": {
            "description": "Document status",
            "example": "draft",
            "items": {
              "enum": [
                "draft",
                "sent",
                "viewed",
                "completed",
                "accepted"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "type": {
            "description": "Type of the document",
            "example": "proposal",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date start from (ISO 8601)",
            "example": "2025-02-03T18:30:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "documentId",
          "_id",
          "name",
          "type",
          "deleted",
          "isExpired",
          "documentRevision",
          "fillableFields",
          "grandTotal",
          "locale",
          "status",
          "paymentStatus",
          "recipients",
          "links",
          "updatedAt",
          "createdAt"
        ],
        "type": "object"
      },
      "DocumentListResponseDto": {
        "properties": {
          "documents": {
            "description": "List of documents",
            "items": {
              "$ref": "#/components/schemas/DocumentDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total records available",
            "example": 10,
            "type": "number"
          },
          "whiteLabelBaseUrl": {
            "description": "WhiteLabel url for document",
            "example": "https://example.com",
            "type": "number"
          },
          "whiteLabelBaseUrlForInvoice": {
            "description": "WhiteLabel url for invoice",
            "example": "https://example.com",
            "type": "number"
          }
        },
        "required": [
          "documents",
          "total"
        ],
        "type": "object"
      },
      "ELEMENTS_LOOKUP": {
        "description": "Element type",
        "enum": [
          "Page",
          "Text",
          "Image",
          "Video",
          "Table",
          "ProductList",
          "PageBreak",
          "Signature",
          "PaymentDetails",
          "TextField",
          "DateField",
          "InitialsField",
          "Checkbox",
          "Row",
          "Column"
        ],
        "type": "string"
      },
      "EditSessionCalendarDTO": {
        "properties": {
          "accountIds": {
            "description": "Filter by Account IDs. If not provided or empty, returns all posts.",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "endDate": {
            "description": "End Date in ISO format",
            "example": "2023-10-31T23:59:59.999Z",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "startDate": {
            "description": "Start Date in ISO format",
            "example": "2023-10-01T00:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "sessionId",
          "startDate",
          "endDate"
        ],
        "type": "object"
      },
      "EditSessionCalendarResponseDTO": {
        "properties": {
          "message": {
            "example": "Edit session calendar fetched successfully",
            "type": "string"
          },
          "scheduledPosts": {
            "items": {
              "$ref": "#/components/schemas/EditSessionScheduledPostDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "The timezone used for scheduling, e.g., \"Asia/Calcutta\"",
            "type": "string"
          },
          "total": {
            "description": "Total number of scheduled posts returned",
            "type": "number"
          }
        },
        "type": "object"
      },
      "EditSessionScheduledPostDTO": {
        "properties": {
          "category": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CategoryInfoDTO"
              }
            ],
            "description": "The category associated with this post",
            "nullable": true
          },
          "currentVariation": {
            "description": "The index of the current variation being used for this post",
            "example": 0,
            "type": "number"
          },
          "errors": {
            "description": "List of errors associated with the queue item. Possible values: INVALID_USER_ID, PIXABAY_MEDIA.",
            "example": [
              "INVALID_USER_ID",
              "PIXABAY_MEDIA"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isDraft": {
            "description": "Indicates this is a draft item from an edit session",
            "example": true,
            "type": "boolean"
          },
          "order": {
            "description": "The order of the item in the queue.",
            "example": 1000,
            "type": "number"
          },
          "originalItemId": {
            "description": "Original queue item ID if this draft was created from an existing item",
            "example": "60af88475f1b2c001f5d5f4b",
            "nullable": true,
            "type": "string"
          },
          "post": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPostFormattedSchema"
              }
            ],
            "description": "The formatted post data."
          },
          "primaryImage": {
            "description": "The primary image URL for the post.",
            "example": "https://example.com/images/post-image.png",
            "type": "string"
          },
          "queueId": {
            "description": "The ID of the queue this post belongs to",
            "example": "60af88475f1b2c001f5d5f4a",
            "type": "string"
          },
          "queueItemId": {
            "description": "The unique identifier of the queue item.",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "scheduledDateTime": {
            "description": "The date and time the post is scheduled to be published",
            "example": "2023-10-15T10:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "timezone": {
            "description": "The timezone in which the post is scheduled",
            "example": "America/New_York",
            "type": "string"
          },
          "variations": {
            "description": "A list of content variations for the post.",
            "items": {
              "$ref": "#/components/schemas/VariationDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "EmailCampaignPublicV2Dto": {
        "properties": {
          "campaignCategory": {
            "description": "Campaign category",
            "example": "email-campaign",
            "type": "string"
          },
          "campaignType": {
            "description": "Campaign type",
            "example": "bulk-email",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Campaign ID",
            "example": "67f15c2ae99226d5bcccb8f3",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "February Newsletter",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "email-campaign",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "bulkRequest_abc123",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "all",
              "sent",
              "failed",
              "archived",
              "draft",
              "processing",
              "scheduled",
              "cancelled",
              "paused"
            ],
            "example": "sent",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          },
          "variations": {
            "description": "AB test variation identifiers (available only for AB test campaigns)",
            "example": [
              {
                "isWinner": true,
                "sourceId": "9MhVcU7dTdLI7XOU1Vdt"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/EmailCampaignVariationPublicV2Dto"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "EmailCampaignVariationPublicV2Dto": {
        "properties": {
          "isWinner": {
            "description": "Whether this is the winning variation",
            "example": true,
            "type": "boolean"
          },
          "sourceId": {
            "description": "Variation source ID for stats lookup",
            "example": "9MhVcU7dTdLI7XOU1Vdt",
            "type": "string"
          }
        },
        "required": [
          "sourceId",
          "isWinner"
        ],
        "type": "object"
      },
      "EmailEventsDto": {
        "additionalProperties": {
          "description": "Additional provider event counter (merged into stored values).",
          "type": "integer"
        },
        "description": "Aggregate delivery event counters for the email message. Values are merged into existing stored counters (additive update, not replacement). A value of `0` is treated as a no-op and will not reset the stored counter. Only include fields you want to update. Provider-specific counters such as `permanent_fail`, `temporary_fail`, and `esp_isp_block` may be sent using those snake_case keys.",
        "properties": {
          "accepted": {
            "description": "Number of messages accepted by the receiving mail server for delivery. Automatically inferred (set to 1) when `delivered`, `permanent_fail`, or `temporary_fail` events are reported.",
            "example": 1,
            "type": "integer"
          },
          "clicked": {
            "description": "Number of link click events within the email body. Triggers automatic inference of both `opened` and `delivered`.",
            "example": 1,
            "type": "integer"
          },
          "complained": {
            "description": "Number of spam complaint events (e.g., recipient marked the email as spam). Triggers automatic inference of `opened` and `delivered`.",
            "example": 0,
            "type": "integer"
          },
          "delivered": {
            "description": "Number of successful deliveries — the recipient mail server accepted the message. Automatically inferred (set to 1) when `opened`, `clicked`, `complained`, `unsubscribed`, or `replied` events are reported.",
            "example": 1,
            "type": "integer"
          },
          "failed": {
            "description": "Total number of delivery failures (includes both permanent and temporary). For more granular failure tracking, use `permanent_fail` and `temporary_fail` instead.",
            "example": 0,
            "type": "integer"
          },
          "opened": {
            "description": "Number of unique open events (typically tracked via a tracking pixel). Automatically inferred (set to 1) when `clicked`, `complained`, `unsubscribed`, or `replied` events are reported, provided open tracking is enabled on the email.",
            "example": 3,
            "type": "integer"
          },
          "rejected": {
            "description": "Number of messages rejected outright by the receiving mail server (before acceptance).",
            "example": 0,
            "type": "integer"
          },
          "replied": {
            "description": "Number of reply events. Triggers automatic inference of both `opened` (if open tracking is enabled) and `delivered`.",
            "example": 1,
            "type": "integer"
          },
          "stored": {
            "description": "Number of messages stored by the email service provider (ESP-specific event).",
            "example": 0,
            "type": "integer"
          },
          "unsubscribed": {
            "description": "Number of unsubscribe events triggered by the recipient. Triggers automatic inference of `opened` and `delivered`.",
            "example": 0,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "EmailNotVerifiedResponseDto": {
        "properties": {
          "address": {
            "description": "Email address",
            "example": "abc@example.com",
            "type": "string"
          },
          "message": {
            "description": "Email verification failure message",
            "example": "Validation is disabled / proper config not found",
            "type": "string"
          },
          "verified": {
            "description": "Email verification not processed",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "verified"
        ],
        "type": "object"
      },
      "EmailStatsNumbersDto": {
        "properties": {
          "clicked": {
            "description": "Links clicked",
            "example": 120,
            "type": "number"
          },
          "complained": {
            "description": "Spam complaints",
            "example": 2,
            "type": "number"
          },
          "delivered": {
            "description": "Emails delivered",
            "example": 1000,
            "type": "number"
          },
          "failed": {
            "description": "Failed emails",
            "example": 5,
            "type": "number"
          },
          "opened": {
            "description": "Emails opened",
            "example": 450,
            "type": "number"
          },
          "permanentFail": {
            "description": "Hard bounces",
            "example": 15,
            "type": "number"
          },
          "rejected": {
            "description": "Rejected emails",
            "example": 10,
            "type": "number"
          },
          "replied": {
            "description": "Replies received",
            "example": 25,
            "type": "number"
          },
          "temporaryFail": {
            "description": "Soft bounces",
            "example": 3,
            "type": "number"
          },
          "unsubscribed": {
            "description": "Unsubscribes",
            "example": 5,
            "type": "number"
          }
        },
        "required": [
          "delivered",
          "opened",
          "clicked",
          "unsubscribed",
          "complained",
          "permanentFail",
          "temporaryFail",
          "rejected",
          "failed",
          "replied"
        ],
        "type": "object"
      },
      "EmailStatsNumbersPublicV2Dto": {
        "properties": {
          "accepted": {
            "description": "Emails accepted by the mail server",
            "example": 5,
            "type": "number"
          },
          "bounceRate": {
            "description": "Bounce rate as percentage of sent",
            "example": 1.76,
            "type": "number"
          },
          "clickRate": {
            "description": "Click rate as percentage of delivered",
            "example": 12,
            "type": "number"
          },
          "clicked": {
            "description": "Links clicked",
            "example": 120,
            "type": "number"
          },
          "complained": {
            "description": "Spam complaints",
            "example": 2,
            "type": "number"
          },
          "complaintRate": {
            "description": "Complaint rate as percentage of delivered",
            "example": 0.2,
            "type": "number"
          },
          "delivered": {
            "description": "Emails delivered to inbox",
            "example": 1000,
            "type": "number"
          },
          "failed": {
            "description": "Failed emails",
            "example": 5,
            "type": "number"
          },
          "openRate": {
            "description": "Open rate as percentage of delivered",
            "example": 45,
            "type": "number"
          },
          "opened": {
            "description": "Emails opened",
            "example": 450,
            "type": "number"
          },
          "permanentFail": {
            "description": "Hard bounces",
            "example": 15,
            "type": "number"
          },
          "rejected": {
            "description": "Rejected emails",
            "example": 10,
            "type": "number"
          },
          "replied": {
            "description": "Replies received",
            "example": 25,
            "type": "number"
          },
          "replyRate": {
            "description": "Reply rate as percentage of delivered",
            "example": 2.5,
            "type": "number"
          },
          "sent": {
            "description": "Total emails sent (delivered + accepted + bounced)",
            "example": 1020,
            "type": "number"
          },
          "temporaryFail": {
            "description": "Soft bounces",
            "example": 3,
            "type": "number"
          },
          "unsubscribeRate": {
            "description": "Unsubscribe rate as percentage of delivered",
            "example": 0.5,
            "type": "number"
          },
          "unsubscribed": {
            "description": "Unsubscribes",
            "example": 5,
            "type": "number"
          }
        },
        "required": [
          "sent",
          "accepted",
          "delivered",
          "opened",
          "clicked",
          "unsubscribed",
          "complained",
          "permanentFail",
          "temporaryFail",
          "rejected",
          "failed",
          "replied",
          "openRate",
          "clickRate",
          "unsubscribeRate",
          "complaintRate",
          "bounceRate",
          "replyRate"
        ],
        "type": "object"
      },
      "EmailTemplateSchema": {
        "properties": {
          "attachments": {
            "example": [],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "html": {
            "example": "<html><head><style>body{font-family: sans-serif;}</style></head><body>testing</body></html>",
            "type": "string"
          },
          "subject": {
            "example": "subject text",
            "type": "string"
          }
        },
        "type": "object"
      },
      "EmailVerifiedV3ResponseDto": {
        "properties": {
          "address": {
            "description": "Email address",
            "example": "abc@example.com",
            "type": "string"
          },
          "leadConnectorRecommendation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadConnectorRecommendationDto"
              }
            ],
            "description": "Lead Connector email verification recommendation",
            "example": {
              "isEmailValid": false
            }
          },
          "reason": {
            "description": "Reason for email verification failure",
            "example": [
              "mailbox_does_not_exist"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "result": {
            "description": "Email verification result",
            "enum": [
              "deliverable",
              "undeliverable",
              "do_not_send",
              "unknown",
              "catch_all"
            ],
            "example": "undeliverable",
            "type": "string"
          },
          "risk": {
            "description": "Risk level of email sending to bounce",
            "enum": [
              "high",
              "low",
              "medium",
              "unknown"
            ],
            "example": "low",
            "type": "string"
          }
        },
        "required": [
          "result",
          "risk",
          "address"
        ],
        "type": "object"
      },
      "EmployeeListItemDTO": {
        "properties": {
          "actions": {
            "description": "List of actions associated with this agent.",
            "example": [
              {
                "id": "action_123",
                "type": "triggerWorkflow"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "autoPilotMaxMessages": {
            "description": "Maximum number of messages in auto-pilot mode before requiring human intervention.",
            "example": 25,
            "type": "number"
          },
          "businessName": {
            "description": "Name of the business the agent represents.",
            "example": "Tech Corp",
            "type": "string"
          },
          "channels": {
            "description": "Communication channels the agent operates on.",
            "example": [
              "SMS",
              "LIVE_CHAT"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "Timestamp when the agent was created.",
            "example": "2024-01-01T00:00:00Z",
            "type": "string"
          },
          "goal": {
            "description": "Goal configuration for the agent.",
            "example": {
              "actionId": null,
              "prompt": "Assist customers",
              "type": "custom"
            },
            "type": "object"
          },
          "id": {
            "description": "Unique identifier for the agent.",
            "example": "emp_123",
            "type": "string"
          },
          "isPrimary": {
            "description": "Indicates if this agent is a primary agent. (First agent created for a location is primary by default)",
            "example": false,
            "type": "boolean"
          },
          "knowledgeBaseIds": {
            "description": "Array of knowledge base IDs associated with this agent.",
            "example": [
              "kb_123",
              "kb_456"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "mode": {
            "description": "Current operating mode of the agent.",
            "enum": [
              "off",
              "suggestive",
              "auto-pilot"
            ],
            "example": "auto-pilot",
            "type": "string"
          },
          "name": {
            "description": "Name of the agent.",
            "example": "John Doe",
            "type": "string"
          },
          "sleepEnabled": {
            "deprecated": true,
            "description": "Indicates if sleep functionality is enabled.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnManualMessage": {
            "description": "Whether the bot sleeps on manual outbound messages.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnWorkflowMessage": {
            "description": "Whether the bot sleeps on workflow outbound messages.",
            "example": false,
            "type": "boolean"
          },
          "sleepTime": {
            "description": "Duration of sleep period.",
            "example": 2,
            "type": "number"
          },
          "sleepTimeUnit": {
            "description": "Unit of sleep time.",
            "enum": [
              "hours",
              "minutes",
              "seconds"
            ],
            "example": "hours",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp when the agent was last updated.",
            "example": "2024-01-01T00:00:00Z",
            "type": "string"
          },
          "waitTime": {
            "description": "Wait time before agent responds.",
            "example": 30,
            "type": "number"
          },
          "waitTimeUnit": {
            "description": "Unit for wait time.",
            "enum": [
              "minutes",
              "seconds"
            ],
            "example": "seconds",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "mode",
          "channels",
          "waitTime",
          "waitTimeUnit",
          "sleepEnabled",
          "actions",
          "isPrimary",
          "autoPilotMaxMessages",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "EmployeeResponseDTO": {
        "properties": {
          "actions": {
            "description": "List of actions associated with this agent.",
            "items": {
              "$ref": "#/components/schemas/ActionsIdDto"
            },
            "type": "array"
          },
          "autoPilotMaxMessages": {
            "description": "Maximum number of messages in auto-pilot mode before requiring human intervention.",
            "example": 25,
            "type": "number"
          },
          "businessName": {
            "description": "Name of the business the agent represents.",
            "example": "Tech Corp",
            "type": "string"
          },
          "channels": {
            "description": "Communication channels the agent operates on.",
            "example": [
              "SMS",
              "Live_Chat"
            ],
            "items": {
              "enum": [
                "IG",
                "FB",
                "SMS",
                "WebChat",
                "WhatsApp",
                "Live_Chat"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "goal": {
            "description": "The goal of the agent.",
            "example": "Assist customers with inquiries",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the agent.",
            "example": "emp_123",
            "type": "string"
          },
          "instructions": {
            "description": "Instructions for the agent.",
            "example": "Provide excellent customer service",
            "type": "string"
          },
          "isPrimary": {
            "description": "Indicates if this agent is a primary agent.",
            "example": false,
            "type": "boolean"
          },
          "knowledgeBaseIds": {
            "description": "Array of knowledge base IDs associated with this agent.",
            "example": [
              "kb_123",
              "kb_456"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "mode": {
            "description": "Current operating mode of the agent.",
            "enum": [
              "off",
              "suggestive",
              "auto-pilot"
            ],
            "example": "auto-pilot",
            "type": "string"
          },
          "name": {
            "description": "Name of the agent.",
            "example": "John Doe",
            "type": "string"
          },
          "personality": {
            "description": "Personality traits of the agent.",
            "example": "Friendly and helpful",
            "type": "string"
          },
          "sleepEnabled": {
            "deprecated": true,
            "description": "Indicates if sleep functionality is enabled.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnManualMessage": {
            "description": "Whether the bot sleeps on manual outbound messages.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnWorkflowMessage": {
            "description": "Whether the bot sleeps on workflow outbound messages.",
            "example": false,
            "type": "boolean"
          },
          "sleepTime": {
            "description": "Duration of sleep period.",
            "example": 2,
            "type": "number"
          },
          "sleepTimeUnit": {
            "description": "Unit of sleep time.",
            "enum": [
              "hours",
              "minutes",
              "seconds"
            ],
            "example": "hours",
            "type": "string"
          },
          "waitTime": {
            "description": "Wait time before agent responds.",
            "example": 30,
            "type": "number"
          },
          "waitTimeUnit": {
            "description": "Unit for wait time.",
            "enum": [
              "minutes",
              "seconds"
            ],
            "example": "seconds",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "mode",
          "channels",
          "waitTime",
          "waitTimeUnit",
          "sleepEnabled",
          "actions",
          "isPrimary",
          "autoPilotMaxMessages"
        ],
        "type": "object"
      },
      "EnableSaasDto": {
        "properties": {
          "companyId": {
            "type": "string"
          },
          "contactId": {
            "description": "Agency subaccount used for payment provider integration(Required Only for SaaS V2)",
            "example": "1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          },
          "description": {
            "description": "Description",
            "example": "Description",
            "type": "string"
          },
          "email": {
            "description": "Email of the stripe customer(Required only for SaaS V1)",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "isSaaSV2": {
            "description": "Denotes if it is a saas v2 or v1 sub-account",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the stripe customer(Required only for SaaS V1)",
            "example": "John Doe",
            "type": "string"
          },
          "priceId": {
            "description": "Required only while pre-configuring saas subscription",
            "example": "price_1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          },
          "providerLocationId": {
            "description": "Agency Subaccount ID",
            "example": "r06mdj4OrrERzYDvsOdh",
            "type": "string"
          },
          "saasPlanId": {
            "description": "Required only while pre-configuring saas subscription",
            "example": "1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          },
          "stripeAccountId": {
            "description": "Stripe account id(Required only for SaaS V1)",
            "example": "acct_1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          },
          "stripeCustomerId": {
            "description": "Stripe customer id if exists(Required only for SaaS V1)",
            "example": "cus_1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          }
        },
        "required": [
          "companyId",
          "isSaaSV2"
        ],
        "type": "object"
      },
      "EnableSaasResponseDto": {
        "properties": {
          "data": {
            "description": "Response data from the enable SaaS operation",
            "example": {
              "customer_id": "cus_1QDPY5FpU9DlKp7RQ8BXfywx",
              "ok": true,
              "paymentMethodAdded": true
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "EndDateSchema": {
        "properties": {
          "endDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DateSchema"
              }
            ],
            "description": "End Date",
            "example": {
              "day": 20,
              "month": 1,
              "year": 2024
            }
          },
          "endTime": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TimeSchema"
              }
            ],
            "description": "End Time",
            "example": {
              "hours": 18,
              "minutes": 0,
              "seconds": 0
            }
          }
        },
        "type": "object"
      },
      "EntityReference": {
        "description": "Entity type",
        "enum": [
          "contacts",
          "users"
        ],
        "type": "string"
      },
      "ErrorDetailsDTO": {
        "properties": {
          "message": {
            "description": "Error message",
            "example": "Failed to fetch HTML content",
            "type": "string"
          },
          "name": {
            "description": "Error name/type",
            "example": "HttpException",
            "type": "string"
          },
          "options": {
            "description": "Additional options (nullable)",
            "example": null,
            "type": "object"
          },
          "response": {
            "description": "Error response message",
            "example": "Failed to fetch HTML content",
            "type": "string"
          },
          "stack": {
            "description": "Error stack trace",
            "example": "HttpException: Failed to fetch HTML content\n    at getHtml (/app/dist/apps/conversations-ai/crm-conversations-ai-discover-worker.js:2531:15)",
            "type": "string"
          },
          "status": {
            "description": "HTTP status code",
            "example": 500,
            "type": "number"
          }
        },
        "required": [
          "stack",
          "response",
          "status",
          "message",
          "name"
        ],
        "type": "object"
      },
      "ErrorDto": {
        "properties": {
          "code": {
            "description": "Error Code",
            "example": "1",
            "type": "string"
          },
          "message": {
            "description": "Error Message",
            "example": "There was an error from the provider",
            "type": "string"
          },
          "type": {
            "description": "Error Type",
            "example": "saas",
            "type": "string"
          }
        },
        "required": [
          "code",
          "type",
          "message"
        ],
        "type": "object"
      },
      "EstimateIdParam": {
        "properties": {
          "estimateId": {
            "description": "Estimate Id",
            "example": "5f9d6d8b1b2d2c001f2d9e4b",
            "type": "string"
          }
        },
        "required": [
          "estimateId"
        ],
        "type": "object"
      },
      "EstimateLineItemDto": {
        "properties": {
          "amount": {
            "description": "Product amount",
            "example": 999,
            "type": "number"
          },
          "attachments": {
            "description": "Attachments for the line item",
            "example": [
              "https://example.com/file1.jpg",
              "https://example.com/file2.png"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "automaticTaxCategoryId": {
            "description": "Tax category id for calculating automatic tax",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "Invoice descriptions",
            "example": "ABC Corp.",
            "type": "string"
          },
          "isSetupFeeItem": {
            "description": "Setupfee item, only created when 1st invoice of recurring schedule is generated",
            "type": "boolean"
          },
          "name": {
            "description": "Invoice Item Name",
            "example": "ABC Product",
            "type": "string"
          },
          "priceId": {
            "description": "Price Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "productId": {
            "description": "Product Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "qty": {
            "description": "Product Quantity",
            "example": 1,
            "type": "number"
          },
          "taxInclusive": {
            "default": false,
            "description": "true if item amount is tax inclusive",
            "example": true,
            "type": "boolean"
          },
          "taxes": {
            "description": "Tax",
            "items": {
              "$ref": "#/components/schemas/ItemTaxDto"
            },
            "type": "array"
          },
          "type": {
            "description": "Price type of the item",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          }
        },
        "required": [
          "name",
          "currency",
          "amount",
          "qty"
        ],
        "type": "object"
      },
      "EstimateResponseDto": {
        "properties": {
          "__v": {
            "description": "Version number",
            "example": 0,
            "type": "number"
          },
          "_id": {
            "description": "Unique identifier",
            "example": "67ac9a51106ee8311e911XXXX",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "attachments": {
            "description": "Attachments",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "autoInvoice": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoInvoice"
              }
            ],
            "description": "Auto-invoice settings for the estimate",
            "example": {
              "directPayments": false,
              "enabled": true
            }
          },
          "automaticTaxesCalculated": {
            "description": "Indicates if automatic taxes were calculated",
            "example": true,
            "type": "boolean"
          },
          "automaticTaxesEnabled": {
            "description": "Indicates if automatic taxes are enabled for this estimate",
            "example": false,
            "type": "boolean"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetails"
              }
            ],
            "description": "Business details associated with the estimate",
            "example": {
              "address": {
                "addressLine1": "address line 1",
                "city": "Test City",
                "countryCode": "US",
                "postalCode": "12345",
                "state": "State Name"
              },
              "customValues": [
                {
                  "fieldKey": "{{custom_values.test}}",
                  "id": "5DYTWoiQvWiIJZXX44XXX",
                  "name": "Test",
                  "value": "Test's Custom Value"
                }
              ],
              "logoUrl": "your_image-url",
              "name": "Business name",
              "phoneNo": "+1 1234567890",
              "website": "www.example.com"
            }
          },
          "companyId": {
            "description": "Company identifier associated with the estimate",
            "example": "COMP12345",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetails"
              }
            ],
            "description": "Contact details for the estimate",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "email": "email@example.com",
              "id": "jvzfKTNdE7OYXXXXXX",
              "name": "Contact Name",
              "phoneNo": "+911111111114"
            }
          },
          "createdAt": {
            "description": "Timestamp when created",
            "example": "2025-02-12T13:17:47.416Z",
            "format": "date-time",
            "type": "string"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if deleted",
            "example": false,
            "type": "boolean"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount details for the estimate template",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "estimateActionHistory": {
            "description": "History of actions taken on the estimate",
            "example": [
              {
                "action": "Created",
                "timestamp": "2023-06-15T10:00:00.000Z"
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "estimateNumberPrefix": {
            "description": "Estimate number prefix",
            "example": "EST-",
            "type": "string"
          },
          "expiryDate": {
            "description": "Date when the estimate expires",
            "example": "2023-07-15T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "frequencySettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FrequencySettingsDto"
              }
            ],
            "description": "Frequency settings for recurring estimates",
            "examples": [
              {
                "enabled": false
              },
              {
                "enabled": true,
                "schedule": {
                  "rrule": {
                    "count": "5",
                    "dayOfMonth": 1,
                    "endType": "after",
                    "interval": 1,
                    "intervalType": "monthly",
                    "numOfWeek": 0,
                    "startDate": "2025-02-12"
                  }
                }
              },
              {
                "enabled": true,
                "schedule": {
                  "rrule": {
                    "dayOfMonth": 1,
                    "endDate": "2025-02-24",
                    "endType": "by",
                    "interval": 1,
                    "intervalType": "monthly",
                    "numOfWeek": 0,
                    "startDate": "2025-02-12"
                  }
                }
              },
              {
                "enabled": true,
                "schedule": {
                  "rrule": {
                    "dayOfMonth": 1,
                    "endType": "never",
                    "interval": 1,
                    "intervalType": "monthly",
                    "numOfWeek": 0,
                    "startDate": "2025-02-12"
                  }
                }
              }
            ]
          },
          "issueDate": {
            "description": "Date when the estimate was issued",
            "example": "2023-06-15T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "items": {
            "description": "An array of items",
            "example": [
              {
                "_id": "67ac9a51106ee8311e911XXXX",
                "amount": 9.99,
                "currency": "USD",
                "description": "<p>Futuristic anti-gravity racing</p>",
                "name": "TEST",
                "priceId": "67ac9a51106ee8311e911XXXX",
                "productId": "67ac9a51106ee8311e911XXXX",
                "qty": 1,
                "taxInclusive": false,
                "taxes": [],
                "type": "one_time"
              },
              {
                "_id": "67ac9a51106ee8311e911XXXX",
                "amount": 500,
                "currency": "USD",
                "description": "",
                "name": "TEST2",
                "priceId": "67ac9a51106ee8311e911XXXX",
                "productId": "67ac9a51106ee8311e911XXXX",
                "qty": 1,
                "taxInclusive": true,
                "taxes": [
                  {
                    "_id": "67ac9a51106ee8311e911XXXX",
                    "calculation": "exclusive",
                    "name": "TaxTwo",
                    "rate": 8.5
                  }
                ],
                "type": "recurring"
              }
            ],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "lastVisitedAt": {
            "description": "Timestamp when the estimate was last visited",
            "example": "2023-06-20T08:30:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "liveMode": {
            "description": "Indicates if it is in live mode",
            "example": true,
            "type": "boolean"
          },
          "meta": {
            "description": "Additional metadata associated with the estimate",
            "example": {
              "key": "value"
            },
            "type": "object"
          },
          "name": {
            "description": "Name",
            "example": "Estimate Name",
            "type": "string"
          },
          "sentBy": {
            "description": "User who sent the estimate",
            "example": "user@example.com",
            "type": "string"
          },
          "sentTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SentTo"
              }
            ],
            "description": "Recipient details for the estimate",
            "example": {
              "email": [
                "test@example.com"
              ],
              "phoneNo": [
                "+1 99444444444"
              ]
            }
          },
          "termsNotes": {
            "description": "Terms and conditions for the estimate, supports HTML markup",
            "example": "<p>All services are subject to availability.</p>",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "ESTIMATE",
            "type": "string"
          },
          "total": {
            "description": "Total amount",
            "example": 1222.03,
            "type": "number"
          },
          "totalamountInUSD": {
            "description": "Total amount in USD",
            "example": 1500.75,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID for logging and debugging",
            "example": "010c7a01-857f-4619-970d-xyxyxyxy",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp when last updated",
            "example": "2025-02-12T13:17:47.416Z",
            "format": "date-time",
            "type": "string"
          },
          "updatedBy": {
            "description": "User Id of who last updated",
            "example": "3HIpOF9NIc5ltriQXXXX",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "_id",
          "liveMode",
          "deleted",
          "name",
          "currency",
          "businessDetails",
          "items",
          "discount",
          "total",
          "createdAt",
          "updatedAt",
          "__v",
          "automaticTaxesEnabled",
          "companyId",
          "contactDetails",
          "issueDate",
          "expiryDate",
          "automaticTaxesCalculated",
          "meta",
          "estimateActionHistory",
          "sentTo",
          "frequencySettings",
          "lastVisitedAt",
          "totalamountInUSD",
          "traceId"
        ],
        "type": "object"
      },
      "EstimateTemplateResponseDTO": {
        "properties": {
          "__v": {
            "description": "Version number",
            "example": 0,
            "type": "number"
          },
          "_id": {
            "description": "Unique identifier",
            "example": "67ac9a51106ee8311e911XXXX",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "attachments": {
            "description": "Attachments",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "automaticTaxesEnabled": {
            "description": "Indicates if automatic taxes are enabled for this estimate",
            "example": false,
            "type": "boolean"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetails"
              }
            ],
            "description": "Business details associated with the estimate",
            "example": {
              "address": {
                "addressLine1": "address line 1",
                "city": "Test City",
                "countryCode": "US",
                "postalCode": "12345",
                "state": "State Name"
              },
              "customValues": [
                {
                  "fieldKey": "{{custom_values.test}}",
                  "id": "5DYTWoiQvWiIJZXX44XXX",
                  "name": "Test",
                  "value": "Test's Custom Value"
                }
              ],
              "logoUrl": "your_image-url",
              "name": "Business name",
              "phoneNo": "+1 1234567890",
              "website": "www.example.com"
            }
          },
          "createdAt": {
            "description": "Timestamp when created",
            "example": "2025-02-12T13:17:47.416Z",
            "format": "date-time",
            "type": "string"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if deleted",
            "example": false,
            "type": "boolean"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount details for the estimate template",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "estimateNumberPrefix": {
            "description": "Estimate number prefix",
            "example": "EST-",
            "type": "string"
          },
          "items": {
            "description": "An array of items",
            "example": [
              {
                "_id": "67ac9a51106ee8311e911XXXX",
                "amount": 9.99,
                "currency": "USD",
                "description": "<p>Futuristic anti-gravity racing</p>",
                "name": "TEST",
                "priceId": "67ac9a51106ee8311e911XXXX",
                "productId": "67ac9a51106ee8311e911XXXX",
                "qty": 1,
                "taxInclusive": false,
                "taxes": [],
                "type": "one_time"
              },
              {
                "_id": "67ac9a51106ee8311e911XXXX",
                "amount": 500,
                "currency": "USD",
                "description": "",
                "name": "TEST2",
                "priceId": "67ac9a51106ee8311e911XXXX",
                "productId": "67ac9a51106ee8311e911XXXX",
                "qty": 1,
                "taxInclusive": true,
                "taxes": [
                  {
                    "_id": "67ac9a51106ee8311e911XXXX",
                    "calculation": "exclusive",
                    "name": "TaxTwo",
                    "rate": 8.5
                  }
                ],
                "type": "recurring"
              }
            ],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Indicates if it is in live mode",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name",
            "example": "Estimate Name",
            "type": "string"
          },
          "termsNotes": {
            "description": "Terms and conditions for the estimate, supports HTML markup",
            "example": "<p>All services are subject to availability.</p>",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "ESTIMATE",
            "type": "string"
          },
          "total": {
            "description": "Total amount",
            "example": 1222.03,
            "type": "number"
          },
          "updatedAt": {
            "description": "Timestamp when last updated",
            "example": "2025-02-12T13:17:47.416Z",
            "format": "date-time",
            "type": "string"
          },
          "updatedBy": {
            "description": "User Id of who last updated",
            "example": "3HIpOF9NIc5ltriQXXXX",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "_id",
          "liveMode",
          "deleted",
          "name",
          "currency",
          "businessDetails",
          "items",
          "discount",
          "total",
          "createdAt",
          "updatedAt",
          "__v",
          "automaticTaxesEnabled"
        ],
        "type": "object"
      },
      "EstimateTemplatesDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "automaticTaxesEnabled": {
            "default": false,
            "description": "Automatic taxes enabled for the Estimate",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "estimateNumberPrefix": {
            "default": "EST-",
            "description": "Prefix for the estimate number",
            "example": "EST-",
            "type": "string"
          },
          "items": {
            "description": "An array of items for the estimate.",
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "liveMode": {
            "default": true,
            "description": "livemode for estimate",
            "example": true,
            "type": "boolean"
          },
          "meta": {
            "description": "Meta data for the estimate",
            "example": {
              "key": "value"
            },
            "type": "object"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the estimate"
          },
          "name": {
            "description": "Estimate Name",
            "example": "Home Service Estimate Template",
            "type": "string"
          },
          "sendEstimateDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendEstimateDto"
              }
            ],
            "description": "When sending estimate directly while saving"
          },
          "termsNotes": {
            "description": "Terms notes, Also supports HTML markups",
            "example": "<p>This is a default terms.</p>",
            "type": "string"
          },
          "title": {
            "description": "Title for the estimate",
            "example": "ESTIMATE",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "discount"
        ],
        "type": "object"
      },
      "EventCalendarScheduleResponseDTO": {
        "properties": {
          "calendarId": {
            "description": "Calendar ID associated with the schedule",
            "example": "WvVX9LpvlBO6K506xLbp",
            "type": "string"
          },
          "dateAdded": {
            "description": "Information about who created the schedule",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Information about who last updated the schedule",
            "type": "string"
          },
          "rules": {
            "description": "Schedule rules defining when the schedule is active",
            "items": {
              "$ref": "#/components/schemas/ScheduleRuleDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone for the schedule (IANA timezone identifier)",
            "example": "America/New_York",
            "type": "string"
          }
        },
        "required": [
          "timezone",
          "rules",
          "calendarId"
        ],
        "type": "object"
      },
      "EventCalendarScheduleWrapperDTO": {
        "properties": {
          "schedule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EventCalendarScheduleResponseDTO"
              }
            ],
            "description": "The event calendar schedule"
          }
        },
        "required": [
          "schedule"
        ],
        "type": "object"
      },
      "ExecutePublicAgentDTO": {
        "properties": {
          "attachments": {
            "description": "Attachments for the message",
            "items": {
              "$ref": "#/components/schemas/PublicAttachmentSchema"
            },
            "type": "array"
          },
          "contactId": {
            "description": "Contact ID to associate with this execution. When provided, contact data will be hydrated and made available to the agent.",
            "example": "cid_abc123def456",
            "type": "string"
          },
          "executionId": {
            "description": "Unique session identifier that maintains conversational context across multiple interactions within the same agent session. Omit this field for the first message in a new session. Include the executionId returned from the previous response to maintain context in subsequent messages.",
            "example": "a1b2c3d4e5f6g7h8i9j0k1l2",
            "type": "string"
          },
          "inputVariables": {
            "description": "Input variables to pass to the agent. These should match the input variables defined in the agent configuration.",
            "example": {
              "customerName": "John Doe",
              "orderNumber": "ORD-12345"
            },
            "type": "object"
          },
          "locationId": {
            "description": "Location ID",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "message": {
            "description": "Message to send to the agent",
            "example": "How can you help me with my marketing?",
            "type": "string"
          },
          "versionId": {
            "description": "Published version ID to execute. If not provided, the latest published production version will be used.",
            "example": "b2b1c1d2-3e4f-5a6b-7c8d-9e0f1a2b3c4d",
            "type": "string"
          }
        },
        "required": [
          "message",
          "locationId"
        ],
        "type": "object"
      },
      "ExecutePublicAgentResponseDTO": {
        "properties": {
          "attachments": {
            "description": "Response attachments",
            "example": [],
            "type": "array"
          },
          "executionId": {
            "description": "Unique session identifier that maintains conversational context across multiple interactions within the same agent session. Use this ID in subsequent requests to continue the conversation.",
            "example": "a1b2c3d4e5f6g7h8i9j0k1l2",
            "type": "string"
          },
          "executionStatus": {
            "description": "Execution status",
            "example": "completed",
            "type": "string"
          },
          "flowSwitch": {
            "description": "Whether flow was switched",
            "example": false,
            "type": "boolean"
          },
          "generativeOutputs": {
            "description": "Generated outputs",
            "example": [],
            "type": "array"
          },
          "goalCompletion": {
            "description": "When end node is added in the graph, this will be true if the agent reached the end node in the graph",
            "example": false,
            "type": "boolean"
          },
          "interactionId": {
            "description": "Unique identifier for a single interaction cycle, consisting of one user input and the corresponding agent response. Each message exchange generates a new interactionId.",
            "example": "m9n8o7p6q5r4s3t2u1v0w9x8",
            "type": "string"
          },
          "nextExpectedInput": {
            "description": "Expected input type for next interaction",
            "example": "text",
            "type": "string"
          },
          "response": {
            "description": "Agent response text",
            "example": "I can help you with various tasks...",
            "type": "string"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          },
          "type": {
            "description": "Response type",
            "example": "text",
            "type": "string"
          }
        },
        "required": [
          "success",
          "executionId",
          "interactionId",
          "response",
          "type",
          "nextExpectedInput",
          "goalCompletion",
          "executionStatus",
          "flowSwitch",
          "attachments",
          "generativeOutputs"
        ],
        "type": "object"
      },
      "ExportMessagesResponseDto": {
        "properties": {
          "messages": {
            "description": "Array of messages",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/GetMessageResponseDto"
            },
            "type": "array"
          },
          "nextCursor": {
            "description": "Cursor for fetching next page. Null if no more results.",
            "example": "a748514c-f49e-4fa8-9954-b53afc78d81d",
            "type": "string"
          },
          "total": {
            "description": "Total number of messages matching the query",
            "example": 1234,
            "type": "number"
          }
        },
        "required": [
          "messages",
          "total"
        ],
        "type": "object"
      },
      "ExtractedDataSchema": {
        "properties": {},
        "type": "object"
      },
      "FBPageDTO": {
        "properties": {
          "facebookPageId": {
            "description": "Facebook Page ID",
            "example": "1234567890",
            "type": "string"
          },
          "facebookPageName": {
            "description": "Facebook Page Name",
            "example": "Facebook Page Name",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FacebookAudienceDTO": {
        "properties": {
          "ageMax": {
            "description": "Maximum age for targeting",
            "example": 65,
            "type": "number"
          },
          "ageMin": {
            "description": "Minimum age for targeting",
            "example": 18,
            "type": "number"
          },
          "genders": {
            "description": "Gender targeting (1 = male, 2 = female)",
            "example": [
              1,
              2
            ],
            "items": {
              "type": "number"
            },
            "type": "array"
          },
          "geoLocations": {
            "description": "Geographic locations to target or exclude",
            "example": [
              {
                "key": "US",
                "name": "United States",
                "selectionType": "include",
                "type": "country"
              },
              {
                "key": "2421836",
                "name": "New York",
                "radius": 25,
                "radiusUnit": "mile",
                "selectionType": "include",
                "type": "city"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AudienceLocationDTO"
            },
            "type": "array"
          },
          "interests": {
            "description": "Interest-based targeting criteria",
            "example": [
              {
                "id": "6003139266461",
                "name": "Fitness and wellness",
                "type": "interests"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AudienceInterestDTO"
            },
            "type": "array"
          },
          "locales": {
            "description": "Language locales to target",
            "example": [
              {
                "key": 6,
                "name": "English (US)"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AudienceLocaleDTO"
            },
            "type": "array"
          },
          "lookalike": {
            "description": "Lookalike audiences to target",
            "example": [
              {
                "id": "23851234567890",
                "name": "Lookalike - Website Visitors"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AudienceCustomAudienceItemDTO"
            },
            "type": "array"
          },
          "placementType": {
            "description": "Placement strategy — \"auto\" lets Facebook choose, \"manual\" uses the placements config",
            "enum": [
              "auto",
              "manual"
            ],
            "example": "auto",
            "type": "string"
          },
          "placements": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudiencePlacementsDTO"
              }
            ],
            "description": "Ad placement positions per platform (only used when placementType is \"manual\")",
            "example": {
              "facebook": [
                "feed"
              ],
              "instagram": [
                "story"
              ],
              "messenger": [
                "messenger_home"
              ]
            }
          },
          "retargeting": {
            "description": "Retargeting custom audiences to target",
            "example": [
              {
                "id": "23851234567891",
                "name": "Website Visitors - Last 30 Days"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AudienceCustomAudienceItemDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "geoLocations"
        ],
        "type": "object"
      },
      "FacebookPageSchema": {
        "properties": {
          "avatar": {
            "description": "Avatar or profile picture URL of the page",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "id": {
            "description": "Facebook page identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "isConnected": {
            "description": "Indicates if the page is currently connected",
            "example": true,
            "type": "boolean"
          },
          "isOwned": {
            "description": "Indicates if the user owns this page",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the Facebook page",
            "example": "FB Page",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FacebookPostSchema": {
        "properties": {
          "textFormatPresetId": {
            "description": "Facebook background preset ID for text-only feed posts. **Facebook `post` only** — not `story` or `reel`. Ignored when media is attached; `metaLink` is omitted on publish.\n\n**Validations** — request returns `400` if violated:\n- Must be a valid preset ID from the [Facebook text background preset reference](https://help.leadconnectorhq.com/support/solutions/articles/155000008005-facebook-text-background-posts-preset-reference). Empty strings, whitespace-only values, and `null` are rejected.\n- When set, `summary` must be 130 characters or fewer.",
            "example": "303063890126415",
            "type": "string"
          },
          "type": {
            "description": "Facebook post format type.\n\n**Available Types:**\n- `post` - Standard feed post (images, videos, text)\n- `story` - 24-hour temporary story\n- `reel` - Short-form vertical video\n\n**Restrictions:**\n- Reels: Require exactly 1 video, not supported on Groups\n- Stories: Captions not supported",
            "enum": [
              "post",
              "story",
              "reel"
            ],
            "example": "post",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "FaqResponseDTO": {
        "properties": {
          "answer": {
            "description": "FAQ answer",
            "example": "3",
            "type": "string"
          },
          "createdAt": {
            "description": "Date when FAQ was created",
            "example": "2025-08-02T19:47:57.243Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the FAQ is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "FAQ ID as string",
            "example": "3rzeElC1FOVY91veVBkp",
            "type": "string"
          },
          "knowledgeBaseId": {
            "description": "Knowledge base ID",
            "example": "I1rITlYLJofFosIqC4Np",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "qIyivCmsuEOSnyoFYEej",
            "type": "string"
          },
          "question": {
            "description": "FAQ question",
            "example": "What is 1+2?",
            "type": "string"
          },
          "questionLowerCase": {
            "description": "FAQ question in lowercase",
            "example": "what is 1+2?",
            "type": "string"
          },
          "trainedUrlId": {
            "description": "Trained URL ID",
            "example": "688e6b6d8a1887e6d94d1475",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date when FAQ was last updated",
            "example": "2025-08-02T19:47:57.243Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "question",
          "questionLowerCase",
          "answer",
          "knowledgeBaseId",
          "locationId",
          "trainedUrlId",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "FbSetDefaultPageBodyDTO": {
        "properties": {
          "pageId": {
            "description": "Facebook page identifier",
            "example": "103456789012345",
            "type": "string"
          }
        },
        "required": [
          "pageId"
        ],
        "type": "object"
      },
      "FbUpdateAudienceBodyDTO": {
        "properties": {
          "description": {
            "description": "Audience description",
            "example": "Lookalike audience from website visitors",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "HChooFuiyPpVYzeJ4HMe",
            "type": "string"
          },
          "name": {
            "description": "Audience name",
            "example": "My Custom Audience",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name"
        ],
        "type": "object"
      },
      "FetchAIResponseDetailsResponseDTO": {
        "properties": {
          "actionLogs": {
            "description": "List of actions taken during this interaction.",
            "example": [
              {
                "contactUpdateAction": [
                  {
                    "fieldId": "field_123",
                    "value": "John Doe"
                  }
                ]
              }
            ],
            "type": "array"
          },
          "agentId": {
            "description": "ID of the employee/agent that generated the response.",
            "example": "emp_123",
            "type": "string"
          },
          "faqs": {
            "description": "FAQ chunks used in generating the response from fine-tuned data.",
            "example": [
              {
                "content": "Our return policy allows returns within 30 days of purchase.",
                "id": "chunk_123",
                "title": "Return Policy FAQ"
              }
            ],
            "type": "array"
          },
          "history": {
            "description": "Conversation history leading up to this response.",
            "example": [
              {
                "content": "Hi, I have a question about returns",
                "role": "user"
              },
              {
                "content": "I'll be happy to help you with information about our return policy.",
                "role": "assistant"
              }
            ],
            "type": "array"
          },
          "input": {
            "description": "The original input message that triggered this response.",
            "example": "What is your return policy?",
            "type": "string"
          },
          "intent": {
            "description": "The intent/goal extracted from location prompt.",
            "example": "Assist customers with product inquiries and support",
            "type": "string"
          },
          "mode": {
            "description": "Mode of operation during this interaction.",
            "example": "auto-pilot",
            "type": "string"
          },
          "prompt": {
            "description": "The complete prompt used for the AI response.",
            "example": "Personality:\nFriendly and professional,\n\nIntent:\nAssist customers with inquiries\n\nAdditional Information:\nHandle basic support queries",
            "type": "string"
          },
          "responseMessage": {
            "description": "The response message generated by the AI.",
            "example": "Hello! I understand you're interested in our products. How can I assist you today?",
            "type": "string"
          },
          "website": {
            "description": "Website content chunks used in generating the response.",
            "example": [
              {
                "content": "We offer free shipping on orders over $50.",
                "id": "chunk_456",
                "url": "https://example.com/shipping"
              }
            ],
            "type": "array"
          }
        },
        "required": [
          "prompt",
          "responseMessage",
          "actionLogs",
          "history"
        ],
        "type": "object"
      },
      "FetchAvailableCategoriesResponseDTO": {
        "properties": {
          "categories": {
            "description": "List of categories with queue status",
            "items": {
              "$ref": "#/components/schemas/AvailableCategoryDTO"
            },
            "type": "array"
          },
          "message": {
            "example": "Available categories fetched successfully",
            "type": "string"
          },
          "meta": {
            "$ref": "#/components/schemas/MetaDTO"
          }
        },
        "type": "object"
      },
      "FetchBuilderSuccesfulResponseDto": {
        "properties": {
          "dateAdded": {
            "description": "date added",
            "example": "2024-11-12T12:34:36.070Z",
            "type": "string"
          },
          "id": {
            "description": "id",
            "example": "67334b231f2fad724062f52b5",
            "type": "string"
          },
          "isPlainText": {
            "description": "plain text based template",
            "example": "false",
            "type": "boolean"
          },
          "lastUpdated": {
            "description": "last updated",
            "example": "2024-11-12T12:34:36.070Z",
            "type": "string"
          },
          "name": {
            "description": "template name",
            "example": "New Template",
            "type": "string"
          },
          "previewUrl": {
            "description": "preview url",
            "example": "https://example.com",
            "type": "string"
          },
          "templateType": {
            "description": "type",
            "example": "builder",
            "type": "string"
          },
          "updatedBy": {
            "description": "updated by",
            "example": "John Doe",
            "type": "string"
          },
          "version": {
            "description": "version",
            "example": "1",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FetchCalendarListResponseDTO": {
        "properties": {
          "message": {
            "example": "Calendar list fetched successfully",
            "type": "string"
          },
          "scheduledPosts": {
            "items": {
              "$ref": "#/components/schemas/ScheduledPostDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "The timezone used for scheduling, e.g., \"Asia/Calcutta\"",
            "type": "string"
          },
          "total": {
            "description": "Total number of scheduled posts returned",
            "type": "number"
          }
        },
        "type": "object"
      },
      "FetchCategoryQueuesDTO": {
        "properties": {
          "limit": {
            "description": "Maximum number of items to return",
            "example": 10,
            "type": "number"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "skip": {
            "description": "Number of items to skip",
            "example": 0,
            "type": "number"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "FetchCategoryQueuesResponseDTO": {
        "properties": {
          "message": {
            "example": "Queues fetched successfully",
            "type": "string"
          },
          "meta": {
            "$ref": "#/components/schemas/MetaDTO"
          },
          "queues": {
            "items": {
              "$ref": "#/components/schemas/CategoryQueueWithCategoryDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "FetchQueueByIdResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Queue fetched successfully",
            "type": "string"
          },
          "queue": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CategoryQueueWithCategoryDTO"
              }
            ],
            "description": "The fetched queue along with its category metadata."
          }
        },
        "type": "object"
      },
      "FetchQueueItemsDTO": {
        "properties": {
          "errorFilter": {
            "description": "To return only queue items with errors",
            "example": true,
            "type": "boolean"
          },
          "itemId": {
            "description": "Item ID to center the response around. When provided, the response will position this item in the center with items above and below based on limit. The skip parameter is ignored when itemId is provided.",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "limit": {
            "description": "Maximum number of items to return",
            "example": 10,
            "type": "number"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "skip": {
            "description": "Number of items to skip",
            "example": 0,
            "type": "number"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "FetchQueueItemsMetaDTO": {
        "properties": {
          "count": {
            "description": "Total count of items",
            "example": "100",
            "type": "string"
          },
          "limit": {
            "description": "Maximum number of items returned",
            "example": 10,
            "type": "number"
          },
          "skip": {
            "description": "Number of items skipped (offset from start)",
            "example": 0,
            "type": "number"
          }
        },
        "type": "object"
      },
      "FetchQueueItemsResponseDTO": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/QueueItemDTO"
            },
            "type": "array"
          },
          "message": {
            "example": "Queue items fetched successfully",
            "type": "string"
          },
          "meta": {
            "$ref": "#/components/schemas/FetchQueueItemsMetaDTO"
          }
        },
        "type": "object"
      },
      "FetchSlotsDTO": {
        "properties": {
          "limit": {
            "default": 20,
            "description": "Number of items to return",
            "example": 20,
            "type": "number"
          },
          "locationId": {
            "description": "The location ID",
            "example": "abc123",
            "type": "string"
          },
          "sessionId": {
            "description": "Session ID for edit mode. If not provided, calculates slots for live items.",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "skip": {
            "default": 0,
            "description": "Number of items to skip",
            "example": 0,
            "type": "number"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "FetchSlotsResponseDTO": {
        "properties": {
          "limit": {
            "description": "Number of items returned",
            "example": 20,
            "type": "number"
          },
          "message": {
            "example": "Slots fetched successfully",
            "type": "string"
          },
          "skip": {
            "description": "Number of items skipped",
            "example": 0,
            "type": "number"
          },
          "slots": {
            "description": "Slot information for items in the requested range",
            "items": {
              "$ref": "#/components/schemas/UpdatedSlotInfoDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone used for slot calculations",
            "example": "America/New_York",
            "type": "string"
          },
          "total": {
            "description": "Total number of items in the queue",
            "example": 100,
            "type": "number"
          }
        },
        "type": "object"
      },
      "FileField": {
        "properties": {
          "fieldValue": {
            "description": "File upload value — a map of UUID to file metadata and download URL (preferred).",
            "example": {
              "f31175d4-2b06-4fc6-b7bc-74cd814c68cb": {
                "documentId": "w2M9qTZ0ZJz8rGt02jdJ",
                "meta": {
                  "encoding": "7bit",
                  "fieldname": "1HeGizb13P0odwgOgKSs",
                  "mimetype": "image/jpeg",
                  "originalname": "IMG_20231215_164412935.jpg",
                  "size": 1786611,
                  "uuid": "f31175d4-2b06-4fc6-b7bc-74cd814c68cb"
                },
                "url": "https://services.leadconnectorhq.com/documents/download/w2M9qTZ0ZJz8rGt02jdJ"
              }
            },
            "type": "object"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": {
              "f31175d4-2b06-4fc6-b7bc-74cd814c68cb": {
                "documentId": "w2M9qTZ0ZJz8rGt02jdJ",
                "meta": {
                  "encoding": "7bit",
                  "fieldname": "1HeGizb13P0odwgOgKSs",
                  "mimetype": "image/jpeg",
                  "originalname": "IMG_20231215_164412935.jpg",
                  "size": 1786611,
                  "uuid": "f31175d4-2b06-4fc6-b7bc-74cd814c68cb"
                },
                "url": "https://services.leadconnectorhq.com/documents/download/w2M9qTZ0ZJz8rGt02jdJ"
              }
            },
            "type": "object"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "FileUploadBody": {
        "additionalProperties": {
          "format": "binary",
          "type": "string"
        },
        "properties": {
          "id": {
            "description": "Id(Contact Id/Opportunity Id/Custom Field Id)",
            "example": "aWdODOBVOlH1RUFKWQke",
            "type": "string"
          },
          "maxFiles": {
            "description": "Max number of files",
            "example": "15",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FileUploadResponseDto": {
        "properties": {
          "meta": {
            "description": "Meta data of uploaded files",
            "example": [
              {
                "encoding": "7bit",
                "fieldname": "FileName.csv",
                "mimetype": "text/csv",
                "originalname": "FileName.csv",
                "size": 2061,
                "url": "https://highlevel-private-staging.storage.googleapis.com/location/Ar4JQgIyuzRsVuwD9RSK/custom-Field/UpZLmohmKEQYn0ymqplY/56e0d7fc-085c-4a07-9e1d-6d8fdac7e710.csv"
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "uploadedFiles": {
            "description": "Uploaded files",
            "example": {
              "FileName.csv": "https://highlevel-private-staging.storage.googleapis.com/location/Ar4JQgIyuzRsVuwD9RSK/custom-Field/UpZLmohmKEQYn0ymqplY/56e0d7fc-085c-4a07-9e1d-6d8fdac7e710.csv"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "FillableFieldsDTO": {
        "properties": {
          "entityType": {
            "$ref": "#/components/schemas/EntityReference"
          },
          "fieldId": {
            "description": "Field Id",
            "example": "text_field_1",
            "type": "string"
          },
          "hasCompleted": {
            "description": "Has the field been completed",
            "example": true,
            "type": "boolean"
          },
          "id": {
            "description": "Id",
            "example": "2d0a6fe1-d519-4198-8785-3da1d7cab925",
            "type": "string"
          },
          "isRequired": {
            "description": "Is the field required",
            "example": true,
            "type": "boolean"
          },
          "recipient": {
            "description": "Recipient",
            "example": "John Doe",
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/ELEMENTS_LOOKUP",
            "example": "TextField"
          },
          "value": {
            "description": "Value of the field",
            "example": "John Doe",
            "type": "string"
          }
        },
        "required": [
          "fieldId",
          "isRequired",
          "hasCompleted",
          "recipient",
          "entityType",
          "id",
          "type",
          "value"
        ],
        "type": "object"
      },
      "FilterByEmailDto": {
        "properties": {
          "companyId": {
            "description": "Company ID to filter users",
            "example": "5DP41231LkQsiKESj6rh",
            "type": "string"
          },
          "deleted": {
            "default": false,
            "description": "Filter deleted users",
            "example": false,
            "type": "boolean"
          },
          "emails": {
            "description": "Comma-separated list of email addresses to filter users",
            "example": "user1@example.com,user2@example.com",
            "type": "string"
          },
          "limit": {
            "default": "25",
            "description": "No of results to be limited before returning the result",
            "example": "10",
            "type": "string"
          },
          "projection": {
            "description": "Projection fields to return. Use \"all\" for all fields, or specify comma-separated field names. Default returns only id and email",
            "example": "all",
            "type": "string"
          },
          "skip": {
            "default": "0",
            "description": "No of results to be skipped before returning the result",
            "example": "1",
            "type": "string"
          }
        },
        "required": [
          "companyId",
          "emails"
        ],
        "type": "object"
      },
      "FlexibleRuleUserListDTO": {
        "properties": {
          "exclusiveOperands": {
            "description": "Exclusive rule operands",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/RuleOperandDTO"
            },
            "type": "array"
          },
          "inclusiveOperands": {
            "description": "Inclusive rule operands",
            "example": [
              {
                "lookbackWindowDays": 30,
                "rule": {
                  "ruleItemGroups": []
                }
              }
            ],
            "items": {
              "$ref": "#/components/schemas/RuleOperandDTO"
            },
            "type": "array"
          },
          "inclusiveRuleOperator": {
            "description": "Operator for combining inclusive operands",
            "example": "AND",
            "type": "string"
          }
        },
        "required": [
          "inclusiveOperands",
          "exclusiveOperands"
        ],
        "type": "object"
      },
      "FolderDTO": {
        "properties": {
          "altId": {
            "description": "Location identifier that owns this folder",
            "example": "sx6wyHhbFdRXh302LLNR",
            "type": "string"
          },
          "altType": {
            "description": "Type of entity that owns the folder",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "appFolder": {
            "description": "Whether this is a system-generated application folder",
            "example": false,
            "type": "boolean"
          },
          "category": {
            "description": "Primary category of content stored in the folder",
            "example": "image",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the folder has been deleted",
            "example": false,
            "type": "boolean"
          },
          "isEssential": {
            "description": "Whether the folder is essential and should not be deleted",
            "example": false,
            "type": "boolean"
          },
          "isPrivate": {
            "description": "Whether the folder is private and not publicly accessible",
            "example": false,
            "type": "boolean"
          },
          "lastUpdatedBy": {
            "description": "ID of the user who last updated the folder",
            "example": "user-uuid-123",
            "type": "string"
          },
          "migrationCompleted": {
            "description": "Whether the data migration process has been completed for this folder",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the folder",
            "example": "New Folder",
            "type": "string"
          },
          "parentId": {
            "description": "ID of the parent folder (null for root folders)",
            "example": "64af50c42d567a3b4f5989e0",
            "type": "string"
          },
          "pendingUpload": {
            "description": "Whether there are pending uploads to this folder",
            "example": false,
            "type": "boolean"
          },
          "relocatedFolder": {
            "description": "Whether the folder has been moved from its original location",
            "example": false,
            "type": "boolean"
          },
          "status": {
            "description": "Current status of the folder",
            "type": "string"
          },
          "subCategory": {
            "description": "Sub-category of content stored in the folder",
            "example": "logo",
            "type": "string"
          },
          "type": {
            "description": "Type of the object (always 'folder' for folders)",
            "example": "folder",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "type"
        ],
        "type": "object"
      },
      "FollowupSequence": {
        "properties": {
          "aiEnabledMessage": {
            "default": true,
            "description": "Whether to use AI to generate the followup message",
            "example": true,
            "type": "boolean"
          },
          "contactRequested": {
            "description": "Whether contact was requested in this followup",
            "example": false,
            "type": "boolean"
          },
          "customMessage": {
            "description": "Custom message to send (when aiEnabledMessage is false)",
            "example": "Hi! Just following up on our previous conversation. Do you have any questions?",
            "type": "string"
          },
          "followupTime": {
            "description": "Time duration before followup (max: 60 minutes, 24 hours, or 180 days depending on unit)",
            "example": 2,
            "type": "number"
          },
          "followupTimeUnit": {
            "description": "Time unit for followup delay",
            "enum": [
              "days",
              "hours",
              "minutes"
            ],
            "example": "hours",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for this followup step",
            "example": 1,
            "type": "number"
          },
          "triggerWorkflow": {
            "default": false,
            "description": "Whether to trigger a workflow during this followup",
            "example": false,
            "type": "boolean"
          },
          "workflowId": {
            "description": "Workflow ID to trigger (when triggerWorkflow is true)",
            "example": "workflow789",
            "type": "string"
          }
        },
        "required": [
          "id",
          "followupTimeUnit",
          "followupTime"
        ],
        "type": "object"
      },
      "FollowupSettings": {
        "properties": {
          "dynamicChannelSwitching": {
            "default": true,
            "description": "Whether to dynamically switch channels for followups",
            "example": true,
            "type": "boolean"
          },
          "followUpHours": {
            "description": "Whether to respect working hours for followups",
            "example": true,
            "type": "boolean"
          },
          "timezoneToUse": {
            "description": "Timezone to use for followups, contact or location",
            "enum": [
              "contact",
              "business"
            ],
            "type": "string"
          },
          "workingHours": {
            "description": "Working hours configuration for followups",
            "items": {
              "$ref": "#/components/schemas/WorkingHours"
            },
            "type": "array"
          }
        },
        "required": [
          "dynamicChannelSwitching"
        ],
        "type": "object"
      },
      "Font": {
        "properties": {
          "fallback": {
            "description": "Fallback font family",
            "example": "sans-serif",
            "type": "string"
          },
          "font": {
            "description": "Font family name",
            "example": "Montserrat",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the font",
            "example": "font_def456",
            "type": "string"
          },
          "label": {
            "description": "Display label for the font",
            "example": "Heading Font",
            "type": "string"
          }
        },
        "required": [
          "font",
          "fallback",
          "label"
        ],
        "type": "object"
      },
      "FormQuestion": {
        "properties": {
          "key": {
            "description": "Question key",
            "example": "name",
            "type": "string"
          },
          "label": {
            "description": "Question label text shown to the user",
            "example": "What is your name?",
            "type": "string"
          },
          "options": {
            "description": "Answer options for multiple-choice questions (only applies to CUSTOM type)",
            "example": [
              {
                "value": "Yes"
              },
              {
                "value": "No"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/FormQuestionOption"
            },
            "type": "array"
          },
          "type": {
            "description": "Question input type — use a prefilled type for standard fields or CUSTOM / SHORT_ANSWER for freeform questions",
            "enum": [
              "CUSTOM",
              "CITY",
              "COMPANY_NAME",
              "COUNTRY",
              "DATE_OF_BIRTH",
              "EMAIL",
              "FIRST_NAME",
              "FULL_NAME",
              "GENDER",
              "JOB_TITLE",
              "LAST_NAME",
              "MARITIAL_STATUS",
              "MILITARY_STATUS",
              "PHONE",
              "POST_CODE",
              "RELATIONSHIP_STATUS",
              "STATE",
              "STREET_ADDRESS",
              "WORK_EMAIL",
              "WORK_PHONE_NUMBER",
              "ZIP",
              "SHORT_ANSWER"
            ],
            "example": "SHORT_ANSWER",
            "type": "string"
          }
        },
        "required": [
          "key",
          "type"
        ],
        "type": "object"
      },
      "FormQuestionOption": {
        "properties": {
          "key": {
            "description": "Option key",
            "example": "option 1",
            "type": "string"
          },
          "value": {
            "description": "Option value",
            "example": "Option 1",
            "type": "string"
          }
        },
        "required": [
          "key",
          "value"
        ],
        "type": "object"
      },
      "FormatedApprovalDetails": {
        "properties": {
          "approvalStatus": {
            "description": "Current approval status of the post.\n\n**Available Values:**\n- `pending` - Awaiting approver review\n- `approved` - Approved and ready for publishing\n- `rejected` - Rejected by approver (needs revision)\n- `not_required` - No approval workflow needed",
            "enum": [
              "pending",
              "approved",
              "rejected",
              "not_required"
            ],
            "example": "pending",
            "type": "string"
          },
          "approver": {
            "description": "User ID of the designated approver.\n\n**Note:** The approver will receive a notification when a post is submitted for review.",
            "example": "iVrVJ2uoXNF0wzcBzgl5",
            "type": "string"
          },
          "approverNote": {
            "description": "Note from the approver to the post creator with feedback or approval comments.",
            "example": "Approved! Great content. Consider adding more hashtags for visibility.",
            "type": "string"
          },
          "approverUser": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostUserSchema"
              }
            ],
            "description": "Approver User Details",
            "example": {
              "email": "abc@example.com",
              "firstName": "Harry",
              "id": "6284c43d519161e96cc09c13",
              "lastName": "Spencer",
              "title": "Mr"
            }
          },
          "requesterNote": {
            "description": "Note from the post creator to the approver explaining the post or requesting specific feedback.",
            "example": "Please review the messaging for our Q4 campaign launch. Let me know if the CTA needs adjustment.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FormsEventDataSchema": {
        "properties": {
          "adSource": {
            "example": "example-ad-source",
            "type": "string"
          },
          "contactSessionIds": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactSessionIds"
              }
            ],
            "nullable": true
          },
          "domain": {
            "example": "example.com",
            "type": "string"
          },
          "fbEventId": {
            "example": "event-id-789",
            "type": "string"
          },
          "fbc": {
            "example": "fb.1.123456789.987654321",
            "type": "string"
          },
          "fbp": {
            "example": "fbp.1.987654321.123456789",
            "type": "string"
          },
          "fingerprint": {
            "example": "example-fingerprint",
            "type": "string"
          },
          "medium": {
            "example": "form",
            "type": "string"
          },
          "mediumId": {
            "example": "medium-id-123",
            "type": "string"
          },
          "page": {
            "$ref": "#/components/schemas/PageDetailsSchema"
          },
          "pageVisitType": {
            "example": "form",
            "type": "string"
          },
          "parentId": {
            "example": "parent-id-456",
            "type": "string"
          },
          "parentName": {
            "example": "Parent Form",
            "type": "string"
          },
          "referrer": {
            "example": "https://staging.gohighlevel.com",
            "type": "string"
          },
          "source": {
            "example": "Direct traffic",
            "type": "string"
          },
          "timestamp": {
            "example": 1234567890,
            "type": "number"
          },
          "type": {
            "example": "page-visit",
            "type": "string"
          },
          "version": {
            "example": "v3",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FormsParams": {
        "properties": {
          "id": {
            "example": "YSWdvS4Is98wtIDGnpmI",
            "type": "string"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "example": "Form 1",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FormsSubmissionsSubmissionsSchema": {
        "properties": {
          "contactId": {
            "example": "DWQ45t2IPVxi9LDu1wBl",
            "type": "string"
          },
          "createdAt": {
            "example": "2021-06-23T06:07:04.000Z",
            "type": "string"
          },
          "email": {
            "example": "test@example.com",
            "type": "string"
          },
          "formId": {
            "example": "YSWdvS4Is98wtIDGnpmI",
            "type": "string"
          },
          "id": {
            "example": "38303ec7-629a-49e2-888a-cf8bf0b1f97e",
            "type": "string"
          },
          "name": {
            "example": "test",
            "type": "string"
          },
          "others": {
            "$ref": "#/components/schemas/FormsothersSchema"
          }
        },
        "type": "object"
      },
      "FormsSubmissionsSuccessfulResponseDto": {
        "properties": {
          "meta": {
            "$ref": "#/components/schemas/metaSchema"
          },
          "submissions": {
            "items": {
              "$ref": "#/components/schemas/FormsSubmissionsSubmissionsSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "FormsSuccessfulResponseDto": {
        "properties": {
          "forms": {
            "items": {
              "$ref": "#/components/schemas/FormsParams"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of forms",
            "example": "20",
            "type": "number"
          }
        },
        "type": "object"
      },
      "FormsothersSchema": {
        "properties": {
          "__custom_field_id__": {
            "example": "20",
            "type": "string"
          },
          "__submissions_other_field__": {
            "example": "john@example.com",
            "type": "string"
          },
          "eventData": {
            "$ref": "#/components/schemas/FormsEventDataSchema"
          },
          "fieldsOriSequance": {
            "example": [
              "full_name",
              "first_name",
              "last_name",
              "phone",
              "email"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "ForwardConfigDto": {
        "properties": {
          "emailMessageId": {
            "description": "Email Message ID of the specific email being forwarded (source) - Required for single email forward, ignored for thread forward",
            "example": "rnGyqh2F6uBrIkfhFo9A",
            "type": "string"
          },
          "forwardWholeThread": {
            "description": "Specify if forwarding the whole thread or just a single email",
            "example": false,
            "type": "boolean"
          },
          "isForwarded": {
            "description": "Specify if this is a forwarded email",
            "example": true,
            "type": "boolean"
          },
          "messageId": {
            "description": "Message ID of the email thread being forwarded (source) - REQUIRED for forwarding",
            "example": "t22c6DQcTDf3MjRhwf77",
            "type": "string"
          },
          "recipientContactId": {
            "description": "Contact ID of recipient when forwarding (destination)",
            "example": "DEF56h2F6uBrIkfXYacd",
            "type": "string"
          },
          "recipientConversationId": {
            "description": "Conversation ID of recipient when forwarding (destination)",
            "example": "GHI78h2F6uBrIkfXYefg",
            "type": "string"
          },
          "sourceContactId": {
            "description": "Contact ID where the forwarded email originated from (source) - Auto-populated if not provided",
            "example": "ABC12h2F6uBrIkfXYazb",
            "type": "string"
          },
          "sourceConversationId": {
            "description": "Conversation ID where the forwarded email originated from (source) - Auto-populated if not provided",
            "example": "XYZ12h2F6uBrIkfXYacd",
            "type": "string"
          },
          "toEmail": {
            "description": "Email address to forward to (destination)",
            "example": "forward@example.com",
            "type": "string"
          }
        },
        "required": [
          "isForwarded"
        ],
        "type": "object"
      },
      "ForwardResponseDto": {
        "properties": {
          "emailMessageId": {
            "description": "Email Message ID of the forwarded email (source)",
            "example": "rnGyqh2F6uBrIkfhFo9A",
            "type": "string"
          },
          "forwardToEmail": {
            "description": "Email address the message was forwarded to (destination)",
            "example": "recipient@example.com",
            "type": "string"
          },
          "forwardWholeThread": {
            "description": "Whether the entire thread was forwarded",
            "example": false,
            "type": "boolean"
          },
          "messageId": {
            "description": "Message ID of the forwarded message (source)",
            "example": "t22c6DQcTDf3MjRhwf77",
            "type": "string"
          },
          "recipientContactId": {
            "description": "Contact ID of the recipient of the forwarded email (destination)",
            "example": "DEF56h2F6uBrIkfXYacd",
            "type": "string"
          },
          "recipientConversationId": {
            "description": "Conversation ID of the recipient of the forwarded email (destination)",
            "example": "GHI78h2F6uBrIkfXYefg",
            "type": "string"
          },
          "sourceContactId": {
            "description": "Contact ID where the forwarded email originated from (source)",
            "example": "ABC12h2F6uBrIkfXYazb",
            "type": "string"
          },
          "sourceConversationId": {
            "description": "Conversation ID where the forwarded email originated from (source)",
            "example": "XYZ12h2F6uBrIkfXYacd",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FrequencySettingsDto": {
        "properties": {
          "enabled": {
            "description": "enabled for the frequency settings",
            "example": true,
            "type": "boolean"
          },
          "schedule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
              }
            ],
            "description": "schedule setting for the estimate"
          }
        },
        "required": [
          "enabled",
          "schedule"
        ],
        "type": "object"
      },
      "FulfilledItem": {
        "properties": {
          "_id": {
            "description": "The id of product price",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "name": {
            "description": "Name",
            "example": "Iphone 15 pro",
            "type": "string"
          },
          "price": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DefaultPriceResponseDto"
              }
            ],
            "description": "Price details"
          },
          "product": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DefaultProductResponseDto"
              }
            ],
            "description": "Product details"
          },
          "qty": {
            "description": "The no of quantity of the current fulfilled item",
            "example": 1,
            "type": "number"
          }
        },
        "required": [
          "_id",
          "name",
          "product",
          "price",
          "qty"
        ],
        "type": "object"
      },
      "FulfillmentItems": {
        "properties": {
          "priceId": {
            "description": "The id of product price",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "qty": {
            "description": "The no of quantity of the item",
            "example": 1,
            "type": "number"
          }
        },
        "required": [
          "priceId",
          "qty"
        ],
        "type": "object"
      },
      "FulfillmentSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the fulfillment item.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "items": {
            "description": "Fulfilled items",
            "items": {
              "$ref": "#/components/schemas/FulfilledItem"
            },
            "type": "array"
          },
          "trackings": {
            "description": "Fulfillment tracking information",
            "items": {
              "$ref": "#/components/schemas/FulfillmentTracking"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "trackings",
          "_id",
          "items",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "FulfillmentTracking": {
        "properties": {
          "shippingCarrier": {
            "description": "Shipping carrier name",
            "example": "FedEx",
            "type": "string"
          },
          "trackingNumber": {
            "description": "Tracking number provided by the shipping carrier",
            "example": "40012345678",
            "type": "string"
          },
          "trackingUrl": {
            "description": "Tracking URL",
            "example": "https://www.fedex.com/wtrk/track/?trknbr=40012345678",
            "type": "string"
          }
        },
        "type": "object"
      },
      "FunnelListResponseDTO": {
        "properties": {
          "count": {
            "example": 24,
            "type": "number"
          },
          "funnels": {
            "example": {
              "_id": "SkIDfu0S4m3NYQyvWHC6",
              "dateAdded": "2024-04-29T15:00:05.681Z",
              "dateUpdated": "2024-04-29T15:00:28.465Z",
              "deleted": false,
              "domainId": "",
              "faviconUrl": "",
              "globalSectionVersion": 1,
              "globalSectionsPath": "funnel/SkIDfu0S4m3NYQyvWHC6/global-sections-1",
              "globalSectionsUrl": "https://firebasestorage.googleapis.com/v0/b/highlevel-staging.appspot.com/o/funnel%2FSkIDfu0S4m3NYQyvWHC6%2Fglobal-sections-1?alt=media&token=9cc5c211-093b-4751-aeba-19282ac92955",
              "isStoreActive": false,
              "locationId": "ojQjykmwNIU88vfsfzvH",
              "name": "Chaitanya Copy",
              "orderFormVersion": 2,
              "originId": "hAmyh7jrJH5FfEEKAJ9z",
              "steps": [
                {
                  "id": "f5d178c0-8bbb-4cd4-927c-691c68a62c59",
                  "name": "Step 1",
                  "originId": "80b2f227-5bc8-4ca5-980d-817745ea4e8b",
                  "pages": [
                    "2IhBmBcQRx9JXV1JZsRt"
                  ],
                  "products": [],
                  "sequence": 1,
                  "type": "optin_funnel_page",
                  "url": "/newtestifypath"
                }
              ],
              "trackingCodeBody": "",
              "trackingCodeHead": "",
              "type": "funnel",
              "updatedAt": "2024-04-29T15:00:34.233Z",
              "url": "/chaitanya"
            },
            "type": "object"
          },
          "traceId": {
            "example": "03774d31-a57e-4b4f-95c7-315ce61969f1",
            "type": "string"
          }
        },
        "required": [
          "funnels",
          "count",
          "traceId"
        ],
        "type": "object"
      },
      "FunnelPageCountResponseDTO": {
        "properties": {
          "count": {
            "example": 20,
            "type": "number"
          }
        },
        "required": [
          "count"
        ],
        "type": "object"
      },
      "FunnelPageResponseDTO": {
        "properties": {
          "_id": {
            "example": "0yJbP3q7t7pLmeTWRAE2",
            "type": "string"
          },
          "deleted": {
            "example": false,
            "type": "string"
          },
          "funnelId": {
            "example": "iucJ6TdFZiddhq9f6znh",
            "type": "string"
          },
          "locationId": {
            "example": "ojQjykmwNIU88vfsfzvH",
            "type": "string"
          },
          "name": {
            "example": "Home",
            "type": "string"
          },
          "stepId": {
            "example": "343bf634-3aa6-4ade-b963-2d3cd0bf2ede",
            "type": "string"
          },
          "updatedAt": {
            "example": "2024-04-18T12:25:23.029Z",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "funnelId",
          "stepId",
          "deleted",
          "updatedAt",
          "_id"
        ],
        "type": "object"
      },
      "GMBPostSchema": {
        "properties": {
          "actionType": {
            "description": "Call-to-action button type for the post.\n\n**Available Actions:**\n- `none` - No action button\n- `order` - Order online\n- `book` - Book appointment\n- `shop` - Shop now\n- `learn_more` - Learn more\n- `call` - Call now (no URL required)\n- `sign_up` - Sign up\n\n**Note:** All actions except `none` and `call` require a `url`.",
            "enum": [
              "none",
              "order",
              "book",
              "shop",
              "learn_more",
              "call",
              "sign_up"
            ],
            "example": "book",
            "type": "string"
          },
          "couponCode": {
            "description": "Promotional coupon code. Required for OFFER posts.",
            "example": "SAVE50",
            "type": "string"
          },
          "endDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EndDateSchema"
              }
            ],
            "description": "End date and time for EVENT or OFFER posts.\n\n**Required:** When `gmbEventType` is `EVENT` or `OFFER`.\n**Validation:** Must be after `startDate`.\n\n**Structure:**\n- `endDate`: { year, month, day }\n- `endTime`: { hours, minutes, seconds }",
            "example": {
              "endDate": {
                "day": 20,
                "month": 1,
                "year": 2024
              },
              "endTime": {
                "hours": 18,
                "minutes": 0,
                "seconds": 0
              }
            }
          },
          "gmbEventType": {
            "description": "Google My Business post type.\n\n**Available Types:**\n- `STANDARD` - Regular update post (What's New)\n- `EVENT` - Event announcement with dates and title\n- `OFFER` - Promotional offer with coupon and redemption details\n\n**Required fields by type:**\n- STANDARD: None additional\n- EVENT: `title`, `startDate`, `endDate`\n- OFFER: `offerTitle`, `startDate`, `endDate`, `termsConditions`, `couponCode`, `redeemOnlineUrl`",
            "enum": [
              "STANDARD",
              "EVENT",
              "OFFER"
            ],
            "example": "STANDARD",
            "type": "string"
          },
          "offerTitle": {
            "description": "Offer title. Required when `gmbEventType` is `OFFER`.",
            "example": "50% Off All Products",
            "type": "string"
          },
          "redeemOnlineUrl": {
            "description": "URL where customers can redeem the offer online. Required for OFFER posts.",
            "example": "https://yoursite.com/redeem-offer",
            "type": "string"
          },
          "startDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StartDateSchema"
              }
            ],
            "description": "Start date and time for EVENT or OFFER posts.\n\n**Required:** When `gmbEventType` is `EVENT` or `OFFER`.\n\n**Structure:**\n- `startDate`: { year, month, day }\n- `startTime`: { hours, minutes, seconds }",
            "example": {
              "startDate": {
                "day": 15,
                "month": 1,
                "year": 2024
              },
              "startTime": {
                "hours": 10,
                "minutes": 0,
                "seconds": 0
              }
            }
          },
          "termsConditions": {
            "description": "URL to terms and conditions page. Required for OFFER posts.",
            "example": "https://yoursite.com/terms-and-conditions",
            "type": "string"
          },
          "title": {
            "description": "Event title. Required when `gmbEventType` is `EVENT`.\n\n**Max length:** 58 characters",
            "example": "Summer Sale Event 2024",
            "type": "string"
          },
          "url": {
            "description": "Call-to-action URL. Required when `actionType` is set (except `none` and `call`).\n\n**Required for:** STANDARD and EVENT posts with actionType other than `none` or `call`.",
            "example": "https://yoursite.com/book-now",
            "type": "string"
          }
        },
        "required": [
          "gmbEventType"
        ],
        "type": "object"
      },
      "GeneralSuccessResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "The queue item has been successfully deleted.",
            "type": "string"
          },
          "totalPostsChanged": {
            "description": "Number of unique posts that had their slots changed",
            "example": 5,
            "type": "number"
          },
          "updatedSlots": {
            "description": "Updated slot information for items affected by the operation",
            "items": {
              "$ref": "#/components/schemas/UpdatedSlotInfoDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GenerateEstimateNumberResponse": {
        "properties": {
          "estimateNumber": {
            "type": "number"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "estimateNumber",
          "traceId"
        ],
        "type": "object"
      },
      "GenerateInvoiceNumberResponseDto": {
        "properties": {
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "19",
            "type": "number"
          }
        },
        "type": "object"
      },
      "GeoAddressComponentDTO": {
        "properties": {
          "longName": {
            "description": "Full name of the address component",
            "example": "New York",
            "type": "string"
          },
          "shortName": {
            "description": "Abbreviated name of the address component",
            "example": "NY",
            "type": "string"
          },
          "types": {
            "description": "Address component types",
            "example": [
              "locality",
              "political"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GeoGeometryDTO": {
        "properties": {
          "location": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GeoLatLngDTO"
              }
            ],
            "description": "Location coordinates",
            "example": {
              "lat": 40.7128,
              "lng": -74.006
            }
          },
          "locationType": {
            "description": "Location type (e.g. APPROXIMATE)",
            "example": "APPROXIMATE",
            "type": "string"
          },
          "viewport": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GeoViewportDTO"
              }
            ],
            "description": "Viewport bounding box",
            "example": {
              "northeast": {
                "lat": 40.8,
                "lng": -73.9
              },
              "southwest": {
                "lat": 40.6,
                "lng": -74.1
              }
            }
          }
        },
        "type": "object"
      },
      "GeoLatLngDTO": {
        "properties": {
          "lat": {
            "description": "Latitude",
            "example": 40.7128,
            "type": "number"
          },
          "lng": {
            "description": "Longitude",
            "example": -74.006,
            "type": "number"
          }
        },
        "type": "object"
      },
      "GeoLocationDTO": {
        "properties": {
          "facetUrn": {
            "description": "Facet URN",
            "example": "urn:li:adTargetingFacet:locations",
            "type": "string"
          },
          "name": {
            "description": "Location display name",
            "example": "India",
            "type": "string"
          },
          "selectionType": {
            "description": "Selection type",
            "enum": [
              "include",
              "exclude"
            ],
            "example": "include",
            "type": "string"
          },
          "urn": {
            "description": "Location URN",
            "example": "urn:li:geo:12321321",
            "type": "string"
          }
        },
        "required": [
          "name",
          "urn",
          "facetUrn",
          "selectionType"
        ],
        "type": "object"
      },
      "GeoViewportDTO": {
        "properties": {
          "northeast": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GeoLatLngDTO"
              }
            ],
            "description": "Northeast corner of the viewport",
            "example": {
              "lat": 40.8,
              "lng": -73.9
            }
          },
          "southwest": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GeoLatLngDTO"
              }
            ],
            "description": "Southwest corner of the viewport",
            "example": {
              "lat": 40.6,
              "lng": -74.1
            }
          }
        },
        "type": "object"
      },
      "GetAccessTokenBodyDto": {
        "properties": {
          "clientId": {
            "description": "The ID provided by CRM for your integration",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "clientSecret": {
            "description": "The client secret provided by CRM for your integration",
            "example": "ab12dc0ae1234a7898f9ff06d4f69gh",
            "type": "string"
          },
          "code": {
            "description": "The authorization code received from the authorization endpoint (required for authorization_code grant)",
            "example": "ab12dc0ae1234a7898f9ff06d4f69gh",
            "type": "string"
          },
          "grantType": {
            "description": "The OAuth2 grant type — authorization_code, refresh_token, or client_credentials",
            "enum": [
              "authorization_code",
              "refresh_token",
              "client_credentials"
            ],
            "example": "authorization_code",
            "type": "string"
          },
          "redirectUri": {
            "description": "The redirect URI for your application",
            "example": "https://myapp.com/oauth/callback/crm",
            "type": "string"
          },
          "refreshToken": {
            "description": "The refresh token used to obtain a new access token (required for refresh_token grant)",
            "example": "xy34dc0ae1234a4858f9ff06d4f66ba",
            "type": "string"
          },
          "userType": {
            "description": "The type of token to be requested",
            "enum": [
              "Company",
              "Location"
            ],
            "example": "Location",
            "type": "string"
          }
        },
        "required": [
          "clientId",
          "clientSecret",
          "grantType"
        ],
        "type": "object"
      },
      "GetAccessTokenSuccessfulResponseDto": {
        "properties": {
          "accessToken": {
            "description": "The OAuth2 access token",
            "example": "ab12dc0ae1234a7898f9ff06d4f69gh",
            "type": "string"
          },
          "approveAllLocations": {
            "description": "Boolean indicating if user approved all locations during bulk installation (only for company tokens)",
            "example": true,
            "type": "boolean"
          },
          "approvedLocations": {
            "description": "Approved locations to generate location access token",
            "example": [
              "l1C08ntBrFjLS0elLIYU"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "companyId": {
            "description": "Company ID",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "expiresIn": {
            "description": "Time in seconds until the access token expires",
            "example": 86399,
            "type": "number"
          },
          "installToFutureLocations": {
            "description": "Boolean to control if user wants app to be automatically installed to future locations (only for company tokens)",
            "example": true,
            "type": "boolean"
          },
          "isBulkInstallation": {
            "description": "Indicates whether the installation was performed as a bulk installation",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID - Present only for Sub-Account Access Token",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "planId": {
            "description": "Plan Id of the subscribed plan in paid apps.",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "refreshToken": {
            "description": "The OAuth2 refresh token used to obtain a new access token",
            "example": "xy34dc0ae1234a4858f9ff06d4f66ba",
            "type": "string"
          },
          "scope": {
            "description": "Space-separated list of scopes the access token has access to",
            "example": "conversations/message.readonly conversations/message.write",
            "type": "string"
          },
          "tokenType": {
            "description": "The token type (always Bearer)",
            "example": "Bearer",
            "type": "string"
          },
          "userId": {
            "description": "USER ID - Represent user id of person who performed installation",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "userType": {
            "description": "The user type associated with the token (Location or Company)",
            "example": "Location",
            "type": "string"
          }
        },
        "required": [
          "userId"
        ],
        "type": "object"
      },
      "GetAccountSchema": {
        "properties": {
          "expire": {
            "description": "Token expiration date and time",
            "example": "2024-03-11T19:29:59.785Z",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the connected account",
            "example": "aF3KhyL8JIuBwzK3m7Ly_Lx1EI6YIgQYMQi0ytFXv_12554616564525983496",
            "type": "string"
          },
          "isExpired": {
            "description": "Indicates if the account token has expired",
            "example": false,
            "type": "boolean"
          },
          "meta": {
            "description": "Additional metadata for the account",
            "example": {
              "canDelete": true,
              "hasGoogleUpdated": true
            },
            "type": "object"
          },
          "name": {
            "description": "Display name of the account",
            "example": "Sample Account",
            "type": "string"
          },
          "oauthId": {
            "description": "OAuth provider account identifier",
            "example": "aF3KhyL8JIuBwzK3m7Ly",
            "type": "string"
          },
          "platform": {
            "description": "platform must be one of the following values: google, facebook, instagram, linkedin, tiktok",
            "example": "google",
            "type": "string"
          },
          "profileId": {
            "description": "Profile identifier from the social media platform",
            "example": "aF3KhyL8JIuBwzK3m7Ly",
            "type": "string"
          },
          "type": {
            "description": "Type of account (e.g., location, page, profile)",
            "example": "location",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetActionResponseDTO": {
        "properties": {
          "actionParameters": {
            "description": "Action parameters - structure varies by actionType",
            "examples": {
              "callTransfer": {
                "summary": "Call Transfer Action Parameters",
                "value": {
                  "hearWhisperMessage": true,
                  "transferToType": "number",
                  "transferToValue": "+12345678901",
                  "triggerMessage": "Let me transfer you to a manager right away"
                }
              },
              "dataExtraction": {
                "summary": "Data Extraction Action Parameters",
                "value": {
                  "contactFieldId": "507f1f77bcf86cd799439011",
                  "description": "Caller's phone number",
                  "examples": [
                    "+1234567890",
                    "+9876543210"
                  ],
                  "overwriteExistingValue": false
                }
              },
              "workflowTrigger": {
                "summary": "Workflow Trigger Action Parameters",
                "value": {
                  "triggerMessage": "Let me start that process for you",
                  "triggerPrompt": "When caller requests a quote",
                  "workflowId": "507f1f77bcf86cd799439011"
                }
              }
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallTransferActionParameters"
              },
              {
                "$ref": "#/components/schemas/DataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/InCallDataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/WorkflowTriggerParameters"
              },
              {
                "$ref": "#/components/schemas/SMSParameters"
              },
              {
                "$ref": "#/components/schemas/AppointmentBookingActionParameters"
              },
              {
                "$ref": "#/components/schemas/CustomActionParameters"
              },
              {
                "$ref": "#/components/schemas/KnowledgeBaseParameters"
              }
            ]
          },
          "actionType": {
            "description": "Type of action",
            "enum": [
              "CALL_TRANSFER",
              "DATA_EXTRACTION",
              "IN_CALL_DATA_EXTRACTION",
              "WORKFLOW_TRIGGER",
              "SMS",
              "APPOINTMENT_BOOKING",
              "CUSTOM_ACTION",
              "KNOWLEDGE_BASE"
            ],
            "example": "CALL_TRANSFER",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for this action",
            "example": "Transfer to Manager",
            "type": "string"
          }
        },
        "required": [
          "id",
          "actionType",
          "name",
          "actionParameters"
        ],
        "type": "object"
      },
      "GetAffiliateResponseDto": {
        "properties": {
          "_id": {
            "description": "Affiliate id",
            "example": "63d147176c5bbc30e9e091a4",
            "type": "string"
          },
          "active": {
            "description": "Whether the affiliate is active",
            "example": true,
            "type": "boolean"
          },
          "address": {
            "description": "Affiliate address",
            "example": "123 Main St",
            "type": "string"
          },
          "avatar": {
            "description": "Affiliate avatar URL",
            "example": "https://example.com/avatar.png",
            "type": "string"
          },
          "campaignIds": {
            "description": "Campaign ids",
            "example": [
              "650173614761b33c46d33b19"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "clickCount": {
            "description": "Click count",
            "example": 100,
            "type": "number"
          },
          "contactId": {
            "description": "Contact id associated with the affiliate",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2024-06-16T00:00:00.000Z",
            "type": "string"
          },
          "createdBy": {
            "description": "Created by audit info",
            "type": "object"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "customer": {
            "description": "Customer count",
            "example": 15,
            "type": "number"
          },
          "deleted": {
            "description": "Whether the affiliate is deleted",
            "example": false,
            "type": "boolean"
          },
          "droppedCustomer": {
            "description": "Dropped customer count",
            "example": 2,
            "type": "number"
          },
          "email": {
            "description": "Affiliate email",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "facebookUrl": {
            "description": "Facebook URL",
            "example": "https://facebook.com/johndoe",
            "type": "string"
          },
          "firstName": {
            "description": "Affiliate first name",
            "example": "John",
            "type": "string"
          },
          "instagramUrl": {
            "description": "Instagram URL",
            "example": "https://instagram.com/johndoe",
            "type": "string"
          },
          "lastName": {
            "description": "Affiliate last name",
            "example": "Doe",
            "type": "string"
          },
          "lastUpdatedBy": {
            "description": "Last updated by audit info",
            "type": "object"
          },
          "lead": {
            "description": "Lead count",
            "example": 5,
            "type": "number"
          },
          "linkedInUrl": {
            "description": "LinkedIn URL",
            "example": "https://linkedin.com/in/johndoe",
            "type": "string"
          },
          "locationId": {
            "description": "Location id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "owned": {
            "description": "Owned amount",
            "example": 750,
            "type": "number"
          },
          "paid": {
            "description": "Paid amount",
            "example": 500,
            "type": "number"
          },
          "phone": {
            "description": "Affiliate phone number",
            "example": "+1 888 888-8888",
            "type": "string"
          },
          "revenue": {
            "description": "Affiliate revenue",
            "example": 1250.5,
            "type": "number"
          },
          "twitterUrl": {
            "description": "Twitter URL",
            "example": "https://twitter.com/johndoe",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated at timestamp",
            "example": "2024-06-16T00:00:00.000Z",
            "type": "string"
          },
          "vatId": {
            "description": "VAT ID",
            "example": "VAT123",
            "type": "string"
          },
          "w8Form": {
            "description": "W8 form URL",
            "type": "string"
          },
          "w9Form": {
            "description": "W9 form URL",
            "type": "string"
          },
          "websiteUrl": {
            "description": "Website URL",
            "example": "https://example.com",
            "type": "string"
          },
          "youtubeUrl": {
            "description": "YouTube URL",
            "example": "https://youtube.com/channel",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "locationId",
          "email"
        ],
        "type": "object"
      },
      "GetAgentByIdResponseDTO": {
        "properties": {
          "agent": {
            "description": "Agent metadata with all active versions",
            "example": {
              "agencyId": "5DP4iH6HLkQsiKESj6rh",
              "agentId": "AgfS2JXWsSN8aXb5c4d2",
              "authorId": "usr_123",
              "createdAt": "2026-03-06T10:37:01.013Z",
              "deleted": false,
              "description": "AI agent for customer support",
              "folderId": "vEoIigWSAw1BQA9DEchD",
              "folderName": "Default Agents",
              "id": "d6a6792d-0d50-4e8f-9c3b-ecd8096d0bdd",
              "locationId": "C2QujeCh8ZnC7al2InWR",
              "name": "Customer Support Agent",
              "productId": "agent_studio",
              "productSlug": "agent_studio",
              "productionVersion": {
                "inputVariables": [],
                "isPublished": true,
                "updatedAt": "2026-03-02T06:53:40.570Z",
                "versionId": "Ver1K8sSF2nC7al5InWz",
                "versionName": "Content Creation Agent v1"
              },
              "status": "active",
              "updatedAt": "2026-03-06T10:37:01.014Z",
              "versions": [
                {
                  "agencyId": "5DP4iH6HLkQsiKESj6rh",
                  "agentId": "AgfS2JXWsSN8aXb5c4d2",
                  "bucketFilePath": "agent-definitions/5DP4iH6HLkQsiKESj6rh/vEoIigWSAw1BQA9DEchD/d6a6792d-0d50-4e8f-9c3b-ecd8096d0bdd/3f9d9ab7-5ca4-4e64-8472-eab9e77a0fe3.json",
                  "createdAt": "2026-03-06T10:37:01.079Z",
                  "deleted": false,
                  "description": "AI agent for customer support",
                  "edges": [],
                  "globalConfig": {},
                  "globalVariables": [],
                  "id": "3f9d9ab7-5ca4-4e64-8472-eab9e77a0fe3",
                  "inputVariables": [],
                  "isPublished": false,
                  "locationId": "C2QujeCh8ZnC7al2InWR",
                  "nodes": [],
                  "runtimeVariables": [],
                  "scopes": [],
                  "state": "staging",
                  "storedInBucket": true,
                  "uiEdges": [],
                  "uiNodes": [],
                  "updatedAt": "2026-03-06T10:37:01.079Z",
                  "versionId": "Ver1K8sSF2nC7al5InWz",
                  "versionName": "v1",
                  "viewport": {
                    "x": 0,
                    "y": 0,
                    "zoom": 1
                  }
                }
              ]
            },
            "type": "object"
          },
          "message": {
            "description": "Response message",
            "example": "Agent retrieved successfully",
            "type": "string"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "description": "Request trace ID for debugging",
            "example": "22dbda99-13d3-4b4d-a30e-c468334e2178",
            "type": "string"
          }
        },
        "required": [
          "success",
          "message",
          "agent"
        ],
        "type": "object"
      },
      "GetAgentResponseDTO": {
        "properties": {
          "actions": {
            "description": "Raw actions configured for this agent with complete actionParameters structure",
            "example": [
              {
                "_id": "507f1f77bcf86cd799439011",
                "actionParameters": {
                  "transferToType": "number",
                  "transferToValue": "+1234567890",
                  "triggerMessage": "Let me transfer you",
                  "triggerPrompt": "When caller asks for manager"
                },
                "actionType": "CALL_TRANSFER",
                "name": "Transfer to Manager"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AgentActionResponseDTO"
            },
            "type": "array"
          },
          "agentName": {
            "description": "Display name of the voice AI agent",
            "example": "Customer Support Agent",
            "type": "string"
          },
          "agentPrompt": {
            "description": "Custom instructions defining the agent's behavior",
            "example": "You are a helpful customer service representative.",
            "type": "string"
          },
          "agentWorkingHours": {
            "description": "Time intervals when the agent accepts calls, organized by day of week",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/AgentWorkingHoursDTO"
            },
            "type": "array"
          },
          "businessName": {
            "description": "Name of the business this agent represents",
            "example": "Acme Corporation",
            "type": "string"
          },
          "callEndWorkflowIds": {
            "description": "Array of workflow IDs triggered automatically when calls end",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Unique identifier for the created agent",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "inboundNumber": {
            "description": "Phone number for receiving inbound calls",
            "example": "+1234567890",
            "type": "string"
          },
          "isAgentAsBackupDisabled": {
            "description": "Indicates whether this agent is excluded from backup scenarios",
            "example": false,
            "type": "boolean"
          },
          "language": {
            "description": "Language code for the agent's speech and understanding",
            "example": "en-US",
            "type": "string"
          },
          "locationId": {
            "description": "Unique identifier for the location where this agent operates",
            "example": "LOC123456789ABCDEF",
            "type": "string"
          },
          "maxCallDuration": {
            "description": "Maximum call duration in seconds, between 180-900",
            "example": 600,
            "maximum": 900,
            "minimum": 180,
            "type": "number"
          },
          "numberPoolId": {
            "description": "Identifier for the number pool managing this agent's phone allocation",
            "example": "pool_507f1f77bcf86cd799439011",
            "type": "string"
          },
          "patienceLevel": {
            "description": "Current tolerance level for caller response delays",
            "example": "medium",
            "type": "string"
          },
          "reminderAfterIdleTimeSeconds": {
            "description": "Seconds to wait before sending idle reminders, between 1-20",
            "example": 5,
            "maximum": 20,
            "minimum": 1,
            "type": "number"
          },
          "sendPostCallNotificationTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendPostCallNotificationSchema"
              }
            ],
            "description": "Current post-call notification settings including recipient configuration"
          },
          "sendUserIdleReminders": {
            "description": "Indicates whether automatic idle reminders are enabled",
            "example": true,
            "type": "boolean"
          },
          "timezone": {
            "description": "IANA timezone identifier for working hours and scheduling",
            "example": "America/New_York",
            "type": "string"
          },
          "translation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranslationSchema"
              }
            ],
            "description": "Current language translation settings including enablement status and target language"
          },
          "voiceId": {
            "description": "Identifier for the speech synthesis voice being used",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "welcomeMessage": {
            "description": "Greeting message spoken when the agent answers calls",
            "example": "Hello! Thank you for calling. How can I assist you today?",
            "type": "string"
          }
        },
        "required": [
          "id",
          "locationId",
          "agentName",
          "businessName",
          "welcomeMessage",
          "agentPrompt",
          "voiceId",
          "language",
          "patienceLevel",
          "maxCallDuration",
          "sendUserIdleReminders",
          "reminderAfterIdleTimeSeconds",
          "timezone",
          "isAgentAsBackupDisabled",
          "actions"
        ],
        "type": "object"
      },
      "GetAgentsResponseDTO": {
        "properties": {
          "agents": {
            "items": {
              "$ref": "#/components/schemas/GetAgentResponseDTO"
            },
            "type": "array"
          },
          "page": {
            "description": "Page number starting from 1",
            "example": 2,
            "type": "number"
          },
          "pageSize": {
            "description": "Number of items per page",
            "example": 10,
            "type": "number"
          },
          "total": {
            "description": "Total number of items",
            "example": 150,
            "type": "number"
          }
        },
        "required": [
          "total",
          "page",
          "pageSize",
          "agents"
        ],
        "type": "object"
      },
      "GetAllKnowledgeBasesPaginatedDataDTO": {
        "properties": {
          "activeCount": {
            "description": "Total count of all active knowledge bases",
            "example": 16,
            "type": "number"
          },
          "hasMore": {
            "description": "Whether there are more knowledge bases available",
            "example": true,
            "type": "boolean"
          },
          "knowledgeBases": {
            "description": "Array of knowledge bases",
            "items": {
              "$ref": "#/components/schemas/KnowledgeBaseListItemDTO"
            },
            "type": "array"
          },
          "lastKnowledgeBaseId": {
            "description": "ID of the last knowledge base in this page (use for next page request)",
            "example": "ZwTB8S0yo0FIBY6OPZTD",
            "type": "string"
          }
        },
        "required": [
          "knowledgeBases",
          "activeCount",
          "hasMore"
        ],
        "type": "object"
      },
      "GetAllKnowledgeBasesPaginatedResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetAllKnowledgeBasesPaginatedDataDTO"
              }
            ],
            "description": "Paginated knowledge bases data"
          },
          "success": {
            "description": "Success status of the operation",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "data"
        ],
        "type": "object"
      },
      "GetAllSchedulesResponseDTO": {
        "properties": {
          "schedules": {
            "description": "Array of schedules",
            "items": {
              "$ref": "#/components/schemas/ScheduleObjectResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "schedules"
        ],
        "type": "object"
      },
      "GetAllUrlsByKnowledgeBaseResponseDTO": {
        "properties": {
          "count": {
            "description": "Total count of URLs in the knowledge base",
            "example": 64,
            "type": "number"
          },
          "urls": {
            "description": "Array of crawled URLs with their details",
            "items": {
              "$ref": "#/components/schemas/CrawledUrlDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "count",
          "urls"
        ],
        "type": "object"
      },
      "GetAvailableShippingRates": {
        "properties": {
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactAddress"
              }
            ],
            "description": "Address of the customer"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amountAvailable": {
            "description": "it will not calculate the order amount form backend if it is true",
            "enum": [
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CA",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "KR",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "GB",
              "UA",
              "AE",
              "US",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "country": {
            "description": "Country code of the customer",
            "enum": [
              "US",
              "CA",
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "KR",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "UA",
              "AE",
              "GB",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "couponCode": {
            "description": "Coupon code",
            "example": "TEST",
            "type": "string"
          },
          "products": {
            "description": "An array of price IDs and quantity",
            "items": {
              "$ref": "#/components/schemas/ProductItem"
            },
            "type": "array"
          },
          "source": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreOrderSource"
              }
            ],
            "description": "Source of the order",
            "example": {
              "subType": "store",
              "type": "order"
            }
          },
          "totalOrderAmount": {
            "description": "The amount of the price. ( min: 0.01 )",
            "example": 99.99,
            "type": "number"
          },
          "totalOrderWeight": {
            "description": "Estimated weight of the order calculated from the order creation side in kg(s)",
            "example": 10,
            "type": "number"
          },
          "weightAvailable": {
            "description": "Flag to pass when the weight is already calculated and should not calculate again",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "altId",
          "altType",
          "country",
          "totalOrderAmount",
          "totalOrderWeight",
          "source",
          "products"
        ],
        "type": "object"
      },
      "GetAvailableShippingRatesResponseDto": {
        "properties": {
          "data": {
            "description": "Shipping rate data",
            "items": {
              "$ref": "#/components/schemas/AvailableShippingRate"
            },
            "type": "array"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "GetBrandBoardSuccessDTO": {
        "properties": {
          "_id": {
            "description": "Brand board ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "colors": {
            "description": "Array of brand colors",
            "example": [
              {
                "hex": "#FF5733",
                "hexa": "#FF5733FF",
                "label": "Brand Orange",
                "rgb": "rgb(255, 87, 51)",
                "rgba": "rgba(255, 87, 51, 1)"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Color"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          },
          "default": {
            "description": "Whether this is the default brand board for the location",
            "example": false,
            "type": "boolean"
          },
          "deleted": {
            "description": "Whether the brand board has been soft deleted",
            "example": false,
            "type": "boolean"
          },
          "folderId": {
            "description": "Media library folder ID for this brand board",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "fonts": {
            "description": "Array of brand fonts",
            "example": [
              {
                "fallback": "sans-serif",
                "font": "Montserrat",
                "label": "Heading Font"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Font"
            },
            "type": "array"
          },
          "locationId": {
            "description": "Location ID",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "logos": {
            "description": "Array of logos",
            "example": [
              {
                "label": "Primary Logo",
                "path": "/locations/ve9EPM428h8vShlRW1KT/logos/my-logo.png",
                "url": "https://storage.googleapis.com/bucket/logos/my-logo.png"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Logo"
            },
            "type": "array"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MetaData"
              }
            ],
            "description": "Metadata about the brand board"
          },
          "missingAssets": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MissingAssets"
              }
            ],
            "description": "Assets that used fallbacks/defaults (only returned when creating from URL)"
          },
          "name": {
            "description": "Brand board name",
            "example": "My Brand Board",
            "type": "string"
          },
          "originId": {
            "description": "Original brand board ID if cloned from snapshot",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "parentId": {
            "description": "Parent folder ID in media library",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "locationId",
          "name",
          "default",
          "deleted"
        ],
        "type": "object"
      },
      "GetBrandBoardsByLocationSuccessDTO": {
        "properties": {
          "brandBoards": {
            "description": "Array of brand boards for the location",
            "example": [
              {
                "_id": "507f1f77bcf86cd799439011",
                "default": true,
                "meta": {
                  "lastAction": "UPDATE",
                  "sourceType": "blank",
                  "updatedBy": "user_abc123"
                },
                "name": "My Brand Board",
                "updatedAt": "2024-01-05T12:00:00.000Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/BrandBoardListItemDTO"
            },
            "type": "array"
          },
          "totalCount": {
            "description": "Total number of brand boards matching the query",
            "example": 42,
            "type": "number"
          }
        },
        "required": [
          "brandBoards",
          "totalCount"
        ],
        "type": "object"
      },
      "GetBrandVoicePublicV1ResponseDto": {
        "properties": {
          "answers": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BrandVoiceAnswersPublicV1Dto"
              }
            ],
            "description": "Brand voice answers"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the brand voice has been soft deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Brand voice ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isDefault": {
            "description": "Whether this is the default brand voice",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "oHJiAh0wDG3BzmzACVD6",
            "type": "string"
          },
          "name": {
            "description": "Brand voice name",
            "example": "My Brand Voice",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "isDefault",
          "createdAt",
          "updatedAt",
          "locationId",
          "deleted"
        ],
        "type": "object"
      },
      "GetBulkActionCampaignPublicV2ResponseDto": {
        "properties": {
          "completedAt": {
            "description": "Processing completion timestamp",
            "example": "2025-07-24T11:55:48.000Z",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "editorContentUrl": {
            "description": "URL to fetch the rendered campaign content as HTML. Issue a GET against this URL to retrieve the body.",
            "example": "https://storage.googleapis.com/email-templates/abc123.html",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type for this campaign",
            "enum": [
              "html",
              "builder",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Campaign ID",
            "example": "OI72xYec4Mho6VBykTvj",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether the campaign uses plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Campaign name",
            "example": "Test Mail",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Check out our latest updates",
            "type": "string"
          },
          "replyToAddress": {
            "description": "Reply-to email address",
            "example": "reply@example.com",
            "type": "string"
          },
          "scheduleType": {
            "description": "Schedule type (NOW, SCHEDULED, or DRIP)",
            "enum": [
              "NOW",
              "SCHEDULED",
              "DRIP"
            ],
            "example": "SCHEDULED",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "email-marketing",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "115b9030-907c-474c-90a5-2debd838a024",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "processing",
              "scheduled",
              "paused",
              "complete",
              "cancelled"
            ],
            "example": "complete",
            "type": "string"
          },
          "subject": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "status",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetBulkActionCampaignsResponseDto": {
        "properties": {
          "campaigns": {
            "description": "List of bulk action campaigns",
            "items": {
              "$ref": "#/components/schemas/BulkActionCampaignDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of bulk action campaigns",
            "example": 25,
            "type": "number"
          }
        },
        "required": [
          "campaigns",
          "total"
        ],
        "type": "object"
      },
      "GetBusinessByIdResponseDto": {
        "properties": {
          "business": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDto"
              }
            ],
            "description": "Business Response"
          }
        },
        "required": [
          "business"
        ],
        "type": "object"
      },
      "GetBusinessByLocationResponseDto": {
        "properties": {
          "businesses": {
            "description": "Business Response",
            "items": {
              "$ref": "#/components/schemas/BusinessDto"
            },
            "type": "array"
          }
        },
        "required": [
          "businesses"
        ],
        "type": "object"
      },
      "GetByIdResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Category",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetCategorySchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "GetByIdResponseSchema": {
        "properties": {
          "_id": {
            "description": "ID",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "createdAt": {
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "Created By User",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "deleted": {
            "description": "Deleted Value",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "message": {
            "description": "Message",
            "example": "Category not found",
            "type": "string"
          },
          "name": {
            "description": "Category Name",
            "example": "Primary",
            "type": "string"
          },
          "primaryColor": {
            "description": "Color For Category",
            "example": "#32a852",
            "type": "string"
          },
          "secondaryColor": {
            "description": "Secondary Color",
            "example": "#32a852",
            "type": "string"
          },
          "updatedAt": {
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "deleted"
        ],
        "type": "object"
      },
      "GetByLocationIdResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Categories by Location ID",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetByLocationIdResponseSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "GetByLocationIdResponseSchema": {
        "properties": {
          "categories": {
            "description": "Meta Data",
            "items": {
              "$ref": "#/components/schemas/CategorySchema"
            },
            "type": "array"
          },
          "count": {
            "description": "Count",
            "example": 3,
            "type": "number"
          }
        },
        "required": [
          "count",
          "categories"
        ],
        "type": "object"
      },
      "GetCalendarEventSuccessfulResponseDTO": {
        "properties": {
          "event": {
            "$ref": "#/components/schemas/CalendarEventDTO"
          }
        },
        "type": "object"
      },
      "GetCalendarEventsSuccessfulResponseDTO": {
        "properties": {
          "events": {
            "items": {
              "$ref": "#/components/schemas/CalendarEventDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetCampaignStatsPublicV2ResponseDto": {
        "properties": {
          "locationId": {
            "description": "Location ID",
            "example": "abc123",
            "type": "string"
          },
          "source": {
            "description": "Source type",
            "enum": [
              "email-campaigns",
              "workflow-campaigns",
              "bulk-actions"
            ],
            "example": "email-campaigns",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID",
            "example": "campaign123",
            "type": "string"
          },
          "stats": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EmailStatsNumbersPublicV2Dto"
              }
            ],
            "description": "Email performance metrics",
            "example": {
              "accepted": 5,
              "bounceRate": 1.76,
              "clickRate": 12,
              "clicked": 120,
              "complained": 2,
              "complaintRate": 0.2,
              "delivered": 1000,
              "failed": 5,
              "openRate": 45,
              "opened": 450,
              "permanentFail": 15,
              "rejected": 10,
              "replied": 25,
              "replyRate": 2.5,
              "sent": 1020,
              "temporaryFail": 3,
              "unsubscribeRate": 0.5,
              "unsubscribed": 5
            }
          },
          "subSourceId": {
            "description": "Workflow action ID",
            "example": "step001",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "source",
          "sourceId",
          "stats"
        ],
        "type": "object"
      },
      "GetCampaignStatsResponseDto": {
        "properties": {
          "locationId": {
            "description": "Location ID",
            "example": "abc123",
            "type": "string"
          },
          "source": {
            "description": "Source type",
            "enum": [
              "email-campaigns",
              "workflow-campaigns",
              "bulk-actions"
            ],
            "example": "email-campaigns",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID",
            "example": "campaign123",
            "type": "string"
          },
          "stats": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EmailStatsNumbersDto"
              }
            ],
            "description": "Email performance metrics"
          },
          "subSourceId": {
            "description": "Workflow action ID",
            "example": "step001",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "source",
          "sourceId",
          "stats"
        ],
        "type": "object"
      },
      "GetCategorySchema": {
        "properties": {
          "category": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetByIdResponseSchema"
              }
            ],
            "description": "Category Schema"
          }
        },
        "type": "object"
      },
      "GetCommissionListResponseDto": {
        "properties": {
          "commissions": {
            "description": "Commission list",
            "items": {
              "$ref": "#/components/schemas/CommissionListItemResponseDto"
            },
            "type": "array"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CommissionListMetaResponseDto"
              }
            ],
            "description": "Pagination metadata"
          }
        },
        "required": [
          "commissions"
        ],
        "type": "object"
      },
      "GetCompanyByIdSchema": {
        "properties": {
          "address": {
            "example": "3500 Deer Creek Road",
            "type": "string"
          },
          "affiliatePolicyAcceptedBy": {
            "example": "SDfdf355Dfggdee",
            "type": "string"
          },
          "affiliatePolicyAcceptedDate": {
            "example": "",
            "type": "string"
          },
          "affiliatePolicyVersion": {
            "example": "06/01/2022",
            "type": "string"
          },
          "autoSuspendEnabled": {
            "description": "Flag to set if auto suspend is enabled",
            "example": true,
            "type": "boolean"
          },
          "businessAffinityGroup": {
            "description": "The affinity group of the agency",
            "example": "Vehicle Dealerships",
            "type": "string"
          },
          "businessCategory": {
            "description": "Business category",
            "example": "Automotive",
            "type": "string"
          },
          "businessNiche": {
            "description": "The business niche in which the agency is operating",
            "example": "Accounting School",
            "type": "string"
          },
          "cancelEnabledForClients": {
            "description": "Flag to set if cancel plan is enabled",
            "example": true,
            "type": "boolean"
          },
          "city": {
            "example": "Palo Alto",
            "type": "string"
          },
          "country": {
            "example": "US",
            "type": "string"
          },
          "currency": {
            "example": "",
            "type": "string"
          },
          "customerType": {
            "example": "agency",
            "type": "string"
          },
          "disableEmailService": {
            "example": false,
            "type": "boolean"
          },
          "domain": {
            "example": "https://app.myawesomedomain.com",
            "type": "string"
          },
          "email": {
            "example": "john@example.com",
            "type": "string"
          },
          "enableDepreciatedFeatures": {
            "example": true,
            "type": "boolean"
          },
          "enableNewSubAccountDefaultData": {
            "description": "Flag to determine if new sub-accounts should use default data",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "example": "seD4PfOuKoVMLkEZqohJ",
            "type": "string"
          },
          "isEnterpriseAccount": {
            "example": true,
            "type": "boolean"
          },
          "isReselling": {
            "example": true,
            "type": "boolean"
          },
          "isSandboxAccount": {
            "example": true,
            "type": "boolean"
          },
          "locationCount": {
            "example": 10,
            "type": "number"
          },
          "logoUrl": {
            "example": "https://firebasestorage.googleapis.com/v0/b/highlevel-staging.appspot.com/o/companyPhotos%2F5DP4iH6HLkQsiKESj6rh.gif?alt=media&token=2aec9720-59a7-46af-a187-d4a2774ee873",
            "type": "string"
          },
          "name": {
            "example": "Tesla inc",
            "type": "string"
          },
          "onboardingInfo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IOnboardingDto"
              }
            ],
            "example": ""
          },
          "phone": {
            "example": "+1202-555-0107",
            "type": "string"
          },
          "plan": {
            "example": 1,
            "type": "number"
          },
          "postalCode": {
            "example": "94304",
            "type": "string"
          },
          "premiumUpgraded": {
            "default": false,
            "description": "If you want to enable / disable Priority Support for any agency. Default value is false.",
            "example": false,
            "type": "boolean"
          },
          "privacyPolicy": {
            "example": "https://app.gohighlevel.com/privacy_policy",
            "type": "string"
          },
          "privacyPolicyAcceptedBy": {
            "example": "SDfdf355Dfggdee",
            "type": "string"
          },
          "privacyPolicyAcceptedDate": {
            "example": "",
            "type": "string"
          },
          "privacyPolicyVersion": {
            "example": "06/01/2022",
            "type": "string"
          },
          "referralId": {
            "example": "john-doe-21",
            "type": "string"
          },
          "relationshipNumber": {
            "example": "x-xxx-xxx",
            "type": "string"
          },
          "saasSettings": {
            "description": "Saas Settings",
            "example": {
              "agencyDashboardVisibleTo": "string",
              "stripeConnectInitiatedBy": "string"
            },
            "type": "object"
          },
          "spareDomain": {
            "example": "link.msgsndr.com",
            "type": "string"
          },
          "state": {
            "example": "CA",
            "type": "string"
          },
          "status": {
            "example": "active-trial",
            "type": "string"
          },
          "stripeConnectId": {
            "example": "",
            "type": "string"
          },
          "subdomain": {
            "example": "https://app.myawesomedomain.com/subdomain",
            "type": "string"
          },
          "termsConditions": {
            "example": "https://app.gohighlevel.com/terms-of-service",
            "type": "string"
          },
          "termsOfServiceAcceptedBy": {
            "example": "SDfdf355Dfggdee",
            "type": "string"
          },
          "termsOfServiceAcceptedDate": {
            "example": "",
            "type": "string"
          },
          "termsOfServiceVersion": {
            "example": "06/01/2022",
            "type": "string"
          },
          "timezone": {
            "example": "US/Central",
            "type": "string"
          },
          "twilioFreeCredits": {
            "example": 100,
            "type": "number"
          },
          "twilioTrialMode": {
            "example": true,
            "type": "boolean"
          },
          "upgradeEnabledForClients": {
            "description": "Flag to set if upgrade plan is enabled",
            "example": true,
            "type": "boolean"
          },
          "website": {
            "example": "https://www.tesla.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetCompanyByIdSuccessfulResponseDto": {
        "properties": {
          "company": {
            "$ref": "#/components/schemas/GetCompanyByIdSchema"
          }
        },
        "type": "object"
      },
      "GetContactByIdSchemaV3": {
        "properties": {
          "address1": {
            "description": "Street address of the contact",
            "example": "3535 1st St N",
            "type": "string"
          },
          "assignedTo": {
            "description": "User Id the contact is assigned to",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "attachments": {
            "description": "List of attachment URLs associated with the contact",
            "example": [],
            "type": "string"
          },
          "attributionSource": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AttributionSource"
              }
            ],
            "description": "First-touch attribution source details for the contact",
            "example": {
              "campaign": "Summer Sale",
              "url": "Trigger Link"
            }
          },
          "businessId": {
            "description": "Business Id the contact is associated with",
            "example": "641c094001436dbc2081e642",
            "type": "string"
          },
          "city": {
            "description": "City of the contact",
            "example": "Birmingham",
            "type": "string"
          },
          "companyName": {
            "description": "Company name of the contact",
            "example": "DGS VolMAX",
            "type": "string"
          },
          "country": {
            "description": "Country of the contact",
            "example": "US",
            "type": "string"
          },
          "customFields": {
            "description": "List of custom field values for the contact",
            "example": [
              {
                "id": "6dvNaf7VhkQ9snc5vnjJ",
                "value": "My Text"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ContactsCustomFieldSchema"
            },
            "type": "array"
          },
          "dateAdded": {
            "description": "Date and time the contact was added (ISO 8601)",
            "example": "2021-07-02T05:18:26.704Z",
            "type": "string"
          },
          "dateOfBirth": {
            "description": "Date of birth of the contact (YYYY-MM-DD)",
            "example": "1990-09-25",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date and time the contact was last updated (ISO 8601)",
            "example": "2021-07-02T05:18:26.704Z",
            "type": "string"
          },
          "dnd": {
            "description": "Whether Do Not Disturb is enabled for the contact",
            "example": true,
            "type": "boolean"
          },
          "dndSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingsSchemaV3"
              }
            ],
            "description": "Per-channel DND settings for the contact",
            "example": {
              "call": {
                "message": "Do not call",
                "status": "active"
              },
              "email": {
                "status": "inactive"
              }
            }
          },
          "email": {
            "description": "Email address of the contact",
            "example": "rubika@example.com",
            "type": "string"
          },
          "emailLowerCase": {
            "description": "Lowercase version of the contact email",
            "example": "rubika@example.com",
            "type": "string"
          },
          "firstName": {
            "description": "First name of the contact",
            "example": "rubika",
            "type": "string"
          },
          "firstNameLowerCase": {
            "description": "Lowercase version of the contact first name",
            "example": "rubika",
            "type": "string"
          },
          "fullNameLowerCase": {
            "description": "Lowercase version of the contact full name",
            "example": "rubika deo",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the contact",
            "example": "seD4PfOuKoVMLkEZqohJ",
            "type": "string"
          },
          "keyword": {
            "description": "Search keyword associated with the contact",
            "example": "test",
            "type": "string"
          },
          "lastActivity": {
            "description": "Date and time of last activity on this contact (ISO 8601)",
            "example": "2021-07-16T11:39:30.564Z",
            "type": "string"
          },
          "lastAttributionSource": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AttributionSource"
              }
            ],
            "description": "Last-touch attribution source details for the contact",
            "example": {
              "campaign": "Brand Awareness",
              "url": "Organic Search"
            }
          },
          "lastName": {
            "description": "Last name of the contact",
            "example": "Deo",
            "type": "string"
          },
          "lastNameLowerCase": {
            "description": "Lowercase version of the contact last name",
            "example": "deo",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id the contact belongs to",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Full name of the contact",
            "example": "rubika deo",
            "type": "string"
          },
          "phone": {
            "description": "Phone number of the contact",
            "example": "+18832327657",
            "type": "string"
          },
          "postalCode": {
            "description": "Postal code of the contact",
            "example": "35061",
            "type": "string"
          },
          "source": {
            "description": "Source from which the contact was created",
            "example": "public api",
            "type": "string"
          },
          "ssn": {
            "description": "Social Security Number (if applicable)",
            "example": "123-45-6789",
            "type": "string"
          },
          "state": {
            "description": "State of the contact",
            "example": "AL",
            "type": "string"
          },
          "tags": {
            "description": "List of tags associated with the contact",
            "example": [
              "nisi sint commodo amet",
              "consequat"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone of the contact",
            "example": "Asia/Calcutta",
            "type": "string"
          },
          "type": {
            "description": "Contact type classification",
            "example": "lead",
            "type": "string"
          },
          "visitorId": {
            "description": "visitorId is the Unique ID assigned to each Live chat visitor.",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "website": {
            "description": "Website URL of the contact",
            "example": "https://www.tesla.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetConversationByIdResponse": {
        "properties": {
          "assignedTo": {
            "description": "Unique identifier of the team member currently responsible for handling this conversation",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          },
          "contactId": {
            "description": "Unique identifier of the contact associated with this conversation",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          },
          "deleted": {
            "description": "Flag indicating if this conversation has been moved to trash/deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Unique identifier for this specific conversation thread",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          },
          "inbox": {
            "description": "Flag indicating if this conversation is currently in the main inbox view",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Unique identifier of the business location where this conversation takes place",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          },
          "starred": {
            "description": "Flag indicating if this conversation has been marked as important/starred by the user",
            "example": true,
            "type": "boolean"
          },
          "type": {
            "description": "Communication channel type for this conversation: 1 (Phone), 2 (Email), 3 (Facebook Messenger), 4 (Review), 5 (Group SMS), 6 (Internal Chat - coming soon)",
            "example": 2,
            "type": "number"
          },
          "unreadCount": {
            "description": "Number of messages in this conversation that have not been read by the user",
            "example": 1,
            "type": "number"
          }
        },
        "required": [
          "contactId",
          "locationId",
          "deleted",
          "inbox",
          "type",
          "unreadCount",
          "id"
        ],
        "type": "object"
      },
      "GetConversationChannelListSuccessfulResponseDto": {
        "properties": {
          "conversationChannel": {
            "$ref": "#/components/schemas/ConversationChannelSchema"
          }
        },
        "required": [
          "conversationChannel"
        ],
        "type": "object"
      },
      "GetConversationSuccessfulResponse": {
        "properties": {
          "conversation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ConversationDto"
              }
            ],
            "description": "Conversation data of the provided conversation ID.",
            "example": {
              "assignedTo": "tDtDnQdgm2LXpyiqYvZ6",
              "contactId": "tDtDnQdgm2LXpyiqYvZ6",
              "deleted": false,
              "id": "tDtDnQdgm2LXpyiqYvZ6",
              "inbox": true,
              "lastMessageBody": "Hello, this is the message body",
              "lastMessageDate": "1628008053263",
              "lastMessageType": "TYPE_CALL",
              "locationId": "tDtDnQdgm2LXpyiqYvZ6",
              "starred": true,
              "unreadCount": 1,
              "userId": "tDtDnQdgm2LXpyiqYvZ6"
            }
          },
          "success": {
            "description": "Boolean value as the API response.",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "conversation"
        ],
        "type": "object"
      },
      "GetCsvPostResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched CSV Post",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetCsvPostResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "count": 6,
              "csv": {
                "count": 5,
                "fileName": "sample.csv",
                "id": "ve9EPM428h8vShlRW1KT",
                "locationId": "iVrVJ2uoXNF0wzcBzgl5",
                "status": "completed"
              },
              "posts": [
                {
                  "accountIds": [
                    "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
                  ],
                  "summary": "First post",
                  "type": "post"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "GetCsvPostResponseSchema": {
        "properties": {
          "count": {
            "description": "Total count of posts in CSV",
            "example": 6,
            "type": "number"
          },
          "csv": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CSVImportSchema"
              }
            ],
            "description": "CSV Data",
            "example": {
              "count": 5,
              "fileName": "sample.csv",
              "id": "ve9EPM428h8vShlRW1KT",
              "locationId": "iVrVJ2uoXNF0wzcBzgl5",
              "status": "completed"
            }
          },
          "posts": {
            "description": "CSV Posts",
            "example": [
              {
                "accountIds": [
                  "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
                ],
                "summary": "First post",
                "type": "post"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/CSVPostSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetCustomMenusResponseDTO": {
        "properties": {
          "customMenus": {
            "description": "Array of custom menu links",
            "items": {
              "$ref": "#/components/schemas/CustomMenuSchema"
            },
            "type": "array"
          },
          "totalLinks": {
            "description": "Total number of custom menu records",
            "example": 100,
            "type": "number"
          }
        },
        "type": "object"
      },
      "GetCustomProvidersResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the custom provider.",
            "example": "662a44ad19a2a44d3cd9d749",
            "type": "string"
          },
          "createdAt": {
            "description": "The creation timestamp of the custom provider.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the config is deleted or not. true represents config is deleted",
            "example": true,
            "type": "boolean"
          },
          "description": {
            "description": "Description of payment gateway. Shown on the payments integrations page as subtext",
            "example": "This payment gateway supports payments in India via UPI, Net banking, cards and wallets.",
            "type": "string"
          },
          "imageUrl": {
            "description": "Public image url for logo of the payment gateway displayed on the payments integrations page.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "locationId": {
            "description": "Location id",
            "example": "Lk3nlfk4lxlelVEwcW",
            "type": "string"
          },
          "marketplaceAppId": {
            "description": "The application id of marketplace",
            "example": "65f0b217a05c774da7f1efa5",
            "type": "string"
          },
          "name": {
            "description": "The name of the custom provider",
            "example": "Company Paypal Integration",
            "type": "string"
          },
          "paymentProvider": {
            "description": "Payment provider details.",
            "example": "{ live: { liveMode: true }, test: { liveMode: false, apiKey: \"y5ZQxryRFXZHvUJZdLXXXXXX\", publishableKey: \"rzp_test_zPRoVMLOa0A9wo\" }}",
            "type": "object"
          },
          "paymentsUrl": {
            "description": "This url will be loaded in iFrame to start a payment session.",
            "example": "https://testpayment.paypal.com",
            "type": "string"
          },
          "queryUrl": {
            "description": "The url used for querying payments related events. Ex. verify, refund, subscription etc.",
            "example": "https://testsubscription.paypal.com",
            "type": "string"
          },
          "traceId": {
            "description": "Trace id of the custom provider.",
            "example": "302d2cf4-1ba0-4bf5-bc3b-f8fa76fda58a",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the custom provider.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "name",
          "description",
          "paymentsUrl",
          "queryUrl",
          "imageUrl",
          "_id",
          "locationId",
          "marketplaceAppId",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetEmailCampaignPublicV2ResponseDto": {
        "properties": {
          "campaignCategory": {
            "description": "Campaign category",
            "example": "normal",
            "type": "string"
          },
          "campaignType": {
            "description": "Campaign delivery type",
            "example": "bulk-email",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "editorContentUrl": {
            "description": "URL to fetch the rendered campaign content as HTML. Issue a GET against this URL to retrieve the body.",
            "example": "https://storage.googleapis.com/email-templates/abc123.html",
            "type": "string"
          },
          "editorType": {
            "description": "Original editor type the campaign was created with",
            "enum": [
              "html",
              "builder",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Campaign ID",
            "example": "67f15c2ae99226d5bcccb8f3",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether the campaign uses plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Campaign name",
            "example": "February Newsletter",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Check out our latest updates",
            "type": "string"
          },
          "replyToAddress": {
            "description": "Reply-to email address",
            "example": "reply@example.com",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "email-campaign",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "bulkRequest_abc123",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "all",
              "sent",
              "failed",
              "archived",
              "draft",
              "processing",
              "scheduled",
              "cancelled",
              "paused"
            ],
            "example": "sent",
            "type": "string"
          },
          "subject": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          },
          "variations": {
            "description": "AB test variation identifiers (available only for AB test campaigns)",
            "example": [
              {
                "isWinner": true,
                "sourceId": "9MhVcU7dTdLI7XOU1Vdt"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/EmailCampaignVariationPublicV2Dto"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetEmailMessageResponseDto": {
        "properties": {
          "altId": {
            "description": "External Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "attachments": {
            "description": "An array of attachment URLs.",
            "example": [
              "https://example.com/files/invoice.pdf"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "bcc": {
            "description": "List of email Ids of the people in the bcc field",
            "example": [
              "audit@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "body": {
            "description": "Body content of the email message",
            "example": "Hi there",
            "type": "string"
          },
          "cc": {
            "description": "List of email Ids of the people in the cc field",
            "example": [
              "manager@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "contactId": {
            "description": "Contact ID associated with the email message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "contentType": {
            "description": "Content type of the email body",
            "example": "text/plain",
            "type": "string"
          },
          "conversationId": {
            "description": "Conversation ID associated with the email message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "conversationProviderId": {
            "description": "Conversation provider ID",
            "example": "cI08i1Bls3iTB9bKgF01",
            "type": "string"
          },
          "dateAdded": {
            "description": "Timestamp when the email message was created",
            "example": "2024-03-27T18:13:49.000Z",
            "type": "string"
          },
          "direction": {
            "description": "Direction of the email message",
            "enum": [
              "inbound",
              "outbound"
            ],
            "example": "outbound",
            "type": "string"
          },
          "from": {
            "description": "Name and Email Id of the sender",
            "example": "Support Team <support@example.com>",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the email message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID associated with the email message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "provider": {
            "description": "Email provider used to send or receive the message",
            "example": "Leadconnector Gmail",
            "type": "string"
          },
          "replyToMessageId": {
            "description": "In case of reply, email message Id of the reply to email",
            "example": "rnGyqh2F6uBrIkfhFo9A",
            "type": "string"
          },
          "source": {
            "description": "Email source",
            "enum": [
              "workflow",
              "bulk_actions",
              "campaign",
              "api",
              "app"
            ],
            "example": "api",
            "type": "string"
          },
          "status": {
            "description": "Delivery status of the email message",
            "enum": [
              "pending",
              "scheduled",
              "sent",
              "delivered",
              "read",
              "undelivered",
              "connected",
              "failed",
              "opened"
            ],
            "example": "delivered",
            "type": "string"
          },
          "subject": {
            "description": "Subject line of the email message",
            "example": "Order confirm",
            "type": "string"
          },
          "threadId": {
            "description": "Message Id or thread Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "to": {
            "description": "List of email Ids of the receivers",
            "example": [
              "customer@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "threadId",
          "locationId",
          "contactId",
          "conversationId",
          "dateAdded",
          "body",
          "direction",
          "contentType",
          "from",
          "to"
        ],
        "type": "object"
      },
      "GetEmailTemplateResponseSchema": {
        "properties": {
          "dateAdded": {
            "example": "2022-01-27T12:31:19.679Z",
            "type": "string"
          },
          "id": {
            "example": "2yMwhgTNO19bpintqrap",
            "type": "string"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "example": "email template",
            "type": "string"
          },
          "template": {
            "$ref": "#/components/schemas/EmailTemplateSchema"
          },
          "type": {
            "example": "email",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetEventSchema": {
        "properties": {
          "address": {
            "description": "Address for the appointment",
            "example": "Address",
            "type": "string"
          },
          "appointmentStatus": {
            "description": "Appointment status",
            "example": "booked",
            "type": "string"
          },
          "assignedResources": {
            "description": "List of resource Ids assigned to the appointment",
            "example": [
              "YlWd2wuCAZQzh2cH1fVZ",
              "YlWd2wuCAZQzh2cH1fVZ"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "assignedUserId": {
            "description": "User Id assigned to the appointment",
            "example": "YlWd2wuCAZQzh2cH1fVZ",
            "type": "string"
          },
          "calendarId": {
            "description": "Calendar Id associated with the appointment",
            "example": "YlWd2wuCAZQzh2cH1fVZ",
            "type": "string"
          },
          "contactId": {
            "description": "Contact Id associated with the appointment",
            "example": "YlWd2wuCAZQzh2cH1fVZ",
            "type": "string"
          },
          "dateAdded": {
            "description": "Date the appointment was created",
            "example": "2021-07-16 11:00:00",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date the appointment was last updated",
            "example": "2021-07-16 11:30:00",
            "type": "string"
          },
          "endTime": {
            "description": "End time of the appointment",
            "example": "2021-07-16 11:30:00",
            "type": "string"
          },
          "groupId": {
            "description": "Group Id of the appointment",
            "example": "YlWd2wuCAZQzh2cH1fVZ",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the appointment",
            "example": "YS3jaqqeehkR2Is80miy",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id of the appointment",
            "example": "YlWd2wuCAZQzh2cH1fVZ",
            "type": "string"
          },
          "notes": {
            "description": "Notes for the appointment",
            "example": "test",
            "type": "string"
          },
          "startTime": {
            "description": "Start time of the appointment",
            "example": "2021-07-16 11:00:00",
            "type": "string"
          },
          "status": {
            "description": "Status of the appointment",
            "example": "booked",
            "type": "string"
          },
          "title": {
            "description": "Title of the appointment",
            "example": "Test",
            "type": "string"
          },
          "users": {
            "description": "List of user Ids assigned to the appointment",
            "example": [
              "YlWd2wuCAZQzh2cH1fVZ",
              "YlWd2wuCAZQzh2cH1fVZ"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetEventsSuccessfulResponseDto": {
        "properties": {
          "events": {
            "description": "List of appointments",
            "example": [
              {
                "assignedUserId": "YlWd2wuCAZQzh2cH1fVZ",
                "calendarId": "YlWd2wuCAZQzh2cH1fVZ",
                "endTime": "2021-07-16 11:30:00",
                "id": "YS3jaqqeehkR2Is80miy",
                "notes": "test",
                "startTime": "2021-07-16 11:00:00",
                "status": "booked",
                "title": "Test"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GetEventSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetFacebookAccountsResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Facebook Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetFacebookAccountsSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Facebook",
        "type": "object"
      },
      "GetFacebookAccountsSchema": {
        "properties": {
          "pages": {
            "description": "Facebook Pages Details",
            "items": {
              "$ref": "#/components/schemas/FacebookPageSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetFilesResponseDTO": {
        "properties": {
          "files": {
            "description": "Array of File Objects",
            "example": {
              "altId": "locationId",
              "altType": "location",
              "name": "file name",
              "parentId": "parent folder id",
              "path": "file path",
              "url": "file url"
            },
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "files"
        ],
        "type": "object"
      },
      "GetGoogleLocationAccountSchema": {
        "properties": {
          "locations": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetGoogleLocationSchema"
              }
            ],
            "description": "Locations",
            "example": {
              "account": {
                "accountName": "Account Name Test",
                "name": "accounts/114659701071209971352"
              },
              "location": {
                "name": "accounts/114659701071209971352",
                "title": "Location Title"
              }
            }
          }
        },
        "type": "object"
      },
      "GetGoogleLocationResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Google Business Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetGoogleLocationAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "locations": {
                "account": {
                  "accountName": "Account Name Test",
                  "name": "accounts/114659701071209971352"
                },
                "location": {
                  "name": "accounts/114659701071209971352",
                  "title": "Location Title"
                }
              }
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Google Business Account",
        "type": "object"
      },
      "GetGoogleLocationSchema": {
        "properties": {
          "account": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleAccountsSchema"
              }
            ],
            "description": "Google Account Details",
            "example": {
              "accountName": "Account Name Test",
              "name": "accounts/114659701071209971352",
              "type": "PERSONAL",
              "verificationState": "UNVERIFIED",
              "vettedState": "NOT_VETTED"
            }
          },
          "location": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleLocationSchema"
              }
            ],
            "description": "Google Location Details",
            "example": {
              "isConnected": true,
              "isVerified": true,
              "maxLocation": true,
              "name": "accounts/114659701071209971352",
              "storeCode": "w37swmmLbA02zgqKPpxITe",
              "title": "Location Title"
            }
          }
        },
        "type": "object"
      },
      "GetGroupSchema": {
        "properties": {
          "accountIds": {
            "description": "Array of account IDs belonging to this group",
            "example": [
              "6494063f4260855c1c5776b5_mhoUgTPkz19vjF5Qu7Av_2774080328752823730"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Group Id",
            "example": "6284c43d519161e96cc09c13",
            "type": "string"
          },
          "name": {
            "description": "name of group",
            "example": "Primary",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "accountIds"
        ],
        "type": "object"
      },
      "GetInstagramAccountsResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Instagram Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetInstagramAccountsSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "accounts": [
                {
                  "avatar": "avau37swmmLbA02zgqKPpxITe2",
                  "id": "idu37swmmLbA02zgqKPpxITe2",
                  "isConnected": true,
                  "name": "Insta account",
                  "pageId": "pidu37swmmLbA02zgqKPpxITe2"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Instagram",
        "type": "object"
      },
      "GetInstagramAccountsSchema": {
        "properties": {
          "accounts": {
            "description": "Instagram Account Details",
            "example": [
              {
                "avatar": "avau37swmmLbA02zgqKPpxITe2",
                "id": "idu37swmmLbA02zgqKPpxITe2",
                "isConnected": true,
                "name": "Insta account",
                "pageId": "pidu37swmmLbA02zgqKPpxITe2"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/InstagramAccountSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetInstalledLocationsSuccessfulResponseDto": {
        "properties": {
          "count": {
            "description": "Total location count under the company",
            "example": 1231,
            "type": "number"
          },
          "installToFutureLocations": {
            "description": "Boolean to control if user wants app to be automatically installed to future locations",
            "example": true,
            "type": "boolean"
          },
          "locations": {
            "description": "List of locations with their installation status for the requested app",
            "example": [
              {
                "_id": "0IHuJvc2ofPAAA8GzTRi",
                "address": "47 W 13th St, New York, NY 10011, USA",
                "isInstalled": true,
                "name": "John Deo"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/InstalledLocationSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetInstalledLocationsV3SuccessfulResponseDto": {
        "properties": {
          "installToFutureLocations": {
            "description": "Boolean to control if user wants app to be automatically installed to future locations",
            "example": true,
            "type": "boolean"
          },
          "items": {
            "description": "List of locations with their installation status for the requested app",
            "example": [
              {
                "_id": "0IHuJvc2ofPAAA8GzTRi",
                "address": "47 W 13th St, New York, NY 10011, USA",
                "isInstalled": true,
                "name": "John Deo"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/InstalledLocationSchema"
            },
            "type": "array"
          },
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/V3InstalledLocationsListMetadataDto"
              }
            ],
            "description": "Query metadata (filters and sort applied)"
          },
          "pagination": {
            "allOf": [
              {
                "$ref": "#/components/schemas/V3PaginationMetaDto"
              }
            ],
            "description": "Pagination metadata (AIP-158)"
          }
        },
        "required": [
          "items",
          "pagination"
        ],
        "type": "object"
      },
      "GetInstallerDetailsResponseDTO": {
        "properties": {
          "installationDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InstallerDetailsDTO"
              }
            ],
            "description": "Installation details",
            "example": {
              "companyEmail": "contact@example.com",
              "companyHighLevelPlan": "agency_monthly_497",
              "companyId": "company123",
              "companyName": "Example Company",
              "companyOwnerFullName": "John Doe",
              "companyPlan": "agency_monthly_497",
              "isWhitelabelCompany": false,
              "locationId": "location123",
              "marketplaceAppPlanId": "plan123",
              "relationshipNumber": "0-002-230",
              "userId": "user123"
            }
          }
        },
        "required": [
          "installationDetails"
        ],
        "type": "object"
      },
      "GetInventoryResponseDto": {
        "properties": {
          "inventory": {
            "description": "List of inventory items",
            "items": {
              "$ref": "#/components/schemas/InventoryItemDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of inventory items",
            "example": {
              "total": 100
            },
            "type": "object"
          }
        },
        "required": [
          "inventory",
          "total"
        ],
        "type": "object"
      },
      "GetInvoiceResponseDto": {
        "properties": {
          "_id": {
            "description": "Invoice Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amountDue": {
            "description": "Total Amount Due",
            "example": 999,
            "type": "number"
          },
          "amountPaid": {
            "description": "Amount Paid",
            "example": 0,
            "type": "number"
          },
          "automaticTaxesCalculated": {
            "description": "Is Automatic taxes calculated for the Invoice items",
            "example": true,
            "type": "boolean"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            },
            "type": "object"
          },
          "contactDetails": {
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            },
            "type": "object"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            },
            "type": "object"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "invoiceItems": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "19",
            "type": "number"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentSchedule": {
            "description": "split invoice into payment schedule summing up to full invoice amount",
            "type": "object"
          },
          "remindersConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RemindersConfigurationDto"
              }
            ],
            "description": "Reminders Configuration"
          },
          "status": {
            "description": "Invoice Status",
            "enum": [
              "draft",
              "sent",
              "payment_processing",
              "paid",
              "void",
              "partially_paid"
            ],
            "example": "draft",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "totalSummary": {
            "$ref": "#/components/schemas/TotalSummaryDto"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "amountPaid",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "invoiceNumber",
          "currency",
          "contactDetails",
          "issueDate",
          "dueDate",
          "invoiceItems",
          "total",
          "title",
          "amountDue",
          "createdAt",
          "updatedAt",
          "totalSummary"
        ],
        "type": "object"
      },
      "GetInvoiceSettingsResponseDto": {
        "properties": {
          "altId": {
            "description": "Sub-Account Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoiceSettingsBusinessDetailsDto"
              }
            ],
            "description": "Business details"
          },
          "customFields": {
            "description": "Custom fields array",
            "example": [
              "6578278e879ad2646715baxc",
              "6901e9fb77ac4d701ba0b996"
            ],
            "items": {
              "type": "string"
            },
            "maxItems": 3,
            "type": "array"
          },
          "customNotification": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomNotificationDto"
              }
            ],
            "description": "Custom notification settings"
          },
          "dueAfterXDays": {
            "description": "Number of days after which invoice is due",
            "example": 30,
            "type": "number"
          },
          "estimateNumberPrefix": {
            "description": "Prefix for estimate numbers",
            "example": "EST-",
            "maxLength": 10,
            "type": "string"
          },
          "estimatesExpireAfterXDays": {
            "description": "Number of days after which estimate expires",
            "example": 30,
            "type": "number"
          },
          "estimatesTermsNote": {
            "description": "Terms and conditions for estimates",
            "example": "This estimate is valid for 30 days.",
            "type": "string"
          },
          "estimatesTitle": {
            "description": "Title for estimates",
            "example": "ESTIMATE",
            "maxLength": 40,
            "type": "string"
          },
          "invoiceNumberPrefix": {
            "description": "Prefix for invoice numbers",
            "example": "INV-",
            "maxLength": 10,
            "type": "string"
          },
          "lateFeesConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesConfigurationDto"
              }
            ],
            "description": "Late fees configuration"
          },
          "minimumPercentagePartialPayment": {
            "description": "Minimum percentage for partial payment",
            "example": 25,
            "type": "number"
          },
          "paymentMethods": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentMethodDto"
              }
            ],
            "description": "Payment methods configuration"
          },
          "productSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoiceProductSettingsDto"
              }
            ],
            "description": "Product settings"
          },
          "reminderSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReminderSettingsDto"
              }
            ],
            "description": "Reminder settings"
          },
          "senderConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoiceSettingsSenderConfigurationDto"
              }
            ],
            "description": "Sender configuration"
          },
          "termsNote": {
            "description": "Terms and conditions for invoices",
            "example": "Payment is due within 30 days.",
            "type": "string"
          },
          "tipsConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TipsConfigurationDto"
              }
            ],
            "description": "Tips configuration"
          },
          "title": {
            "description": "Title for invoices",
            "example": "INVOICE",
            "maxLength": 40,
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetKnowledgeBaseByIdDataDTO": {
        "properties": {
          "createdAt": {
            "description": "Date when knowledge base was created",
            "example": "2025-08-01T07:50:41.244Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the knowledge base is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Knowledge base ID",
            "example": "Arc9QRauPKkSuMJO8D0m",
            "type": "string"
          },
          "isDefault": {
            "description": "Whether the knowledge base is default or not",
            "example": false,
            "type": "boolean"
          },
          "kbMetadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/KnowledgeBaseMetadataDTO"
              }
            ],
            "description": "Knowledge base metadata with content counts"
          },
          "locationId": {
            "description": "Location ID",
            "example": "qIyivCmsuEOSnyoFYEej",
            "type": "string"
          },
          "name": {
            "description": "Knowledge base name",
            "example": "KB for Bot Training",
            "type": "string"
          },
          "nameLowerCase": {
            "description": "Knowledge base name in lowercase",
            "example": "kb for bot training",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date when knowledge base was last updated",
            "example": "2025-08-01T10:05:58.694Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "nameLowerCase",
          "locationId",
          "deleted",
          "createdAt",
          "updatedAt",
          "kbMetadata"
        ],
        "type": "object"
      },
      "GetKnowledgeBaseByIdResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetKnowledgeBaseByIdDataDTO"
              }
            ],
            "description": "Knowledge base details"
          },
          "success": {
            "description": "Success status of the operation",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "data"
        ],
        "type": "object"
      },
      "GetLatestSnapshotPushStatusSuccessfulResponseDTO": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/SnapshotStatusSchemaWithAssets"
          }
        },
        "type": "object"
      },
      "GetLinkSuccessfulResponseDto": {
        "properties": {
          "link": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkSchema"
              }
            ],
            "description": "The trigger link object",
            "example": {
              "fieldKey": "{{trigger_link.n4AriwEnFrGh3tu08W0U}}",
              "id": "n4AriwEnFrGh3tu08W0U",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "name": "first tag",
              "redirectTo": "https://www.google.com/"
            }
          }
        },
        "type": "object"
      },
      "GetLinkedInAccountSchema": {
        "properties": {
          "pages": {
            "description": "LinkedIn Pages",
            "example": [
              {
                "avatar": "w37swmmLbA02zgqKPpxITe",
                "id": "w37swmmLbA02zgqKPpxITe",
                "isConnected": true,
                "name": "Sample Name",
                "urn": "urn:li:organization:80847980"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/LinkedInPageSchema"
            },
            "type": "array"
          },
          "profile": {
            "description": "LinkedIn Profile Details",
            "example": [
              {
                "avatar": "w37swmmLbA02zgqKPpxITe",
                "id": "w37swmmLbA02zgqKPpxITe",
                "isConnected": true,
                "name": "Profile Name",
                "urn": "urn:li:person:ABC123XYZ"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/LinkedInProfileSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetLinkedInAccountsResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched LinkedIn Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetLinkedInAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "pages": [
                {
                  "avatar": "w37swmmLbA02zgqKPpxITe",
                  "id": "w37swmmLbA02zgqKPpxITe",
                  "isConnected": true,
                  "name": "Sample Name",
                  "urn": "urn:li:organization:80847980"
                }
              ],
              "profile": [
                {
                  "avatar": "w37swmmLbA02zgqKPpxITe",
                  "id": "w37swmmLbA02zgqKPpxITe",
                  "isConnected": true,
                  "name": "Profile Name",
                  "urn": "urn:li:person:ABC123XYZ"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Linkedin",
        "type": "object"
      },
      "GetLinksSuccessfulResponseDto": {
        "properties": {
          "links": {
            "description": "List of trigger links",
            "example": [
              {
                "fieldKey": "{{trigger_link.n4AriwEnFrGh3tu08W0U}}",
                "id": "n4AriwEnFrGh3tu08W0U",
                "locationId": "ve9EPM428h8vShlRW1KT",
                "name": "first tag",
                "redirectTo": "https://www.google.com/"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/LinkSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetLocationAccessCodeBodyDto": {
        "properties": {
          "companyId": {
            "description": "Company Id of location you want to request token for",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "locationId": {
            "description": "The location ID for which you want to obtain accessToken",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          }
        },
        "required": [
          "companyId",
          "locationId"
        ],
        "type": "object"
      },
      "GetLocationAccessTokenSuccessfulResponseDto": {
        "properties": {
          "access_token": {
            "description": "Location access token which can be used to authenticate & authorize API under following scope",
            "example": "ab12dc0ae1234a7898f9ff06d4f69gh",
            "type": "string"
          },
          "appId": {
            "description": "App ID of the installed application",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "expires_in": {
            "description": "Time in seconds remaining for token to expire",
            "example": 86399,
            "type": "number"
          },
          "locationId": {
            "description": "Location ID - Present only for Sub-Account Access Token",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "planId": {
            "description": "Plan Id of the subscribed plan in paid apps.",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "refresh_token": {
            "description": "The OAuth2 refresh token used to obtain a new access token for this specific location",
            "example": "example-token",
            "type": "string"
          },
          "scope": {
            "description": "Scopes the following accessToken have access to",
            "example": "conversations/message.readonly conversations/message.write",
            "type": "string"
          },
          "token_type": {
            "description": "The token type (always Bearer)",
            "example": "Bearer",
            "type": "string"
          },
          "userId": {
            "description": "USER ID - Represent user id of person who performed installation",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "versionId": {
            "description": "Version ID of the installed app version",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "userId"
        ],
        "type": "object"
      },
      "GetLocationAccessTokenV3SuccessfulResponseDto": {
        "properties": {
          "accessToken": {
            "description": "Location access token which can be used to authenticate & authorize API under following scope",
            "example": "ab12dc0ae1234a7898f9ff06d4f69gh",
            "type": "string"
          },
          "appId": {
            "description": "App ID of the installed application",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "expiresIn": {
            "description": "Time in seconds remaining for token to expire",
            "example": 86399,
            "type": "number"
          },
          "locationId": {
            "description": "Location ID - Present only for Sub-Account Access Token",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "planId": {
            "description": "Plan Id of the subscribed plan in paid apps.",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "refreshToken": {
            "description": "The OAuth2 refresh token used to obtain a new access token for this specific location.",
            "example": "example-token",
            "type": "string"
          },
          "scope": {
            "description": "Scopes the following accessToken have access to",
            "example": "conversations/message.readonly conversations/message.write",
            "type": "string"
          },
          "tokenType": {
            "description": "The token type (always Bearer)",
            "example": "Bearer",
            "type": "string"
          },
          "userId": {
            "description": "USER ID - Represent user id of person who performed installation",
            "example": "l1C08ntBrFjLS0elLIYU",
            "type": "string"
          },
          "versionId": {
            "description": "Version ID of the installed app version",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "userId"
        ],
        "type": "object"
      },
      "GetLocationByIdSchema": {
        "properties": {
          "address": {
            "example": "ganthi nagar, gyanbabu chauk motihati",
            "type": "string"
          },
          "business": {
            "$ref": "#/components/schemas/BusinessSchema"
          },
          "city": {
            "example": "motihari",
            "type": "string"
          },
          "companyId": {
            "example": "5DP4iH6HLkQsiKESj6rh",
            "type": "string"
          },
          "country": {
            "example": "IN",
            "type": "string"
          },
          "domain": {
            "example": "test.msgsndr.com",
            "type": "string"
          },
          "email": {
            "example": "rane@example.com",
            "type": "string"
          },
          "firstName": {
            "example": "Dr. Rane",
            "type": "string"
          },
          "id": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "lastName": {
            "example": "deo",
            "type": "string"
          },
          "logoUrl": {
            "example": "https://dummyimage.com/o/locationPhotos%2Fve9EPM428h8vShlRW1KT.jpeg",
            "type": "string"
          },
          "name": {
            "example": "dentist",
            "type": "string"
          },
          "phone": {
            "example": "+919039160788",
            "type": "string"
          },
          "postalCode": {
            "example": "567654",
            "type": "string"
          },
          "reseller": {
            "type": "object"
          },
          "settings": {
            "$ref": "#/components/schemas/SettingsSchema"
          },
          "social": {
            "$ref": "#/components/schemas/SocialSchema"
          },
          "state": {
            "example": "Loca",
            "type": "string"
          },
          "timezone": {
            "example": "America/Chicago",
            "type": "string"
          },
          "website": {
            "example": "https://gohighlevel.com/",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetLocationByIdSuccessfulResponseDto": {
        "properties": {
          "location": {
            "$ref": "#/components/schemas/GetLocationByIdSchema"
          }
        },
        "type": "object"
      },
      "GetLocationSchema": {
        "properties": {
          "address": {
            "description": "The address of the business for which sub-account is created",
            "example": "4th fleet street",
            "type": "string"
          },
          "city": {
            "description": "The city where the business is located for which sub-account is created",
            "example": "New York",
            "type": "string"
          },
          "country": {
            "description": "The country in which the business is present for which sub-account is created",
            "example": "US",
            "type": "string"
          },
          "email": {
            "description": "The email for the sub-account/location",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "id": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "The name for the sub-account/location",
            "example": "Mark Shoes",
            "type": "string"
          },
          "phone": {
            "description": "The phone number of the business for which sub-account is created",
            "example": "+1410039940",
            "type": "string"
          },
          "postalCode": {
            "description": "The postal code of the business for which sub-account is created",
            "example": "567654",
            "type": "string"
          },
          "settings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SettingsSchema"
              }
            ],
            "description": "The default settings for location"
          },
          "social": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialSchema"
              }
            ],
            "description": "The social media links for location"
          },
          "state": {
            "description": "The state in which the business operates for which sub-account is created",
            "example": "Illinois",
            "type": "string"
          },
          "timezone": {
            "description": "The timezone of the business for which sub-account is created",
            "example": "US/Central",
            "type": "string"
          },
          "website": {
            "description": "The website of the business for which sub-account is created",
            "example": "https://yourwebsite.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetMessageResponseDto": {
        "properties": {
          "attachments": {
            "description": "An array of attachment URLs. Attachments will be empty for Call and Voicemails, type 1 and 10. Please use get call recording API to fetch call recording and voicemails.",
            "example": [
              "https://example.com/files/recording.mp3"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "body": {
            "description": "Body content of the message",
            "example": "Hi there",
            "type": "string"
          },
          "chatWidgetId": {
            "description": "Chat Widget Id",
            "example": "67b0cc8cf14b19d85ace7s35",
            "type": "string"
          },
          "contactId": {
            "description": "Contact ID associated with the message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "contentType": {
            "description": "Content type of the message body",
            "example": "text/plain",
            "type": "string"
          },
          "conversationId": {
            "description": "Conversation ID associated with the message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "conversationProviderId": {
            "description": "Conversation Provider Id",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          },
          "dateAdded": {
            "description": "Timestamp when the message was created",
            "example": "2024-03-27T18:13:49.000Z",
            "type": "string"
          },
          "direction": {
            "description": "Direction of the message",
            "enum": [
              "inbound",
              "outbound"
            ],
            "example": "outbound",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID associated with the message",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "messageType": {
            "description": "Type of the message as a string",
            "enum": [
              "TYPE_CALL",
              "TYPE_SMS",
              "TYPE_RCS",
              "TYPE_EMAIL",
              "TYPE_SMS_REVIEW_REQUEST",
              "TYPE_WEBCHAT",
              "TYPE_SMS_NO_SHOW_REQUEST",
              "TYPE_CAMPAIGN_SMS",
              "TYPE_CAMPAIGN_CALL",
              "TYPE_CAMPAIGN_EMAIL",
              "TYPE_CAMPAIGN_VOICEMAIL",
              "TYPE_FACEBOOK",
              "TYPE_CAMPAIGN_FACEBOOK",
              "TYPE_CAMPAIGN_MANUAL_CALL",
              "TYPE_CAMPAIGN_MANUAL_SMS",
              "TYPE_GMB",
              "TYPE_CAMPAIGN_GMB",
              "TYPE_REVIEW",
              "TYPE_INSTAGRAM",
              "TYPE_WHATSAPP",
              "TYPE_CUSTOM_SMS",
              "TYPE_CUSTOM_EMAIL",
              "TYPE_CUSTOM_PROVIDER_SMS",
              "TYPE_CUSTOM_PROVIDER_EMAIL",
              "TYPE_IVR_CALL",
              "TYPE_ACTIVITY_CONTACT",
              "TYPE_ACTIVITY_INVOICE",
              "TYPE_ACTIVITY_PAYMENT",
              "TYPE_ACTIVITY_OPPORTUNITY",
              "TYPE_LIVE_CHAT",
              "TYPE_LIVE_CHAT_INFO_MESSAGE",
              "TYPE_ACTIVITY_APPOINTMENT",
              "TYPE_FACEBOOK_COMMENT",
              "TYPE_INSTAGRAM_COMMENT",
              "TYPE_CUSTOM_CALL",
              "TYPE_INTERNAL_COMMENT",
              "TYPE_ACTIVITY_EMPLOYEE_ACTION_LOG",
              "TYPE_TIKTOK",
              "TYPE_TIKTOK_COMMENT",
              "TYPE_ACTIVITY_WHATSAPP",
              "TYPE_FORM_SUBMISSION",
              "TYPE_SMS_REACTION"
            ],
            "example": "SMS",
            "type": "string"
          },
          "meta": {
            "$ref": "#/components/schemas/MessageMeta",
            "description": "Additional metadata associated with the message",
            "example": {
              "email": {
                "messageIds": [
                  "ve9EPM428kjkvShlRW1KT"
                ]
              }
            }
          },
          "source": {
            "description": "Message source",
            "enum": [
              "workflow",
              "bulk_actions",
              "campaign",
              "api",
              "app"
            ],
            "example": "api",
            "type": "string"
          },
          "status": {
            "description": "Delivery status of the message",
            "enum": [
              "connected",
              "delivered",
              "failed",
              "opened",
              "pending",
              "read",
              "scheduled",
              "sent",
              "undelivered",
              "clicked",
              "opt_out",
              "queued"
            ],
            "example": "delivered",
            "type": "string"
          },
          "type": {
            "description": "Numeric message type code",
            "example": 1,
            "type": "number"
          },
          "userId": {
            "description": "User Id",
            "example": "ve9EPM428kjkvShlRW1KT",
            "type": "string"
          }
        },
        "required": [
          "id",
          "type",
          "messageType",
          "locationId",
          "contactId",
          "conversationId",
          "dateAdded",
          "direction",
          "contentType"
        ],
        "type": "object"
      },
      "GetMessageTranscriptionResponseDto": {
        "properties": {
          "confidence": {
            "description": "Confidence of the transcription",
            "example": "0.5",
            "type": "number"
          },
          "endTime": {
            "description": "End time of the sentence in milliseconds",
            "example": "45",
            "type": "number"
          },
          "mediaChannel": {
            "description": "Media channel describes the user interaction channel",
            "example": "1",
            "type": "number"
          },
          "sentenceIndex": {
            "description": "Index of the sentence in the transcription",
            "example": "1",
            "type": "number"
          },
          "startTime": {
            "description": "Start time of the sentence in milliseconds",
            "example": "34",
            "type": "number"
          },
          "transcript": {
            "description": "Transcript of the sentence",
            "example": "This call may be recorded for quality assurance purposes.",
            "type": "string"
          }
        },
        "required": [
          "mediaChannel",
          "sentenceIndex",
          "startTime",
          "endTime",
          "transcript",
          "confidence"
        ],
        "type": "object"
      },
      "GetMessagesByConversationResponseDto": {
        "properties": {
          "lastMessageId": {
            "description": "Id of the last message in the messages array",
            "example": "p1mRSHeLDhAms5q0LMr4",
            "type": "string"
          },
          "messages": {
            "description": "Array of messages",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/GetMessageResponseDto"
            },
            "type": "array"
          },
          "nextPage": {
            "description": "Next page value true indicates only 20 message is in the response. Rest of the messages are in the next page. Please use the lastMessageId value in the query to get the next page messages",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "lastMessageId",
          "nextPage",
          "messages"
        ],
        "type": "object"
      },
      "GetModifiedPayloadFormattedSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the post",
            "example": "61bb16833b3f2791f9715be2",
            "type": "string"
          },
          "accountId": {
            "description": "Account Id",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "accountIds": {
            "description": "Account Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "Date when the post was created",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the post",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "displayDate": {
            "description": "Display date for the post",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "error": {
            "description": "Error",
            "example": "Failed due to auth token",
            "type": "string"
          },
          "facebookPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FacebookPostSchema"
              }
            ],
            "description": "Facebook Post Details"
          },
          "gmbPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GMBPostSchema"
              }
            ],
            "description": "GMB Post Details",
            "example": {
              "actionType": "BOOK",
              "gmbEventType": "STANDARD"
            }
          },
          "instagramPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InstagramPostSchema"
              }
            ],
            "description": "Instagram Post Details"
          },
          "linkedinPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedinPostSchema"
              }
            ],
            "description": "Linkedin Post Details"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "media": {
            "description": "Post Media Data \n The limitations of media as per the platforms is provided through the reference link in API description",
            "example": [
              {
                "altText": "A sunset over the ocean with silhouetted palm trees",
                "caption": "Sample caption",
                "type": "image/jpeg",
                "url": "https://example.com/image.jpg"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/PostMediaSchema"
            },
            "type": "array"
          },
          "mediaOptimization": {
            "description": "Pass this parameter to optimize the image media",
            "example": true,
            "type": "boolean"
          },
          "ogTagsDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgTagsSchema"
              }
            ],
            "description": "Og Tags Meta Data",
            "example": {
              "metaImage": "https://example.com/image.jpg",
              "metaLink": "https://www.yahoo.com/",
              "ogDescription": "Page Description",
              "ogTitle": "Page Title"
            }
          },
          "pinterestPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PinterestPostSchema"
              }
            ],
            "description": "Pinterest Post Details"
          },
          "postApprovalDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FormatedApprovalDetails"
              }
            ],
            "description": "Post Approval Details",
            "example": {
              "approvalStatus": "approved",
              "approver": "iVrVJ2uoXNF0wzcBzgl5"
            }
          },
          "postId": {
            "description": "Platform-specific post identifier",
            "example": "323534534435",
            "type": "string"
          },
          "publishedAt": {
            "description": "Date when the post was published",
            "example": "2021-06-22T05:32:49.463Z",
            "type": "string"
          },
          "source": {
            "description": "source must be one of the following values: composer, recurring, csv",
            "enum": [
              "composer",
              "csv",
              "recurring",
              "review",
              "rss",
              "template-library",
              "category-queue",
              "native"
            ],
            "example": "composer",
            "type": "string"
          },
          "status": {
            "description": "Status must be one of the following values: in_progress, draft, failed, published, scheduled, in_review, notification_sent, deleted",
            "example": "published",
            "type": "object"
          },
          "summary": {
            "description": "Content text of the post",
            "example": "Sample Summary",
            "type": "string"
          },
          "tags": {
            "description": "Tag Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "thumbnail": {
            "description": "Post-level cover image (thumbnail) URL.\n\nFor posts that contain a video, this is the resolved cover image used for the first video in `media[]`. It is set automatically from the `thumbnail` provided on the first video media item at create/edit time, or auto-generated from the video when one is not supplied. Per-item thumbnails inside `media[]` are not retained on the response — the primary cover image lives on this field.",
            "example": "https://storage.googleapis.com/test/test/media/test.jpeg",
            "type": "string"
          },
          "tiktokPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TiktokPostSchema"
              }
            ],
            "description": "Tiktok Post Details",
            "example": {
              "enableComment": true,
              "privacyLevel": "PUBLIC_TO_EVERYONE"
            }
          },
          "type": {
            "description": "Post Type must be one of the following values: - post, story, reel",
            "example": "post",
            "type": "object"
          },
          "updatedAt": {
            "description": "Date when the post was last updated",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostUserSchema"
              }
            ],
            "description": "User",
            "example": {
              "email": "abc@example.com",
              "firstName": "Harry",
              "id": "6284c43d519161e96cc09c13",
              "lastName": "Spencer"
            }
          },
          "youtubePostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/YoutubePostSchema"
              }
            ],
            "description": "Youtube Post Details"
          }
        },
        "required": [
          "locationId",
          "error",
          "type"
        ],
        "type": "object"
      },
      "GetOrderResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the order.",
            "example": "653f5e0cde5a1314e62a837c",
            "type": "string"
          },
          "altId": {
            "description": "AltId is the unique identifier eg: location id.",
            "example": "3SwdhCu3svxI8AKsPJt6",
            "type": "string"
          },
          "altType": {
            "description": "AltType is the type of identifier.",
            "example": "location",
            "type": "string"
          },
          "amount": {
            "description": "Order value.",
            "example": "100",
            "type": "number"
          },
          "amountSummary": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AmountSummary"
              }
            ],
            "description": "Amount details of the order.",
            "example": "{ subtotal: 100, discount: 5 }"
          },
          "automaticTaxesCalculated": {
            "description": "Automatic taxes applied for the Order",
            "example": true,
            "type": "boolean"
          },
          "contactId": {
            "description": "Contact id corresponding to the order.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "contactSnapshot": {
            "description": "Contact details of the order.",
            "example": "{ last_name: \"Mcclain\", type: \"lead\", first_name_lower_case: \"rogan\", email: \"anish+11@example.com\", last_name_lower_case: \"mcclain\", location_id: \"o6241QsiRwUIJHyjuhos\", company_name: \"Jordan and Cox Trading\"}",
            "type": "object"
          },
          "coupon": {
            "description": "Coupon details of the order.",
            "example": "{ code: \"FEST10\", _id: \"63455e48901b43d4ef364a20\" }",
            "type": "object"
          },
          "createdAt": {
            "description": "The creation timestamp of the order.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the order.",
            "example": "user123",
            "type": "string"
          },
          "currency": {
            "description": "Currency in which order was created.",
            "example": "USD",
            "type": "string"
          },
          "fingerprint": {
            "description": "Fingerprint id of the order.",
            "example": "5d51db5a-42b0-4b04-ba88-2c046c982a3a",
            "type": "string"
          },
          "fulfillmentStatus": {
            "description": "Fulfillment status of the order.",
            "example": "unfulfilled",
            "type": "string"
          },
          "items": {
            "description": "Item details of the order.",
            "example": "{ _id: 61dd33e88058b9f967ca79dc, authorizeAmount: 0, locationId: \"SBAWb4yu7A4LSc0skQ6g\", name: \"Sample Product\": price: {}, product: { name: \"Testing product\", productType: \"SERVICE\" }}",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Order is in live / test mode.",
            "example": "false",
            "type": "boolean"
          },
          "markAsTest": {
            "description": "Is test order.",
            "example": "false",
            "type": "boolean"
          },
          "meta": {
            "description": "Meta details of the order.",
            "example": "{ couponSessionExpired: true }",
            "type": "object"
          },
          "source": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentsOrderSource"
              }
            ],
            "description": "Source details of the order.",
            "example": "{ type: \"invoice\", id: \"61dd48ff65b013bc39bb09c6\" }"
          },
          "status": {
            "description": "The status of the order (e.g., completed).",
            "example": "completed",
            "type": "string"
          },
          "taxCalculationProvider": {
            "description": "Provider name for automatic tax calculation",
            "example": "taxjar",
            "type": "object"
          },
          "traceId": {
            "description": "Trace id of the order.",
            "example": "d3b16a92-a8ed-4e6b-8467-844750f78ed5",
            "type": "string"
          },
          "trackingId": {
            "description": "Tracking id of the order.",
            "example": "63319ef9-de0a-4c84-aebd-3585fb4a0cdf",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the order.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "status",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetPayoutListResponseDto": {
        "properties": {
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PayoutListMetaResponseDto"
              }
            ],
            "description": "Pagination metadata"
          },
          "payouts": {
            "description": "Payout list",
            "items": {
              "$ref": "#/components/schemas/PayoutListItemResponseDto"
            },
            "type": "array"
          }
        },
        "required": [
          "payouts"
        ],
        "type": "object"
      },
      "GetPinterestAccountSchema": {
        "properties": {
          "profile": {
            "description": "Pinterest Profile",
            "example": [
              {
                "avatar": "https://i.pinimg.com/example-avatar.jpg",
                "id": "w37swmmLbA02zgqKPpxITe",
                "isConnected": true,
                "name": "Account Name",
                "type": "PINNER",
                "username": "@username",
                "websiteUrl": "https://www.pinterest.com/"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/PinterestProfileSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetPinterestAccountsResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Pinterest Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPinterestAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "profile": [
                {
                  "avatar": "https://i.pinimg.com/example-avatar.jpg",
                  "id": "w37swmmLbA02zgqKPpxITe",
                  "isConnected": true,
                  "name": "Account Name",
                  "type": "PINNER",
                  "username": "@username",
                  "websiteUrl": "https://www.pinterest.com/"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Pinterest",
        "type": "object"
      },
      "GetPipelinesSuccessfulResponseDto": {
        "properties": {
          "pipelines": {
            "description": "List of pipelines for the location",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/PipelinesResponseSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetPostFormattedSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the post",
            "example": "61bb16833b3f2791f9715be2",
            "type": "string"
          },
          "accountId": {
            "description": "Account Id",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "accountIds": {
            "description": "Account Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "blueskyPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BlueskyPostSchema"
              }
            ],
            "description": "Bluesky Post Details"
          },
          "createdAt": {
            "description": "Date when the post was created",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the post",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "displayDate": {
            "description": "Display date for the post",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "error": {
            "description": "Error",
            "example": "Failed due to auth token",
            "type": "string"
          },
          "facebookPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FacebookPostSchema"
              }
            ],
            "description": "Facebook Post Details"
          },
          "gmbPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GMBPostSchema"
              }
            ],
            "description": "GMB Post Details",
            "example": {
              "actionType": "BOOK",
              "gmbEventType": "STANDARD"
            }
          },
          "insights": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostInsightsSchema"
              }
            ],
            "description": "Aggregated engagement metrics for the published post. Populated asynchronously by the insights sync workers for supported platforms (Facebook, Instagram, LinkedIn, YouTube). Absent on posts that have not been synced yet or on platforms where insights are not supported.",
            "example": {
              "comment": 5,
              "like": 12,
              "share": 3
            }
          },
          "instagramPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InstagramPostSchema"
              }
            ],
            "description": "Instagram Post Details"
          },
          "linkedinPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedinPostSchema"
              }
            ],
            "description": "Linkedin Post Details"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "media": {
            "description": "Post Media Data \n The limitations of media as per the platforms is provided through the reference link in API description",
            "example": [
              {
                "altText": "A sunset over the ocean with silhouetted palm trees",
                "caption": "Sample caption",
                "type": "image/jpeg",
                "url": "https://example.com/image.jpg"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/PostMediaSchema"
            },
            "type": "array"
          },
          "mediaOptimization": {
            "description": "Pass this parameter to optimize the image media",
            "example": true,
            "type": "boolean"
          },
          "ogTagsDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgTagsSchema"
              }
            ],
            "description": "Og Tags Meta Data",
            "example": {
              "metaImage": "https://example.com/image.jpg",
              "metaLink": "https://www.yahoo.com/",
              "ogDescription": "Page Description",
              "ogTitle": "Page Title"
            }
          },
          "pinterestPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PinterestPostSchema"
              }
            ],
            "description": "Pinterest Post Details"
          },
          "platform": {
            "description": "platform must be one of the following values: google, facebook, instagram, linkedin, twitter, tiktok",
            "example": "google",
            "type": "string"
          },
          "postApprovalDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FormatedApprovalDetails"
              }
            ],
            "description": "Post Approval Details",
            "example": {
              "approvalStatus": "approved",
              "approver": "iVrVJ2uoXNF0wzcBzgl5"
            }
          },
          "postId": {
            "description": "Platform-specific post identifier",
            "example": "323534534435",
            "type": "string"
          },
          "publishedAt": {
            "description": "Date when the post was published",
            "example": "2021-06-22T05:32:49.463Z",
            "type": "string"
          },
          "source": {
            "description": "source must be one of the following values: composer, recurring, csv",
            "enum": [
              "composer",
              "csv",
              "recurring",
              "review",
              "rss"
            ],
            "example": "composer",
            "type": "string"
          },
          "status": {
            "description": "Status must be one of the following values: in_progress, draft, failed, published, scheduled, in_review, notification_sent, deleted",
            "example": "published",
            "type": "object"
          },
          "summary": {
            "description": "Content text of the post",
            "example": "Sample Summary",
            "type": "string"
          },
          "tags": {
            "description": "Tag Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "thumbnail": {
            "description": "Post-level cover image (thumbnail) URL.\n\nFor posts that contain a video, this is the resolved cover image used for the first video in `media[]`. It is set automatically from the `thumbnail` provided on the first video media item at create/edit time, or auto-generated from the video when one is not supplied. Per-item thumbnails inside `media[]` are not retained on the response — the primary cover image lives on this field.",
            "example": "https://storage.googleapis.com/your-bucket/media/video-thumbnail.jpeg",
            "type": "string"
          },
          "tiktokPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TiktokPostSchema"
              }
            ],
            "description": "Tiktok Post Details",
            "example": {
              "enableComment": true,
              "privacyLevel": "PUBLIC_TO_EVERYONE"
            }
          },
          "type": {
            "description": "Post Type must be one of the following values: - post, story, reel",
            "example": "post",
            "type": "object"
          },
          "updatedAt": {
            "description": "Date when the post was last updated",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostUserSchema"
              }
            ],
            "description": "User",
            "example": {
              "email": "abc@example.com",
              "firstName": "Harry",
              "id": "6284c43d519161e96cc09c13",
              "lastName": "Spencer"
            }
          },
          "youtubePostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/YoutubePostSchema"
              }
            ],
            "description": "Youtube Post Details"
          }
        },
        "required": [
          "locationId",
          "error",
          "type"
        ],
        "type": "object"
      },
      "GetPostOpportunitySuccessfulResponseDto": {
        "properties": {
          "opportunity": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SearchOpportunitiesResponseSchema"
              }
            ],
            "description": "The created or retrieved opportunity object",
            "example": {}
          }
        },
        "type": "object"
      },
      "GetPostSuccessfulResponseSchema": {
        "properties": {
          "post": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPostFormattedSchema"
              }
            ],
            "description": "Post Data",
            "example": {
              "_id": "61bb16833b3f2791f9715be2",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "platform": "google",
              "status": "published",
              "summary": "Sample Summary"
            }
          }
        },
        "type": "object"
      },
      "GetPriceResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the price.",
            "example": "655b33aa2209e60b6adb87a7",
            "type": "string"
          },
          "allowOutOfStockPurchases": {
            "description": "Continue selling when out of stock",
            "example": true,
            "type": "boolean"
          },
          "amount": {
            "description": "The amount of the price.",
            "example": 199999,
            "type": "number"
          },
          "availableQuantity": {
            "description": "Available inventory stock quantity",
            "example": 5,
            "type": "number"
          },
          "compareAtPrice": {
            "description": "The compare-at price for comparison purposes.",
            "example": 2000000,
            "type": "number"
          },
          "createdAt": {
            "description": "The creation timestamp of the price.",
            "example": "2023-11-20T10:23:38.645Z",
            "format": "date-time",
            "type": "string"
          },
          "currency": {
            "description": "The currency code for the price.",
            "example": "INR",
            "type": "string"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "membershipOffers": {
            "description": "An array of membership offers associated with the price.",
            "items": {
              "$ref": "#/components/schemas/MembershipOfferDto"
            },
            "type": "array"
          },
          "name": {
            "description": "The name of the price.",
            "example": "Red / S",
            "type": "string"
          },
          "product": {
            "description": "The unique identifier for the associated product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "recurring": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringDto"
              }
            ],
            "description": "The recurring details of the price (if type is recurring)."
          },
          "trackInventory": {
            "description": "Indicates whether inventory tracking is enabled.",
            "example": null,
            "type": "boolean"
          },
          "type": {
            "description": "The type of the price (e.g., one_time).",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the price.",
            "example": "2024-01-23T09:57:04.852Z",
            "format": "date-time",
            "type": "string"
          },
          "userId": {
            "description": "The unique identifier for the user.",
            "example": "6YAtzfzpmHAdj0e8GkKp",
            "type": "string"
          },
          "variantOptionIds": {
            "description": "An array of variant option IDs associated with the price.",
            "example": [
              "h4z7u0im2q8",
              "h3nst2ltsnn"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "name",
          "type",
          "currency",
          "amount"
        ],
        "type": "object"
      },
      "GetProductResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "automaticTaxCategoryId": {
            "description": "Tax category ID for Automatic taxes calculation.",
            "example": "65d71377c326ea78e1c47df5",
            "type": "string"
          },
          "availableInStore": {
            "description": "Indicates whether the product is available in-store.",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "An array of category Ids for the product",
            "example": [
              "65d71377c326ea78e1c47df5",
              "65d71377c326ea78e1c47d34"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "The creation timestamp of the product.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "product description",
            "example": "This is a really awesome product",
            "type": "string"
          },
          "image": {
            "description": "The URL for the product image.",
            "example": "https://storage.googleapis.com/ghl-test/3SwdhCsvxI8Au3KsPJt6/media/65af8d5df88bdb4b1022ee90.png",
            "type": "string"
          },
          "isTaxesEnabled": {
            "default": false,
            "description": "The field indicates whether taxes are enabled for the product or not.",
            "example": true,
            "type": "boolean"
          },
          "label": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductLabelDto"
              }
            ],
            "description": "The Product label details"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "name": {
            "description": "The name of the product.",
            "example": "Awesome Product",
            "type": "string"
          },
          "productType": {
            "description": "The type of the product (e.g., PHYSICAL).",
            "example": "PHYSICAL",
            "type": "string"
          },
          "slug": {
            "description": "The slug of the product by which the product will be navigated",
            "example": "washing-machine",
            "type": "string"
          },
          "statementDescriptor": {
            "description": "The statement descriptor for the product.",
            "example": "abcde",
            "type": "string"
          },
          "taxes": {
            "description": "An array of ids of Taxes attached to the Product. If the expand query includes tax, the taxes will be of type `ProductTaxDto`. Please refer to the `ProductTaxDto` for additional details.",
            "example": [
              "654492a4e6bef380114de15a"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "The last update timestamp of the product.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          },
          "variants": {
            "description": "An array of variants for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductVariantDto"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "locationId",
          "name",
          "productType",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetProductStatsResponseDto": {
        "properties": {
          "excludedFromStore": {
            "description": "Number of products excluded from the store",
            "example": 20,
            "type": "number"
          },
          "includedInStore": {
            "description": "Number of products included in the store",
            "example": 80,
            "type": "number"
          },
          "totalProducts": {
            "description": "Total number of products",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "totalProducts",
          "includedInStore",
          "excludedFromStore"
        ],
        "type": "object"
      },
      "GetPublishedAgentsResponseDTO": {
        "properties": {
          "agents": {
            "description": "List of agents with metadata",
            "example": [
              {
                "agentId": "p1q2r3s4t5u6v7w8x9y0z1a2",
                "createdAt": "2024-01-15T10:30:00.000Z",
                "description": "AI agent specialized in marketing strategy and content creation",
                "locationId": "C2QujeCh8ZnC7al2InWR",
                "name": "Marketing Assistant",
                "status": "active",
                "updatedAt": "2024-02-20T14:45:00.000Z"
              },
              {
                "agentId": "b3c4d5e6f7g8h9i0j1k2l3m4",
                "createdAt": "2024-01-10T09:15:00.000Z",
                "description": "AI agent for handling customer inquiries and support tickets",
                "locationId": "C2QujeCh8ZnC7al2InWR",
                "name": "Customer Support Bot",
                "status": "active",
                "updatedAt": "2024-02-18T16:20:00.000Z"
              }
            ],
            "items": {
              "properties": {
                "agentId": {
                  "description": "Agent ID",
                  "type": "string"
                },
                "createdAt": {
                  "description": "Creation timestamp",
                  "type": "string"
                },
                "description": {
                  "description": "Agent description",
                  "type": "string"
                },
                "locationId": {
                  "description": "Location ID",
                  "type": "string"
                },
                "name": {
                  "description": "Agent name",
                  "type": "string"
                },
                "status": {
                  "description": "Agent status (always \"active\")",
                  "type": "string"
                },
                "updatedAt": {
                  "description": "Last update timestamp",
                  "type": "string"
                }
              },
              "type": "object"
            },
            "type": "array"
          },
          "message": {
            "description": "Response message",
            "example": "Agents retrieved successfully",
            "type": "string"
          },
          "pagination": {
            "description": "Pagination metadata",
            "example": {
              "hasMore": true,
              "limit": 20,
              "offset": 0,
              "total": 25
            },
            "properties": {
              "hasMore": {
                "description": "Whether more agents exist",
                "type": "boolean"
              },
              "limit": {
                "description": "Number of agents per page",
                "type": "number"
              },
              "offset": {
                "description": "Starting position",
                "type": "number"
              },
              "total": {
                "description": "Total number of agents",
                "type": "number"
              }
            },
            "type": "object"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message",
          "agents",
          "pagination"
        ],
        "type": "object"
      },
      "GetRebillingConfigResponseDTO": {
        "properties": {
          "plans": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PlansDTO"
              }
            ],
            "description": "The rebilling plans configuration",
            "example": {
              "subscription": [
                {
                  "baseAmount": 999,
                  "features": [
                    "feature1",
                    "feature2"
                  ],
                  "name": "Monthly Plan - 999",
                  "paymentTime": "month",
                  "paymentType": "month",
                  "planId": "5ae000000000000000000000",
                  "resellingAmount": 0
                }
              ],
              "usage": [
                {
                  "executionLimitPerCycle": 1000,
                  "fixedPricePerUnit": 0.01001,
                  "maxPricePerUnit": "0.01001",
                  "meterId": "680b97022b4a34420f5f9b93",
                  "meterName": "Send Group iMessage",
                  "minPricePerUnit": "0.01001",
                  "priceType": "fixed",
                  "productName": "Send Group iMessage",
                  "productType": "workflow_action",
                  "usageUnit": "action / message"
                }
              ]
            }
          }
        },
        "required": [
          "plans"
        ],
        "type": "object"
      },
      "GetSaasLocationsResponseDto": {
        "properties": {
          "locations": {
            "description": "Array of SaaS locations",
            "items": {
              "$ref": "#/components/schemas/SaasLocationDto"
            },
            "type": "array"
          },
          "pagination": {
            "properties": {
              "hasNext": {
                "description": "Indicates if there is a next page",
                "example": true,
                "type": "boolean"
              },
              "hasPrev": {
                "description": "Indicates if there is a previous page",
                "example": true,
                "type": "boolean"
              },
              "limit": {
                "description": "Number of items per page",
                "example": 10,
                "type": "number"
              },
              "page": {
                "description": "Page number",
                "example": 1,
                "type": "number"
              },
              "total": {
                "description": "Total number of items",
                "example": 100,
                "type": "number"
              },
              "totalPages": {
                "description": "Total number of pages",
                "example": 10,
                "type": "number"
              }
            },
            "type": "object"
          }
        },
        "required": [
          "locations",
          "pagination"
        ],
        "type": "object"
      },
      "GetScheduleResponseDto": {
        "properties": {
          "_id": {
            "description": "Schedule Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "compiledTermsNotes": {
            "description": "Compiled terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoices": {
            "description": "List of invoices",
            "items": {
              "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
            },
            "type": "array"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "status": {
            "description": "Schedule Status",
            "example": "draft",
            "type": "object"
          },
          "termsNotes": {
            "description": "Terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "altId",
          "altType",
          "name",
          "invoices",
          "businessDetails",
          "currency",
          "contactDetails",
          "items",
          "total",
          "title",
          "termsNotes",
          "compiledTermsNotes",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetShippingCarrierResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingCarrierSchema"
              }
            ],
            "description": "Shipping carrier data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "GetShippingRateResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingRateSchema"
              }
            ],
            "description": "Shipping zone data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "GetShippingZoneResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingZoneSchema"
              }
            ],
            "description": "Shipping zone data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "GetSingleCustomMenusSuccessfulResponseDTO": {
        "properties": {
          "customMenu": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomMenuSchema"
              }
            ],
            "description": "Single Custom menu link object"
          }
        },
        "type": "object"
      },
      "GetSmsTemplateResponseSchema": {
        "properties": {
          "dateAdded": {
            "example": "2022-01-27T12:31:19.679Z",
            "type": "string"
          },
          "id": {
            "example": "2yMwhgTNO19bpintqrap",
            "type": "string"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "example": "sms template",
            "type": "string"
          },
          "template": {
            "$ref": "#/components/schemas/SmsTemplateSchema"
          },
          "type": {
            "example": "sms",
            "type": "string"
          },
          "urlAttachments": {
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetSnapshotPushStatusSuccessfulResponseDTO": {
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/SnapshotStatusSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetSnapshotsSuccessfulResponseDto": {
        "properties": {
          "snapshots": {
            "items": {
              "$ref": "#/components/schemas/SnapshotsSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetStoreSettingResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreSettingSchema"
              }
            ],
            "description": "Shipping carrier data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "GetSubscriptionResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the subscription.",
            "example": "64bf78af39118e4011926cba",
            "type": "string"
          },
          "altId": {
            "description": "AltId is the unique identifier eg: location id.",
            "example": "3SwdhCu3svxI8AKsPJt6",
            "type": "string"
          },
          "altType": {
            "description": "AltType is the type of identifier.",
            "example": "location",
            "type": "object"
          },
          "amount": {
            "description": "Subscription value.",
            "example": "100",
            "type": "number"
          },
          "autoPayment": {
            "description": "Auto payment details of the subscription.",
            "example": "{ customerId: \"908879612\", paymentMethodId: \"908646635\" }",
            "type": "object"
          },
          "canceledAt": {
            "description": "Cancellation timestamp of the subscription.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "canceledBy": {
            "description": "User id who cancelled the subscription.",
            "example": "qUuXUiB2AiA2DIthEicP",
            "type": "string"
          },
          "contactId": {
            "description": "Contact id corresponding to the subscription.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "contactSnapshot": {
            "description": "Contact details of the subscriber.",
            "example": "{ last_name: \"Mcclain\", type: \"lead\", first_name_lower_case: \"rogan\", email: \"anish+11@example.com\", last_name_lower_case: \"mcclain\", location_id: \"o6241QsiRwUIJHyjuhos\", company_name: \"Jordan and Cox Trading\"}",
            "type": "object"
          },
          "coupon": {
            "description": "Coupon details of the subscription.",
            "example": "{ _id: \"6374c6926d119a393fe1e556\", usageCount: 5260, altId: \"jVFIxsMY19D94nOSIOEO\", altType: \"location\", name: \"FREE-100%\", code: \"FREE100\", discountType: \"percentage\", discountValue: 100 }",
            "type": "object"
          },
          "createdAt": {
            "description": "The creation timestamp of the subscription.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the subscription.",
            "example": "user123",
            "type": "string"
          },
          "currency": {
            "description": "Currency in which subscription was made.",
            "example": "USD",
            "type": "string"
          },
          "entityId": {
            "description": "Entity id for the subscription. e.g: order id",
            "example": "62f4db0f3059ecee61379012",
            "type": "string"
          },
          "entitySource": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentsOrderSource"
              }
            ],
            "description": "Entity source details for the subscription.",
            "example": "{ type: \"funnel\", id: \"lx6ROqruHGVQD2PZwFxK\", subType: \"upsell\", name: \"test funnel\" }"
          },
          "entityType": {
            "description": "Entity type of subscription (eg: order).",
            "example": "order",
            "type": "string"
          },
          "ipAddress": {
            "description": "Ip address from where subscription was initiated.",
            "example": "103.100.16.82",
            "type": "string"
          },
          "liveMode": {
            "description": "Subscription is in live / test mode.",
            "example": "false",
            "type": "boolean"
          },
          "markAsTest": {
            "description": "Is test subscription.",
            "example": "false",
            "type": "boolean"
          },
          "meta": {
            "description": "Meta details of the subscription.",
            "example": "{ collection: \"transactionsv2\", id: \"6320652f0f664b6632006920\" }",
            "type": "object"
          },
          "paymentProvider": {
            "description": "Payment provider details for the subscription.",
            "example": "{ type: \"paypal\", connectedAccount: { _id: \"64410debdc8f3b0503523abb\", merchantClientId: \"AeXtjrxdgsJiCPwQt5jML5pH-0mwmLs-tH7ub4Uo3IrDKvRl34FvJy8niI6E1wmS_pryIRdNllyVl58b\" } }",
            "type": "object"
          },
          "recurringProduct": {
            "description": "Recurring product details of the subscription.",
            "example": "{ locationId: \"Z4Bxl8J4SaPEPLq9IQ8g\", funnel: \"bQHJWKcyjiKjk4BHv91g\", step: \"2281a993-8a75-4b48-9912-571f29c99a74\", name: \"Sofa Set\" }",
            "type": "object"
          },
          "schedule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentsScheduleOptionsDto"
              }
            ],
            "description": "Scedule details for the subscription.",
            "example": "{ collection: \"transactionsv2\", id: \"6320652f0f664b6632006920\" }"
          },
          "status": {
            "description": "Subscription status.",
            "example": "active",
            "type": "object"
          },
          "subscriptionId": {
            "description": "Subscription id for subscription.",
            "example": "I-0UE609H8E43P",
            "type": "string"
          },
          "subscriptionSnapshot": {
            "description": "Snapshot of subscription.",
            "example": "{ status: \"ACTIVE\", status_update_time: \"2022-08-16T11:06:53Z\", id: \"I-0UE609H8E43P\", plan_id: \"P-82K11750F0313430KMLRGE6Y\", start_time: \"2022-08-16T11:05:31Z\", quantity: 1 }",
            "type": "object"
          },
          "traceId": {
            "description": "Trace id of the subscription.",
            "example": "302d2cf4-1ba0-4bf5-bc3b-f8fa76fda58a",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the subscription.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altType",
          "altId",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetSurveysSchema": {
        "properties": {
          "id": {
            "example": "I5GFa3d3cKjojpe4VVUx",
            "type": "string"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "example": "Survey 1",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GetSurveysSubmissionSuccessfulResponseDto": {
        "properties": {
          "meta": {
            "$ref": "#/components/schemas/metaSchema"
          },
          "submissions": {
            "items": {
              "$ref": "#/components/schemas/SubmissionSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetSurveysSuccessfulResponseDto": {
        "properties": {
          "surveys": {
            "items": {
              "$ref": "#/components/schemas/GetSurveysSchema"
            },
            "type": "array"
          },
          "total": {
            "description": "Number of surveys",
            "example": 20,
            "type": "number"
          }
        },
        "type": "object"
      },
      "GetTagsByIdResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Tags by Tag IDs",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetTagsByIdResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "count": 3,
              "tags": [
                {
                  "_id": "Lx1EI6YIgQYMQi0ytFXv",
                  "createdAt": "2023-08-02T00:00:00.000Z",
                  "createdBy": "Lx1EI6YIgQYMQi0ytFXv",
                  "deleted": false,
                  "locationId": "Lx1EI6YIgQYMQi0ytFXv",
                  "tag": "Primary Tag",
                  "updatedAt": "2023-08-02T00:00:00.000Z"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "GetTagsByIdResponseSchema": {
        "properties": {
          "count": {
            "description": "Count",
            "example": 3,
            "type": "number"
          },
          "tags": {
            "description": "Social Media Tag Data",
            "example": [
              {
                "_id": "Lx1EI6YIgQYMQi0ytFXv",
                "createdAt": "2023-08-02T00:00:00.000Z",
                "createdBy": "Lx1EI6YIgQYMQi0ytFXv",
                "deleted": false,
                "locationId": "Lx1EI6YIgQYMQi0ytFXv",
                "tag": "Primary Tag",
                "updatedAt": "2023-08-02T00:00:00.000Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SocialMediaTagSchema"
            },
            "type": "array"
          }
        },
        "required": [
          "tags"
        ],
        "type": "object"
      },
      "GetTagsByLocationIdResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Tags by Location ID",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetTagsByLocationIdResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "count": 3,
              "tags": [
                {
                  "_id": "Lx1EI6YIgQYMQi0ytFXv",
                  "createdAt": "2023-08-02T00:00:00.000Z",
                  "createdBy": "Lx1EI6YIgQYMQi0ytFXv",
                  "deleted": false,
                  "locationId": "Lx1EI6YIgQYMQi0ytFXv",
                  "tag": "Primary Tag",
                  "updatedAt": "2023-08-02T00:00:00.000Z"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "GetTagsByLocationIdResponseSchema": {
        "properties": {
          "count": {
            "description": "Count",
            "example": 3,
            "type": "number"
          },
          "tags": {
            "description": "Tags Data",
            "example": [
              {
                "_id": "Lx1EI6YIgQYMQi0ytFXv",
                "createdAt": "2023-08-02T00:00:00.000Z",
                "createdBy": "Lx1EI6YIgQYMQi0ytFXv",
                "deleted": false,
                "locationId": "Lx1EI6YIgQYMQi0ytFXv",
                "tag": "Primary Tag",
                "updatedAt": "2023-08-02T00:00:00.000Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SocialMediaTagSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetTemplatePublicV2ResponseDto": {
        "properties": {
          "createdAt": {
            "description": "Created timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the template is deleted",
            "example": false,
            "type": "boolean"
          },
          "editorContentUrl": {
            "description": "URL to fetch the rendered template content as HTML. Issue a GET against this URL to retrieve the body.",
            "example": "https://storage.googleapis.com/email-templates/abc123.html",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type",
            "enum": [
              "html",
              "builder",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Template ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether template is plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Template name",
            "example": "Newsletter Template",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Email preview text",
            "type": "string"
          },
          "subject": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "editorType",
          "isPlainText",
          "deleted"
        ],
        "type": "object"
      },
      "GetTemplateResponseDto": {
        "properties": {
          "_id": {
            "description": "Template Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the Template",
            "example": "New Template",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "total",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetTemplatesSuccessfulResponseDto": {
        "properties": {
          "templates": {
            "items": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/GetSmsTemplateResponseSchema"
                },
                {
                  "$ref": "#/components/schemas/GetEmailTemplateResponseSchema"
                }
              ]
            },
            "type": "array"
          },
          "totalCount": {
            "example": 100,
            "type": "number"
          }
        },
        "type": "object"
      },
      "GetTiktokAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Tiktok Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetTiktokAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "profile": [
                {
                  "avatar": "w37swmmLbA02zgqKPpxITe",
                  "id": "w37swmmLbA02zgqKPpxITe",
                  "isConnected": true,
                  "name": "Account Name",
                  "type": "BUSINESS",
                  "username": "User_name",
                  "verified": true
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Tiktok",
        "type": "object"
      },
      "GetTiktokAccountSchema": {
        "properties": {
          "profile": {
            "description": "Tiktok Business Account",
            "example": [
              {
                "avatar": "w37swmmLbA02zgqKPpxITe",
                "id": "w37swmmLbA02zgqKPpxITe",
                "isConnected": true,
                "name": "Account Name",
                "type": "BUSINESS",
                "username": "User_name",
                "verified": true
              }
            ],
            "items": {
              "$ref": "#/components/schemas/TiktokProfileSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetTiktokBusinessAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Tiktok Business Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetTiktokBusinessAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "profile": [
                {
                  "avatar": "w37swmmLbA02zgqKPpxITe",
                  "id": "w37swmmLbA02zgqKPpxITe",
                  "isConnected": true,
                  "name": "Account Name",
                  "type": "BUSINESS",
                  "username": "User_name",
                  "verified": true
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Tiktok Business",
        "type": "object"
      },
      "GetTiktokBusinessAccountSchema": {
        "properties": {
          "profile": {
            "description": "Tiktok Profile",
            "example": [
              {
                "avatar": "w37swmmLbA02zgqKPpxITe",
                "id": "w37swmmLbA02zgqKPpxITe",
                "isConnected": true,
                "name": "Account Name",
                "type": "BUSINESS",
                "username": "User_name",
                "verified": true
              }
            ],
            "items": {
              "$ref": "#/components/schemas/TiktokProfileSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetTwitterAccountsResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Twitter Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetTwitterAccountsSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "profile": [
                {
                  "avatar": "ZHl1OWpfZEMyeWc5UjJOOU51RVNOal",
                  "id": "ZHl1OWpfZEMyeWc5UjJOOU51RVNOal",
                  "isConnected": true,
                  "name": "Twitter Account name",
                  "protected": true,
                  "username": "sample_user",
                  "verified": true
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "GetTwitterAccountsSchema": {
        "properties": {
          "profile": {
            "description": "Twitter Profile Details",
            "example": [
              {
                "avatar": "ZHl1OWpfZEMyeWc5UjJOOU51RVNOal",
                "id": "ZHl1OWpfZEMyeWc5UjJOOU51RVNOal",
                "isConnected": true,
                "name": "Twitter Account name",
                "protected": true,
                "username": "sample_user",
                "verified": true
              }
            ],
            "items": {
              "$ref": "#/components/schemas/TwitterProfileSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetTxnResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the transaction.",
            "example": "61dd0feac077f72010f78804",
            "type": "string"
          },
          "altId": {
            "description": "AltId is the unique identifier eg: location id.",
            "example": "3SwdhCu3svxI8AKsPJt6",
            "type": "string"
          },
          "altType": {
            "description": "AltType is the type of identifier.",
            "example": "location",
            "type": "string"
          },
          "amount": {
            "description": "Transaction value.",
            "example": "100",
            "type": "number"
          },
          "amountRefunded": {
            "description": "Transaction amount refunded.",
            "example": "10",
            "type": "number"
          },
          "chargeId": {
            "description": "Charge id for transaction.",
            "example": "in_1KGcXDCScnf89tZohCsmImwE",
            "type": "string"
          },
          "chargeSnapshot": {
            "description": "Charge snapshot of transaction.",
            "example": "{ id: \"in_1KGcXDCScnf89tZohCsmImwE\", object: \"invoice\", account_country: \"US\",  account_name:  \"GHL-Testing\" }",
            "type": "object"
          },
          "contactId": {
            "description": "Contact id corresponding to the transaction.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "contactSnapshot": {
            "description": "Contact details of the transaction.",
            "example": "{ last_name: \"Mcclain\", type: \"lead\", first_name_lower_case: \"rogan\", email: \"anish+11@example.com\", last_name_lower_case: \"mcclain\", location_id: \"o6241QsiRwUIJHyjuhos\", company_name: \"Jordan and Cox Trading\"}",
            "type": "object"
          },
          "createdAt": {
            "description": "The creation timestamp of the transaction.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the transaction.",
            "example": "user123",
            "type": "string"
          },
          "currency": {
            "description": "Currency in which transaction was made.",
            "example": "USD",
            "type": "string"
          },
          "entityId": {
            "description": "Entity id for the transaction. e.g: order id",
            "example": "61dd0fe9c077f73e67f78803",
            "type": "string"
          },
          "entitySource": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentsOrderSource"
              }
            ],
            "description": "Entity source details for the transaction.",
            "example": "{ type: \"funnel\", id: \"BDBMEghdIUaqMPEsK349\", subType: \"two_step_order_form\", name: \"new funnel\" }"
          },
          "entityType": {
            "description": "Entity type of transaction (eg: order).",
            "example": "order",
            "type": "string"
          },
          "invoiceId": {
            "description": "Invoice id for the transaction.",
            "example": "in_1KGcXDCScnf89tZohCsmImwE",
            "type": "string"
          },
          "ipAddress": {
            "description": "Ip address from where transaction was initiated.",
            "example": "107.178.194.224",
            "type": "string"
          },
          "isParent": {
            "description": "Is parent transaction.",
            "example": "false",
            "type": "boolean"
          },
          "liveMode": {
            "description": "Transaction is in live / test mode.",
            "example": "false",
            "type": "boolean"
          },
          "markAsTest": {
            "description": "Is test transaction.",
            "example": "false",
            "type": "boolean"
          },
          "mergedFromContactId": {
            "description": "ID of the contact that was merged from.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "meta": {
            "description": "Meta details of the transaction.",
            "example": "{ stepId: \"af7c731e-e36f-4152-bd1a-3f69a31d6d6d\", pageId: \"A8ltotc2jZxurJba4e3Y\", pageUrl: \"/v2/preview/A8ltotc2jZxurJba4e3Y\" }",
            "type": "object"
          },
          "paymentProvider": {
            "description": "Payment provider details of the transaction.",
            "example": "{ type: \"stripe\", connectedAccount: { _id: \"612ca676b484b241fef9d962\", accountId: \"acct_1Ihw53CScnf89tZo\" } }",
            "type": "object"
          },
          "qboResponse": {
            "description": "Qbo details of the transaction.",
            "example": "{ domain: \"QBO\", sparse: false, Id: \"180\", SyncToken: \"0\", TotalAmt: 25 }",
            "type": "object"
          },
          "qboSynced": {
            "description": "Is transaction qbo synced.",
            "example": "false",
            "type": "boolean"
          },
          "receiptId": {
            "description": "Receipt id for transaction.",
            "example": "6492fbea489bc07892c6defb",
            "type": "string"
          },
          "status": {
            "description": "Transaction status.",
            "example": "succeeded",
            "type": "object"
          },
          "subscriptionId": {
            "description": "Subscription id for transaction.",
            "example": "sub_1KGcXDCScnf89tZoVkoEMCEL",
            "type": "string"
          },
          "traceId": {
            "description": "Trace id of the transaction.",
            "example": "d3b16a92-a8ed-4e6b-8467-844750f78ed5",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the transaction.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altType",
          "altId",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetUploadStatusResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched CSV Upload Status",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetUploadStatusResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "count": 6,
              "csvs": [
                {
                  "count": 5,
                  "fileName": "sample.csv",
                  "id": "ve9EPM428h8vShlRW1KT",
                  "locationId": "iVrVJ2uoXNF0wzcBzgl5",
                  "status": "completed"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "GetUploadStatusResponseSchema": {
        "properties": {
          "count": {
            "description": "Total count of CSV records",
            "example": 6,
            "type": "number"
          },
          "csvs": {
            "description": "CSV Data",
            "example": [
              {
                "count": 5,
                "fileName": "sample.csv",
                "id": "ve9EPM428h8vShlRW1KT",
                "locationId": "iVrVJ2uoXNF0wzcBzgl5",
                "status": "completed"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/CSVImportSchema"
            },
            "type": "array"
          }
        },
        "required": [
          "csvs",
          "count"
        ],
        "type": "object"
      },
      "GetWorkflowCampaignPublicV2ResponseDto": {
        "properties": {
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-12-12T08:24:46.700Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Campaign ID",
            "example": "693bd14ea6b50a8df0180e9a",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "sorting workflow",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "workflow",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "115b9030-907c-474c-90a5-2debd838a024",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "published",
              "draft"
            ],
            "example": "published",
            "type": "string"
          },
          "subSources": {
            "description": "Sub-sources (email-sending steps) within this workflow. Each entry's `id` can be passed as the `subSourceId` query parameter to the campaign stats endpoint to retrieve per-step stats.",
            "example": [
              {
                "createdAt": "2025-12-12T08:24:46.700Z",
                "editorContentUrl": "https://storage.googleapis.com/email-templates/abc123.html",
                "editorType": "html",
                "fromEmail": "john@example.com",
                "fromName": "John Doe",
                "id": "a3f1c0e2-6d4b-4f3a-9c1e-7b2d8f5a4c01",
                "isPlainText": false,
                "name": "Send welcome email",
                "previewText": "Check out our latest updates",
                "subject": "Welcome to our newsletter",
                "updatedAt": "2026-01-23T05:58:48.453Z"
              },
              {
                "createdAt": "2025-12-13T10:15:22.300Z",
                "editorType": "builder",
                "fromEmail": "john@example.com",
                "fromName": "John Doe",
                "id": "b7d9e4f1-2a0c-4f8e-bf2a-5e1d3c9b6a02",
                "isPlainText": false,
                "name": "Follow-up after 3 days",
                "subject": "Quick follow-up",
                "updatedAt": "2026-01-20T09:42:11.100Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/WorkflowCampaignSubSourcePublicV2Dto"
            },
            "type": "array"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated at timestamp",
            "example": "2026-01-23T05:58:48.453Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "GetWorkflowCampaignsPublicResponseDto": {
        "properties": {
          "campaigns": {
            "description": "List of workflow campaigns",
            "items": {
              "$ref": "#/components/schemas/WorkflowCampaignPublicDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of campaigns",
            "example": 50,
            "type": "number"
          }
        },
        "required": [
          "campaigns",
          "total"
        ],
        "type": "object"
      },
      "GetWorkflowSuccessfulResponseDto": {
        "properties": {
          "workflows": {
            "items": {
              "$ref": "#/components/schemas/WorkflowSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GetYouTubeAccountsResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched YouTube Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetYoutubeAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "profile": [
                {
                  "avatar": "https://yt3.ggpht.com/example-avatar",
                  "id": "w37swmmLbA02zgqKPpxITe",
                  "isConnected": true,
                  "name": "Account Name",
                  "type": "PROFILE",
                  "username": "@username",
                  "verified": true
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "YouTube",
        "type": "object"
      },
      "GetYoutubeAccountSchema": {
        "properties": {
          "profile": {
            "description": "Youtube Profile",
            "example": [
              {
                "avatar": "https://yt3.ggpht.com/example-avatar",
                "id": "w37swmmLbA02zgqKPpxITe",
                "isConnected": true,
                "name": "Account Name",
                "type": "PROFILE",
                "username": "@username",
                "verified": true
              }
            ],
            "items": {
              "$ref": "#/components/schemas/YoutubeProfileSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleAccountsSchema": {
        "properties": {
          "accountName": {
            "description": "Display name of the Google Business account",
            "example": "Account Name Test",
            "type": "string"
          },
          "name": {
            "description": "Google Business account identifier",
            "example": "accounts/114659701071209971352",
            "type": "string"
          },
          "type": {
            "description": "Type of Google Business account",
            "example": "PERSONAL",
            "type": "string"
          },
          "verificationState": {
            "description": "Verification state of the account",
            "example": "UNVERIFIED",
            "type": "string"
          },
          "vettedState": {
            "description": "Vetted state of the account by Google",
            "example": "NOT_VETTED",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleAdContentDTO": {
        "properties": {
          "adCampaignId": {
            "description": "Ad campaign identifier",
            "example": "camp_abc123",
            "type": "string"
          },
          "adError": {
            "description": "Ad-level error message from Google",
            "example": "Landing page URL is invalid",
            "type": "string"
          },
          "adGroupId": {
            "description": "Ad group identifier",
            "example": "ag_abc123",
            "type": "string"
          },
          "adId": {
            "description": "Internal ad identifier",
            "example": "ad_internal_abc",
            "type": "string"
          },
          "businessName": {
            "description": "Business name",
            "example": "Acme Corp",
            "type": "string"
          },
          "callToActionLabel": {
            "description": "Call to action label",
            "enum": [
              "AUTOMATED",
              "LEARN_MORE",
              "GET_QUOTE",
              "APPLY_NOW",
              "SIGN_UP",
              "CONTACT_US",
              "SUBSCRIBE",
              "DOWNLOAD",
              "BOOK_NOW",
              "SHOP_NOW",
              "BUY_NOW",
              "DONATE_NOW",
              "ORDER_NOW",
              "PLAY_NOW",
              "SEE_MORE"
            ],
            "example": "LEARN_MORE",
            "type": "string"
          },
          "carouselCards": {
            "description": "Carousel cards",
            "example": [
              {
                "callToActionLabel": "LEARN_MORE",
                "finalUrl": "https://example.com",
                "headline": "Shop Now"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleCarouselCardDTO"
            },
            "type": "array"
          },
          "customChannels": {
            "description": "Custom channels flag",
            "example": false,
            "type": "boolean"
          },
          "descriptions": {
            "description": "Ad descriptions",
            "example": [
              "Great products"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "finalUrl": {
            "description": "Final URL",
            "example": "https://example.com",
            "type": "string"
          },
          "googleAdId": {
            "description": "Google Ads ad resource ID",
            "example": "customers/123/ads/456",
            "type": "string"
          },
          "headlines": {
            "description": "Ad headlines",
            "example": [
              "Buy Now",
              "Best Deals"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Ad identifier",
            "example": "ad_abc123",
            "type": "string"
          },
          "isDeleted": {
            "description": "Whether the ad is soft-deleted",
            "example": false,
            "type": "boolean"
          },
          "longHeadlines": {
            "description": "Long headlines",
            "example": [
              "Discover Great Deals Today"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "media": {
            "description": "Ad media items",
            "example": [
              {
                "src": "https://example.com/ad.jpg",
                "type": "IMAGE"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleMediaDTO"
            },
            "type": "array"
          },
          "mediaType": {
            "description": "Media type",
            "enum": [
              "IMAGE",
              "VIDEO",
              "CAROUSEL"
            ],
            "example": "IMAGE",
            "type": "string"
          },
          "name": {
            "description": "Ad name",
            "example": "Summer Sale Ad",
            "type": "string"
          },
          "path1": {
            "description": "Display path 1",
            "example": "products",
            "type": "string"
          },
          "path2": {
            "description": "Display path 2",
            "example": "deals",
            "type": "string"
          },
          "placements": {
            "description": "Channel placements",
            "example": [
              "YOUTUBE"
            ],
            "items": {
              "enum": [
                "GMAIL",
                "YOUTUBE_IN_STREAM",
                "YOUTUBE_SHORTS",
                "YOUTUBE_IN_FEED",
                "DISCOVER",
                "DISPLAY"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "publishingStatus": {
            "description": "Ad publishing status",
            "enum": [
              "DRAFT",
              "SCHEDULED",
              "PUBLISHED",
              "PUBLISHING",
              "FAILED",
              "IN_REVIEW",
              "PAUSED",
              "ARCHIVED",
              "WITH_ISSUES",
              "REJECTED"
            ],
            "example": "PUBLISHED",
            "type": "string"
          },
          "youtubeVideoLinks": {
            "description": "YouTube video links",
            "example": [
              {
                "youtubeVideoId": "dQw4w9WgXcQ"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleYouTubeVideoLinkDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleAdGroupAudienceDTO": {
        "properties": {
          "geoLocations": {
            "description": "Geo-location targeting",
            "example": [
              {
                "key": "geoTargetConstants/2840",
                "name": "United States",
                "type": "country"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleGeoLocationDTO"
            },
            "type": "array"
          },
          "locales": {
            "description": "Language/locale targeting",
            "example": [
              {
                "key": "1000",
                "name": "English"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleLocaleDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleAdGroupDTO": {
        "properties": {
          "adCampaignId": {
            "description": "Ad campaign identifier",
            "example": "camp_abc123",
            "type": "string"
          },
          "adContent": {
            "description": "Ad content items",
            "example": [
              {
                "id": "ad_1",
                "mediaType": "IMAGE",
                "name": "Summer Sale Ad"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleAdContentDTO"
            },
            "type": "array"
          },
          "adGroupError": {
            "description": "Ad group-level error from Google",
            "example": "Keyword policy violation",
            "type": "string"
          },
          "adGroupId": {
            "description": "Google ad group identifier",
            "example": "customers/123/adGroups/456",
            "type": "string"
          },
          "audience": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleAdGroupAudienceDTO"
              }
            ],
            "description": "Ad group audience targeting",
            "example": {
              "geoLocations": [
                {
                  "key": "geoTargetConstants/2840",
                  "name": "United States"
                }
              ],
              "locales": []
            }
          },
          "customChannels": {
            "description": "Custom channels flag",
            "example": false,
            "type": "boolean"
          },
          "googleAdGroupId": {
            "description": "Google Ads ad group resource ID",
            "example": "customers/123/adGroups/456",
            "type": "string"
          },
          "googleAudienceId": {
            "description": "Google audience resource ID",
            "example": "customers/123/audiences/789",
            "type": "string"
          },
          "id": {
            "description": "Ad group identifier",
            "example": "ag_abc123",
            "type": "string"
          },
          "keywords": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleKeywordsDTO"
              }
            ],
            "description": "Keyword targeting",
            "example": {
              "negatives": [],
              "positives": [
                {
                  "keyword": "digital marketing",
                  "matchType": "BROAD"
                }
              ]
            }
          },
          "name": {
            "description": "Ad group name",
            "example": "Ad Group 1",
            "type": "string"
          },
          "publishingStatus": {
            "description": "Ad group publishing status",
            "enum": [
              "DRAFT",
              "SCHEDULED",
              "PUBLISHED",
              "PUBLISHING",
              "FAILED",
              "IN_REVIEW",
              "PAUSED",
              "ARCHIVED",
              "WITH_ISSUES",
              "REJECTED"
            ],
            "example": "PUBLISHED",
            "type": "string"
          },
          "selectedChannels": {
            "description": "Selected channel placements",
            "example": [
              "YOUTUBE"
            ],
            "items": {
              "enum": [
                "GMAIL",
                "YOUTUBE_IN_STREAM",
                "YOUTUBE_SHORTS",
                "YOUTUBE_IN_FEED",
                "DISCOVER",
                "DISPLAY"
              ],
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleAdScheduleDTO": {
        "properties": {
          "dayOfWeek": {
            "description": "Day of week",
            "enum": [
              "FRIDAY",
              "MONDAY",
              "SATURDAY",
              "SUNDAY",
              "THURSDAY",
              "TUESDAY",
              "UNKNOWN",
              "UNSPECIFIED",
              "WEDNESDAY",
              "ALL_DAYS",
              "MONDAY_TO_FRIDAY",
              "SATURDAY_AND_SUNDAY"
            ],
            "example": "MONDAY",
            "type": "string"
          },
          "from": {
            "description": "Start time (HH:MM)",
            "example": "09:00",
            "type": "string"
          },
          "to": {
            "description": "End time (HH:MM)",
            "example": "17:00",
            "type": "string"
          }
        },
        "required": [
          "dayOfWeek",
          "from",
          "to"
        ],
        "type": "object"
      },
      "GoogleAssetImageDTO": {
        "properties": {
          "error": {
            "description": "Error message if asset upload failed",
            "example": "Image too large",
            "type": "string"
          },
          "name": {
            "description": "Asset name",
            "example": "Logo",
            "type": "string"
          },
          "resourceName": {
            "description": "Google Ads resource name",
            "example": "customers/123/assets/456",
            "type": "string"
          },
          "url": {
            "description": "Image URL",
            "example": "https://example.com/logo.png",
            "type": "string"
          }
        },
        "required": [
          "url"
        ],
        "type": "object"
      },
      "GoogleAssetsDTO": {
        "properties": {
          "businessLogo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleAssetImageDTO"
              }
            ],
            "description": "Business logo asset",
            "example": {
              "name": "Business Logo",
              "url": "https://example.com/logo.png"
            }
          },
          "calls": {
            "description": "Call extension asset resource names",
            "example": [
              "customers/123/assets/456"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "images": {
            "description": "Image assets",
            "example": [
              {
                "name": "Logo",
                "url": "https://example.com/logo.png"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleAssetImageDTO"
            },
            "type": "array"
          },
          "leadForm": {
            "description": "Lead form asset resource name",
            "example": "customers/123/assets/321",
            "type": "string"
          },
          "sitelinks": {
            "description": "Sitelink asset resource names",
            "example": [
              "customers/123/assets/789"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleBiddingStrategyDTO": {
        "properties": {
          "type": {
            "description": "Bidding strategy type",
            "example": "MAXIMIZE_CONVERSIONS",
            "type": "string"
          },
          "value": {
            "description": "Bid value in micros",
            "example": 1000000,
            "type": "number"
          }
        },
        "type": "object"
      },
      "GoogleBudgetDTO": {
        "properties": {
          "amount": {
            "description": "Budget amount in micros",
            "example": 5000,
            "type": "number"
          },
          "budgetType": {
            "description": "Budget type",
            "enum": [
              "DAILY",
              "LIFETIME"
            ],
            "example": "DAILY",
            "type": "string"
          },
          "scheduleEndDate": {
            "description": "Schedule end date",
            "example": "2024-12-31",
            "type": "string"
          },
          "scheduleStartDate": {
            "description": "Schedule start date",
            "example": "2024-01-01",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleCampaignAudienceDTO": {
        "properties": {
          "ageRange": {
            "description": "Age range targeting",
            "example": [
              {
                "enum": "AGE_RANGE_25_34",
                "negative": false
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleDemographicTargetDTO"
            },
            "type": "array"
          },
          "gender": {
            "description": "Gender targeting",
            "example": [
              {
                "enum": "MALE",
                "negative": false
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleDemographicTargetDTO"
            },
            "type": "array"
          },
          "geoLocations": {
            "description": "Geo-location targeting",
            "example": [
              {
                "key": "geoTargetConstants/2840",
                "name": "United States",
                "type": "country"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleGeoLocationDTO"
            },
            "type": "array"
          },
          "locales": {
            "description": "Language/locale targeting",
            "example": [
              {
                "key": "1000",
                "name": "English"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleLocaleDTO"
            },
            "type": "array"
          },
          "segments": {
            "description": "Audience segment targeting",
            "example": [
              {
                "id": "customers/123/userLists/456",
                "type": "USER_LIST"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleSegmentTargetDTO"
            },
            "type": "array"
          },
          "targetInterests": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleTargetInterestsDTO"
              }
            ],
            "description": "Interest-based targeting",
            "example": {
              "affinity": [
                "customers/123/userInterests/789"
              ],
              "inMarket": []
            }
          }
        },
        "type": "object"
      },
      "GoogleCampaignGoalDTO": {
        "properties": {
          "isCustomConversionGoal": {
            "description": "Whether this is a custom conversion goal",
            "example": false,
            "type": "boolean"
          },
          "type": {
            "description": "Campaign goal type",
            "enum": [
              "CONVERSIONS",
              "CLICK",
              "YOUTUBE_ENGAGEMENT"
            ],
            "example": "WEBSITE_TRAFFIC",
            "type": "string"
          },
          "value": {
            "description": "Goal value (e.g. conversion action resource name)",
            "example": "customers/123/conversionActions/456",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "GoogleCarouselCardDTO": {
        "properties": {
          "callToActionLabel": {
            "description": "Call to action label",
            "example": "LEARN_MORE",
            "type": "string"
          },
          "finalUrl": {
            "description": "Card final URL",
            "example": "https://example.com",
            "type": "string"
          },
          "headline": {
            "description": "Card headline",
            "example": "Shop Now",
            "type": "string"
          },
          "media": {
            "description": "Card media items",
            "example": [
              {
                "src": "https://example.com/card.jpg",
                "type": "IMAGE"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleMediaDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleDemographicTargetDTO": {
        "properties": {
          "enum": {
            "description": "Demographic enum value",
            "example": "MALE",
            "type": "string"
          },
          "negative": {
            "description": "Whether this is a negative target",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "enum",
          "negative"
        ],
        "type": "object"
      },
      "GoogleGeoLocationDTO": {
        "properties": {
          "addressComponents": {
            "description": "Address components from Google Geocoding API",
            "example": [
              {
                "longName": "New York",
                "shortName": "NY",
                "types": [
                  "locality",
                  "political"
                ]
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GeoAddressComponentDTO"
            },
            "type": "array"
          },
          "countryName": {
            "description": "Country name",
            "example": "United States",
            "type": "string"
          },
          "formattedAddress": {
            "description": "Full formatted address string",
            "example": "New York, NY, USA",
            "type": "string"
          },
          "geometry": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GeoGeometryDTO"
              }
            ],
            "description": "Geometry data from Google Geocoding API",
            "example": {
              "location": {
                "lat": 40.7128,
                "lng": -74.006
              },
              "locationType": "APPROXIMATE"
            }
          },
          "id": {
            "description": "Location identifier (place_id)",
            "example": "ChIJOwg_06VPwokRYv534QaPC8g",
            "type": "string"
          },
          "key": {
            "description": "Geo target constant resource name",
            "example": "geoTargetConstants/2840",
            "type": "string"
          },
          "name": {
            "description": "Location display name",
            "example": "New York",
            "type": "string"
          },
          "placeId": {
            "description": "Google place ID",
            "example": "ChIJOwg_06VPwokRYv534QaPC8g",
            "type": "string"
          },
          "radius": {
            "description": "Radius for proximity targeting",
            "example": 25,
            "type": "number"
          },
          "radiusUnit": {
            "description": "Radius unit",
            "enum": [
              "km",
              "mi"
            ],
            "example": "mi",
            "type": "string"
          },
          "resourceName": {
            "description": "Google Ads resource name",
            "example": "customers/123/geoTargetConstants/2840",
            "type": "string"
          },
          "selectionType": {
            "description": "Include or exclude this location",
            "enum": [
              "include",
              "exclude"
            ],
            "example": "include",
            "type": "string"
          },
          "type": {
            "description": "Location type (city, region, country, address, etc.)",
            "example": "city",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleKeywordItemDTO": {
        "properties": {
          "keyword": {
            "description": "Keyword text",
            "example": "digital marketing",
            "type": "string"
          },
          "matchType": {
            "description": "Match type (BROAD, PHRASE, EXACT)",
            "example": "BROAD",
            "type": "string"
          }
        },
        "required": [
          "keyword",
          "matchType"
        ],
        "type": "object"
      },
      "GoogleKeywordsDTO": {
        "properties": {
          "negatives": {
            "description": "Negative keywords",
            "example": [
              {
                "keyword": "free",
                "matchType": "EXACT"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleKeywordItemDTO"
            },
            "type": "array"
          },
          "positives": {
            "description": "Positive keywords",
            "example": [
              {
                "keyword": "digital marketing",
                "matchType": "BROAD"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GoogleKeywordItemDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleLocaleDTO": {
        "properties": {
          "id": {
            "description": "Language identifier",
            "example": "1000",
            "type": "string"
          },
          "key": {
            "description": "Language key",
            "example": "1000",
            "type": "string"
          },
          "name": {
            "description": "Language display name",
            "example": "English",
            "type": "string"
          },
          "resourceName": {
            "description": "Language resource name",
            "example": "languageConstants/1000",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleLocationSchema": {
        "properties": {
          "isConnected": {
            "description": "Indicates if the location is currently connected",
            "example": true,
            "type": "boolean"
          },
          "isVerified": {
            "description": "Indicates if the location is verified by Google",
            "example": true,
            "type": "boolean"
          },
          "maxLocation": {
            "description": "Indicates if location limit has been reached",
            "example": true,
            "type": "boolean"
          },
          "metadata": {
            "description": "Meta data not related to User",
            "example": {},
            "type": "object"
          },
          "name": {
            "description": "Google Business account identifier",
            "example": "accounts/114659701071209971352",
            "type": "string"
          },
          "relationshipData": {
            "description": "All locations and chain related to this one",
            "example": {},
            "type": "object"
          },
          "storeCode": {
            "description": "Store code or location identifier",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "storefrontAddress": {
            "description": "Store front address",
            "example": {},
            "type": "object"
          },
          "title": {
            "description": "Business location title or name",
            "example": "Location Title",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleMediaDTO": {
        "properties": {
          "error": {
            "description": "Error message if media failed",
            "example": "Invalid format",
            "type": "string"
          },
          "imageType": {
            "description": "Image type classification",
            "example": "SQUARE",
            "type": "string"
          },
          "isLogo": {
            "description": "Is logo flag",
            "example": false,
            "type": "boolean"
          },
          "src": {
            "description": "Media source URL",
            "example": "https://example.com/image.jpg",
            "type": "string"
          },
          "type": {
            "description": "Media type",
            "enum": [
              "IMAGE"
            ],
            "example": "IMAGE",
            "type": "string"
          },
          "url": {
            "description": "Public URL of the media",
            "example": "https://example.com/image.jpg",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleNetworkSettingsDTO": {
        "properties": {
          "targetContentNetwork": {
            "description": "Target Google Display Network",
            "example": false,
            "type": "boolean"
          },
          "targetSearchNetwork": {
            "description": "Target Google Search Network",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "targetSearchNetwork",
          "targetContentNetwork"
        ],
        "type": "object"
      },
      "GoogleSegmentTargetDTO": {
        "properties": {
          "id": {
            "description": "Segment identifier",
            "example": "customers/123/userLists/456",
            "type": "string"
          },
          "type": {
            "description": "Segment type",
            "example": "USER_LIST",
            "type": "string"
          }
        },
        "required": [
          "type",
          "id"
        ],
        "type": "object"
      },
      "GoogleTargetInterestsDTO": {
        "properties": {
          "affinity": {
            "description": "Affinity audience IDs",
            "example": [
              "customers/123/userInterests/789"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "inMarket": {
            "description": "In-market audience IDs",
            "example": [
              "customers/123/userInterests/321"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleYouTubeVideoLinkDTO": {
        "properties": {
          "youtubeVideoId": {
            "description": "YouTube video ID",
            "example": "dQw4w9WgXcQ",
            "type": "string"
          }
        },
        "required": [
          "youtubeVideoId"
        ],
        "type": "object"
      },
      "GrandTotalDto": {
        "properties": {
          "amount": {
            "description": "Total amount before discounts",
            "example": 100,
            "type": "number"
          },
          "currency": {
            "description": "Currency of the total amount",
            "example": "USD",
            "type": "string"
          },
          "discountPercentage": {
            "description": "Total discount percentage applied",
            "example": 15,
            "type": "number"
          },
          "discounts": {
            "description": "List of applied discounts",
            "items": {
              "$ref": "#/components/schemas/ProposalsDiscountDto"
            },
            "type": "array"
          }
        },
        "required": [
          "amount",
          "currency",
          "discountPercentage",
          "discounts"
        ],
        "type": "object"
      },
      "GreetingCard": {
        "properties": {
          "content": {
            "description": "Greeting card content",
            "example": [
              "Learn more about our services"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "style": {
            "description": "Greeting card style",
            "example": "LIST_STYLE",
            "type": "string"
          },
          "title": {
            "description": "Greeting card title",
            "example": "Welcome!",
            "type": "string"
          }
        },
        "required": [
          "title",
          "style",
          "content"
        ],
        "type": "object"
      },
      "GroupCreateDTO": {
        "properties": {
          "description": {
            "example": "group description",
            "type": "string"
          },
          "isActive": {
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          },
          "name": {
            "example": "group a",
            "type": "string"
          },
          "slug": {
            "example": "15-mins",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "description",
          "slug"
        ],
        "type": "object"
      },
      "GroupCreateSuccessfulResponseDTO": {
        "properties": {
          "group": {
            "$ref": "#/components/schemas/GroupDTO"
          }
        },
        "type": "object"
      },
      "GroupDTO": {
        "properties": {
          "description": {
            "example": "group description",
            "type": "string"
          },
          "id": {
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          },
          "isActive": {
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          },
          "name": {
            "example": "group a",
            "type": "string"
          },
          "slug": {
            "example": "15-mins",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "description",
          "slug"
        ],
        "type": "object"
      },
      "GroupStatusUpdateParams": {
        "properties": {
          "isActive": {
            "description": "Is Active?",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "isActive"
        ],
        "type": "object"
      },
      "GroupSuccessfulResponseDTO": {
        "properties": {
          "success": {
            "description": "Success",
            "example": "true",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "GroupUpdateDTO": {
        "properties": {
          "description": {
            "example": "group description",
            "type": "string"
          },
          "name": {
            "example": "group a",
            "type": "string"
          },
          "slug": {
            "example": "15-mins",
            "type": "string"
          }
        },
        "required": [
          "name",
          "description",
          "slug"
        ],
        "type": "object"
      },
      "HiddenFieldDTO": {
        "properties": {
          "name": {
            "description": "Field name",
            "example": "utm_source",
            "type": "string"
          },
          "value": {
            "description": "Field value",
            "example": "linkedin",
            "type": "string"
          }
        },
        "required": [
          "name",
          "value"
        ],
        "type": "object"
      },
      "Hour": {
        "properties": {
          "closeHour": {
            "maximum": 23,
            "minimum": 0,
            "type": "number"
          },
          "closeMinute": {
            "maximum": 60,
            "minimum": 0,
            "type": "number"
          },
          "openHour": {
            "maximum": 23,
            "minimum": 0,
            "type": "number"
          },
          "openMinute": {
            "maximum": 60,
            "minimum": 0,
            "type": "number"
          }
        },
        "required": [
          "openHour",
          "openMinute",
          "closeHour",
          "closeMinute"
        ],
        "type": "object"
      },
      "IBuilderJsonMapper": {
        "properties": {
          "attrs": {
            "description": "Object mapping element IDs to their attributes and styles",
            "type": "object"
          },
          "elements": {
            "description": "Array of VNode elements representing the email structure",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "templateSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TemplateSettings"
              }
            ],
            "description": "Template-level settings and configuration"
          }
        },
        "required": [
          "elements",
          "attrs",
          "templateSettings"
        ],
        "type": "object"
      },
      "ICustomField": {
        "properties": {
          "acceptedFormats": {
            "description": "Allowed file formats for uploads. Options include: .pdf, .docx, .doc, .jpg, .jpeg, .png, .gif, .csv, .xlsx, .xls, all",
            "enum": [
              ".pdf",
              ".docx",
              ".doc",
              ".jpg",
              ".jpeg",
              ".png",
              ".gif",
              ".csv",
              ".xlsx",
              ".xls",
              "all"
            ],
            "type": "string"
          },
          "allowCustomOption": {
            "description": "Determines if users can add a custom option value different from the predefined options in records for RADIO type fields. A custom value added in one record does not automatically become an option and will not appear as an option for other records.",
            "example": true,
            "type": "boolean"
          },
          "dataType": {
            "description": "Type of field that you are trying to create",
            "enum": [
              "TEXT",
              "LARGE_TEXT",
              "NUMERICAL",
              "PHONE",
              "MONETORY",
              "CHECKBOX",
              "SINGLE_OPTIONS",
              "MULTIPLE_OPTIONS",
              "DATE",
              "TEXTBOX_LIST",
              "FILE_UPLOAD",
              "RADIO"
            ],
            "type": "string"
          },
          "dateAdded": {
            "description": "Date and time when the object was added",
            "format": "date-time",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date and time when the object was last updated",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "Description of the field",
            "type": "string"
          },
          "fieldKey": {
            "description": "Field key. For Custom Object it's formatted as \"custom_object.{objectKey}.{fieldKey}\". \"custom_object\" is a fixed prefix, \"{objectKey}\" is your custom object's identifier, and \"{fieldName}\" is the unique field name within that object. Example: \"custom_object.pet.name\" for a \"name\" field in a \"pet\" custom object.",
            "example": "custom_object.pet.name",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the object",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "maxFileLimit": {
            "description": "Maximum file limit for uploads",
            "example": 2,
            "type": "number"
          },
          "name": {
            "description": "Field name",
            "example": "Name",
            "type": "string"
          },
          "objectKey": {
            "description": "The key for your custom / standard object. This key uniquely identifies the custom object. Example: \"custom_object.pet\" for a custom object related to pets.",
            "example": "custom_object.pet",
            "type": "string"
          },
          "options": {
            "description": "Options for the field (Optional, valid only for SINGLE_OPTIONS, MULTIPLE_OPTIONS, RADIO, CHECKBOX, TEXTBOX_LIST type)",
            "items": {
              "$ref": "#/components/schemas/OptionDTO"
            },
            "type": "array"
          },
          "parentId": {
            "description": "ID of the parent folder",
            "example": "3v34PM428h8vShlRW1KT",
            "type": "string"
          },
          "placeholder": {
            "description": "Placeholder text for the field",
            "type": "string"
          },
          "showInForms": {
            "description": "Whether the field should be shown in forms",
            "type": "boolean"
          }
        },
        "required": [
          "locationId",
          "showInForms",
          "id",
          "objectKey",
          "dataType",
          "parentId",
          "fieldKey",
          "dateAdded",
          "dateUpdated"
        ],
        "type": "object"
      },
      "ICustomFieldFolder": {
        "properties": {
          "id": {
            "description": "Unique identifier of the object",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Field name",
            "example": "Name",
            "type": "string"
          },
          "objectKey": {
            "description": "The key for your custom object. This key uniquely identifies the custom object. Example: \"custom_object.pet\" for a custom object related to pets.",
            "example": "custom_object.pet",
            "type": "string"
          }
        },
        "required": [
          "id",
          "objectKey",
          "locationId",
          "name"
        ],
        "type": "object"
      },
      "ICustomObjectSchema": {
        "properties": {
          "dateAdded": {
            "description": "Date and time when the object was added",
            "format": "date-time",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date and time when the object was last updated",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "Custom / Standard  Object Descriptions for example , Pet Object`s description",
            "example": "These are non vaccinated pets",
            "type": "string"
          },
          "id": {
            "description": "id of the custom / standard object schema",
            "example": "661c06b4ffde146bdb469442",
            "type": "string"
          },
          "key": {
            "description": "key that would be used to refer the custom / standard Object internally (lowercase + underscore_separated). For custom objects, 'custom_objects.' would be added as prefix by default",
            "example": "custom_objects.pet",
            "type": "string"
          },
          "labels": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomObjectLabelDto"
              }
            ],
            "description": "This is what your custom / standard  object will be called. These labels will be used to display your custom object on the UI",
            "example": {
              "plural": "Pets",
              "singular": "Pet"
            }
          },
          "locationId": {
            "description": "location's id",
            "example": "Q9DT3OAqEXDLYuob1G32",
            "type": "string"
          },
          "primaryDisplayProperty": {
            "description": "Primary property for the custom / standard  Object. This would be used as primary data when rendering the UI. 'custom_objects.{{object_key}} or business.{{object_key}} (for company)' would be added as prefix by default for all the custom / standard objects",
            "example": "custom_objects.pet.name",
            "type": "string"
          },
          "standard": {
            "description": "false in case of custom objects and true in case of standard objects like contacts and opportunities ",
            "example": false,
            "type": "boolean"
          },
          "type": {
            "description": "Object`s Type",
            "example": "The Object type can either USER_DEFINED or SYSTEM_DEFINED",
            "type": "object"
          }
        },
        "required": [
          "id",
          "standard",
          "key",
          "labels",
          "locationId",
          "primaryDisplayProperty",
          "dateAdded",
          "dateUpdated"
        ],
        "type": "object"
      },
      "IOgTagsSchema": {
        "properties": {
          "error": {
            "description": "Og Tag Error",
            "example": "InvalidLink",
            "type": "string"
          },
          "ogDescription": {
            "description": "Tag description",
            "example": "Social media as we know it has barely",
            "type": "string"
          },
          "ogImage": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgImageSchema"
              }
            ],
            "description": "OG Image data",
            "example": {
              "url": "https://knowledge.wharton.upenn.edu/wp-content/uploads/2019/07/072619_socialmedia_phonelikes-600x440.jpg"
            }
          },
          "ogSiteName": {
            "description": "Site Name",
            "example": "Knowledge at Wharton",
            "type": "string"
          },
          "ogTitle": {
            "description": "Tag Title",
            "example": "The Impact of Social Media: Is it Irreplaceable?",
            "type": "string"
          },
          "ogUrl": {
            "description": "Tag Url",
            "example": "https://knowledge.wharton.upenn.edu/article/impact-of-social-media/",
            "type": "string"
          },
          "url": {
            "description": "Tag url",
            "example": "https://knowledge.wharton.upenn.edu/article/impact-of-social-media/",
            "type": "string"
          }
        },
        "type": "object"
      },
      "IOnboardingDto": {
        "properties": {
          "affiliateSignup": {
            "description": "Set to true if it is from affiliate",
            "example": true,
            "type": "boolean"
          },
          "conversationDemo": {
            "example": "",
            "type": "boolean"
          },
          "customerCount": {
            "example": "",
            "type": "string"
          },
          "hasJoinedImplementationCall": {
            "description": "Set to true if user joined implementation call",
            "example": true,
            "type": "boolean"
          },
          "hasJoinedKickoffCall": {
            "description": "Set to true if user joined onboarding call",
            "example": true,
            "type": "boolean"
          },
          "haveWebsite": {
            "example": "",
            "type": "boolean"
          },
          "industryServed": {
            "example": "",
            "type": "string"
          },
          "kickoffActionTaken": {
            "description": "Set to true if user joined onboarding call",
            "example": true,
            "type": "boolean"
          },
          "location": {
            "example": "",
            "type": "boolean"
          },
          "locationId": {
            "example": "",
            "type": "string"
          },
          "metaData": {
            "description": "metaData for onboarding",
            "example": true,
            "type": "object"
          },
          "pending": {
            "example": "true",
            "type": "boolean"
          },
          "planId": {
            "description": "Selected agency plan unique plan Id",
            "example": "plan_EOi37NLV12u68i",
            "type": "string"
          },
          "snapshotId": {
            "example": "",
            "type": "string"
          },
          "tools": {
            "example": "",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "version": {
            "description": "This helps in A/B tracking of onboarding flow",
            "example": "1",
            "type": "string"
          },
          "websiteUrl": {
            "example": "",
            "type": "string"
          }
        },
        "required": [
          "pending"
        ],
        "type": "object"
      },
      "IRecordSchema": {
        "properties": {
          "dateAdded": {
            "description": "Date and time when the object was added",
            "format": "date-time",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date and time when the object was last updated",
            "format": "date-time",
            "type": "string"
          },
          "followers": {
            "description": "Follower (User's ids). Limited to 10 for now",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "v5cEPM428h8vShlRW1KT"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "id of the record",
            "example": "661c06b4ffde146bdb469442",
            "type": "string"
          },
          "owner": {
            "description": "Owner (User's id). Limited to 1 for now. Only Supported with custom objects",
            "example": [
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "properties": {
            "description": "Properties of the record",
            "example": {
              "customer_number": 1424,
              "money": {
                "currency": "default",
                "value": 100
              },
              "my_files": [
                {
                  "url": "---url_of_file---"
                }
              ],
              "my_textbox_list.option_a": "Value 1",
              "my_textbox_list.option_b": "Value 2",
              "phone_number": "+917000000000",
              "recieved_on": "2024-07-11",
              "section_of_app": [
                "contacts",
                "smartlist"
              ],
              "ticket_name": "Customer not able login",
              "type_of_ticket": "doubt"
            },
            "type": "string"
          }
        },
        "required": [
          "id",
          "owner",
          "followers",
          "properties",
          "dateAdded",
          "dateUpdated"
        ],
        "type": "object"
      },
      "IconSchema": {
        "properties": {
          "fontFamily": {
            "description": "Font family of the icon",
            "enum": [
              "fab",
              "fas",
              "far"
            ],
            "type": "string"
          },
          "name": {
            "description": "Name of the icon",
            "example": "yin-yang",
            "type": "string"
          }
        },
        "required": [
          "name",
          "fontFamily"
        ],
        "type": "object"
      },
      "IconSchemaOptional": {
        "properties": {
          "fontFamily": {
            "description": "Font family of the icon",
            "enum": [
              "fab",
              "fas",
              "far"
            ],
            "type": "string"
          },
          "name": {
            "description": "Name of the icon",
            "example": "yin-yang",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ImportTemplatePublicV2BodyDto": {
        "properties": {
          "importProvider": {
            "description": "Import provider (URL-based providers only)",
            "enum": [
              "mailchimp",
              "active_campaign"
            ],
            "example": "mailchimp",
            "type": "string"
          },
          "importUrl": {
            "description": "Public import URL",
            "example": "https://templates.example.com/public/template-123",
            "type": "string"
          },
          "name": {
            "description": "Template name",
            "example": "Imported Template",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "userId": {
            "description": "ID of the user performing this action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "required": [
          "importProvider",
          "importUrl"
        ],
        "type": "object"
      },
      "ImportTemplatePublicV2ResponseDto": {
        "properties": {
          "createdAt": {
            "description": "Created timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type",
            "enum": [
              "html",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Template ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether template is plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Template name",
            "example": "Newsletter Template",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Email preview text",
            "type": "string"
          },
          "previewUrl": {
            "description": "Preview URL",
            "example": "https://example.com/preview/template123",
            "type": "string"
          },
          "subjectLine": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "editorType",
          "isPlainText"
        ],
        "type": "object"
      },
      "InCallDataExtractionActionParameters": {
        "properties": {
          "contactFieldId": {
            "description": "ID of the contact field to be updated with the extracted data",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "description": {
            "description": "Description of what data to extract",
            "example": "Caller's phone number",
            "type": "string"
          },
          "examples": {
            "description": "Example values to help Agent understand the expected format. At least one example is required, maximum 5 examples allowed.",
            "example": [
              "+1234567890",
              "+9876543210"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "overwriteExistingValue": {
            "default": false,
            "description": "Whether to overwrite existing field value if already set, default is false",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "contactFieldId",
          "description",
          "examples"
        ],
        "type": "object"
      },
      "InboundDndSettingSchema": {
        "properties": {
          "message": {
            "description": "Custom message associated with the inbound DND setting",
            "example": "Please do not contact me via this channel",
            "type": "string"
          },
          "status": {
            "description": "Inbound DND status for this channel",
            "enum": [
              "active",
              "inactive"
            ],
            "example": "active",
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "InboundDndSettingsSchema": {
        "properties": {
          "all": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InboundDndSettingSchema"
              }
            ],
            "description": "Inbound DND settings applied to all channels",
            "example": {
              "message": "Do not contact me",
              "status": "active"
            }
          }
        },
        "type": "object"
      },
      "InitiateFileUploadDto": {
        "properties": {
          "channel": {
            "description": "Channel type for size limits (WHATSAPP for 100MB limit, others for 5MB)",
            "example": "WHATSAPP",
            "type": "string"
          },
          "contentType": {
            "description": "MIME type of the file",
            "example": "video/mp4",
            "type": "string"
          },
          "conversationId": {
            "description": "Conversation ID",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "fileSize": {
            "description": "File size in bytes (optional, for pre-validation)",
            "example": 52428800,
            "type": "number"
          },
          "filename": {
            "description": "Original filename with extension",
            "example": "video.mp4",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "conversationId",
          "filename",
          "contentType",
          "channel"
        ],
        "type": "object"
      },
      "InitiateFileUploadResponseDto": {
        "properties": {
          "expiresAt": {
            "description": "URL expiration timestamp (Unix milliseconds)",
            "example": 1701619200000,
            "type": "number"
          },
          "filePath": {
            "description": "File path in GCS bucket (needed for confirmation endpoint)",
            "example": "location/loc123/conversations/conv456/uuid.mp4",
            "type": "string"
          },
          "maxFileSize": {
            "description": "Maximum allowed file size in bytes",
            "example": 104857600,
            "type": "number"
          },
          "uploadId": {
            "description": "Unique upload ID for tracking and completing the upload",
            "example": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "type": "string"
          },
          "uploadUrl": {
            "description": "Signed URL for direct upload to GCS. Use PUT request with file content.",
            "example": "https://storage.googleapis.com/bucket/path?X-Goog-Algorithm=...",
            "type": "string"
          }
        },
        "required": [
          "uploadUrl",
          "uploadId",
          "filePath",
          "expiresAt",
          "maxFileSize"
        ],
        "type": "object"
      },
      "InstagramAccountSchema": {
        "properties": {
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "avau37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "id": {
            "description": "Instagram account identifier",
            "example": "idu37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "isConnected": {
            "description": "Indicates if the account is currently connected",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Display name of the Instagram account",
            "example": "Insta account",
            "type": "string"
          },
          "pageId": {
            "description": "Facebook page ID associated with the Instagram account",
            "example": "pidu37swmmLbA02zgqKPpxITe2",
            "type": "string"
          }
        },
        "type": "object"
      },
      "InstagramPageDTO": {
        "properties": {
          "facebookPageId": {
            "description": "Facebook Page ID",
            "example": "1234567890",
            "type": "string"
          },
          "facebookPageName": {
            "description": "Facebook Page Name",
            "example": "Facebook Page Name",
            "type": "string"
          },
          "instagramPageId": {
            "description": "Instagram Page ID",
            "example": "1234567890",
            "type": "string"
          },
          "instagramUsername": {
            "description": "Instagram UserName",
            "example": "Instagram UserName",
            "type": "string"
          }
        },
        "type": "object"
      },
      "InstagramPostSchema": {
        "properties": {
          "collaborators": {
            "description": "Object mapping account IDs to arrays of associated usernames for collaboration. Only allowed for type \"post\" and \"reels\"",
            "example": {
              "accountId1": [
                "username1",
                "username2"
              ],
              "accountId2": [
                "username3",
                "username4"
              ]
            },
            "type": "object"
          },
          "publishViaPushNotification": {
            "description": "Send Instagram Story via Push  Notification instead of direct posting. Only applicable for Story type.",
            "example": true,
            "type": "boolean"
          },
          "publisherNote": {
            "description": "Note to the publisher for manual posting guidance. Only used when publishViaPushNotification is true.",
            "example": "When publishing, add swipe up link to the landing page so that we can direct them to the sales page",
            "type": "string"
          },
          "showOnFeed": {
            "description": "Show Reel on profile grid/feed.\n\n**✅ Applies to:** Reels only\n\n- `true` - Reel appears on your profile grid\n- `false` - Reel only appears in Reels tab",
            "example": true,
            "type": "boolean"
          },
          "type": {
            "description": "Instagram post format type.\n\n**Available Types:**\n- `post` - Standard feed post (images, videos, carousels)\n- `story` - 24-hour temporary story\n- `reel` - Short-form vertical video (up to 90 seconds)\n\n**Restrictions:**\n- Media is REQUIRED for all Instagram posts\n- Reels: Require exactly 1 video\n- Stories: Captions not supported, JPEG only for images",
            "enum": [
              "post",
              "story",
              "reel"
            ],
            "example": "post",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "InstalledLocationSchema": {
        "properties": {
          "_id": {
            "description": "Location ID",
            "example": "0IHuJvc2ofPAAA8GzTRi",
            "type": "string"
          },
          "address": {
            "description": "Address linked to location",
            "example": "47 W 13th St, New York, NY 10011, USA",
            "type": "string"
          },
          "installedAt": {
            "description": "Timestamp when the app was installed on this location",
            "example": "2024-01-15T10:30:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "isInstalled": {
            "description": "Check if the requested app is installed for following location",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the location",
            "example": "John Deo",
            "type": "string"
          },
          "versionId": {
            "description": "Version ID of the installed app version for this location",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name",
          "address"
        ],
        "type": "object"
      },
      "InstallerDetailsDTO": {
        "properties": {
          "companyEmail": {
            "description": "Company email. Will be null for sub-account installations due to PII concerns.",
            "example": "contact@example.com",
            "nullable": true,
            "type": "string"
          },
          "companyHighLevelPlan": {
            "deprecated": true,
            "description": "Company plan. Will be null for sub-account installations due to business sensitivity.",
            "example": "agency_monthly_497",
            "nullable": true,
            "type": "string"
          },
          "companyId": {
            "description": "Company ID",
            "example": "company123",
            "type": "string"
          },
          "companyName": {
            "description": "Company name",
            "example": "Example Company",
            "type": "string"
          },
          "companyOwnerFullName": {
            "description": "Company owner full name. Will be null for sub-account installations due to PII concerns.",
            "example": "John Doe",
            "nullable": true,
            "type": "string"
          },
          "companyPlan": {
            "description": "Company plan. Will be null for sub-account installations due to business sensitivity.",
            "example": "agency_monthly_497",
            "nullable": true,
            "type": "string"
          },
          "isWhitelabelCompany": {
            "description": "Whether the company is a whitelabel company",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID (if applicable)",
            "example": "location123",
            "type": "string"
          },
          "marketplaceAppPlanId": {
            "description": "Marketplace app plan ID for paid apps",
            "example": "plan123",
            "type": "string"
          },
          "relationshipNumber": {
            "description": "Company relationship number",
            "example": "0-002-230",
            "type": "string"
          },
          "userId": {
            "description": "User ID who installed the app",
            "example": "user123",
            "type": "string"
          },
          "whitelabelDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WhitelabelDetailsDTO"
              }
            ],
            "description": "Whitelabel details (only present if isWhitelabelCompany is true)",
            "example": {
              "domain": "example.com",
              "logoUrl": "https://example.com/logo.png"
            }
          }
        },
        "required": [
          "companyId",
          "companyName",
          "relationshipNumber",
          "userId",
          "isWhitelabelCompany"
        ],
        "type": "object"
      },
      "InstructorDetails": {
        "properties": {
          "description": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "description"
        ],
        "type": "object"
      },
      "IntegrationProviderSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier of the integration provider.",
            "example": "65cb47dda50f4f13ced4b870",
            "type": "string"
          },
          "altId": {
            "description": "The altId / locationId of the integration provider.",
            "example": "Z4Bxl8J4SaPEPLq9IQ8g",
            "type": "string"
          },
          "altType": {
            "description": "The altType of the integration provider.",
            "example": "location",
            "type": "string"
          },
          "createdAt": {
            "description": "The timestamp when the integration provider was created.",
            "example": "2024-02-13T10:43:41.026Z",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "A brief description providing additional information about the integration provider.",
            "example": "Lorem",
            "type": "string"
          },
          "imageUrl": {
            "description": "The URL to an image representing the integration provider.",
            "example": "https://example.com/assets/pmd/img/payments/nmi-logo.webp",
            "type": "string"
          },
          "provider": {
            "description": "The payment provider associated with the integration provider.",
            "example": "nmi",
            "type": "string"
          },
          "route": {
            "description": "The route name associated with the integration provider.",
            "example": "epd",
            "type": "string"
          },
          "title": {
            "description": "The title or name of the integration provider.",
            "example": "Example",
            "type": "string"
          },
          "updatedAt": {
            "description": "The timestamp when the integration provider was last updated.",
            "example": "2024-02-13T10:43:41.026Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "title",
          "route",
          "provider",
          "description",
          "imageUrl",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "Interval": {
        "properties": {
          "endHour": {
            "description": "End hour (24-hour format)",
            "example": 17,
            "type": "number"
          },
          "endMinute": {
            "description": "End minute",
            "example": 30,
            "type": "number"
          },
          "startHour": {
            "description": "Start hour (24-hour format)",
            "example": 9,
            "type": "number"
          },
          "startMinute": {
            "description": "Start minute",
            "example": 0,
            "type": "number"
          }
        },
        "required": [
          "startHour",
          "startMinute",
          "endHour",
          "endMinute"
        ],
        "type": "object"
      },
      "IntervalDTO": {
        "properties": {
          "endHour": {
            "description": "Ending hour of the working interval in 24-hour format (0-23)",
            "example": 17,
            "maximum": 23,
            "minimum": 0,
            "type": "number"
          },
          "endMinute": {
            "description": "Ending minute of the working interval (0-59)",
            "example": 30,
            "maximum": 59,
            "minimum": 0,
            "type": "number"
          },
          "startHour": {
            "description": "Starting hour of the working interval in 24-hour format (0-23)",
            "example": 9,
            "maximum": 23,
            "minimum": 0,
            "type": "number"
          },
          "startMinute": {
            "description": "Starting minute of the working interval (0-59)",
            "example": 0,
            "maximum": 59,
            "minimum": 0,
            "type": "number"
          }
        },
        "required": [
          "startHour",
          "endHour",
          "startMinute",
          "endMinute"
        ],
        "type": "object"
      },
      "InvalidLocationDTO": {
        "properties": {
          "message": {
            "description": "Error message describing the location access failure",
            "example": "The token does not have access to this location",
            "type": "string"
          },
          "statusCode": {
            "description": "HTTP status code for invalid location access",
            "example": 403,
            "type": "number"
          }
        },
        "type": "object"
      },
      "InventoryItemDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the price",
            "example": "6241712be68f7a98102ba272",
            "type": "string"
          },
          "allowOutOfStockPurchases": {
            "description": "Whether out of stock purchases are allowed",
            "example": false,
            "type": "boolean"
          },
          "availableQuantity": {
            "description": "Available quantity in inventory",
            "example": 50,
            "type": "number"
          },
          "image": {
            "description": "Product image URL",
            "example": "https://example.com/images/product.jpg",
            "type": "string"
          },
          "name": {
            "description": "Name of the price/variant",
            "example": "Medium T-shirt",
            "type": "string"
          },
          "product": {
            "description": "Product ID this price belongs to",
            "example": "6241712be68f7a98102ba270",
            "type": "string"
          },
          "productName": {
            "description": "Product name",
            "example": "T-shirt",
            "type": "string"
          },
          "sku": {
            "description": "SKU for the product variant",
            "example": "TSHIRT-MED-001",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name",
          "availableQuantity",
          "sku",
          "allowOutOfStockPurchases",
          "product",
          "updatedAt"
        ],
        "type": "object"
      },
      "InvoiceItemDto": {
        "properties": {
          "amount": {
            "description": "Product amount",
            "example": 999,
            "type": "number"
          },
          "automaticTaxCategoryId": {
            "description": "Tax category id for calculating automatic tax",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "Invoice descriptions",
            "example": "ABC Corp.",
            "type": "string"
          },
          "isSetupFeeItem": {
            "description": "Setupfee item, only created when 1st invoice of recurring schedule is generated",
            "type": "boolean"
          },
          "name": {
            "description": "Invoice Item Name",
            "example": "ABC Product",
            "type": "string"
          },
          "priceId": {
            "description": "Price Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "productId": {
            "description": "Product Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "qty": {
            "description": "Product Quantity",
            "example": 1,
            "type": "number"
          },
          "taxInclusive": {
            "default": false,
            "description": "true if item amount is tax inclusive",
            "example": true,
            "type": "boolean"
          },
          "taxes": {
            "description": "Tax",
            "items": {
              "$ref": "#/components/schemas/ItemTaxDto"
            },
            "type": "array"
          },
          "type": {
            "description": "Price type of the item",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          }
        },
        "required": [
          "name",
          "currency",
          "amount",
          "qty"
        ],
        "type": "object"
      },
      "InvoiceProductSettingsDto": {
        "properties": {
          "descriptionOptional": {
            "description": "Flag indicating if the product description is optional or not",
            "example": true,
            "type": "boolean"
          },
          "enableImportProductDescription": {
            "description": "Flag indicating if the product description import is enabled or not",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "InvoiceSettingsBusinessDetailsDto": {
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "customValues": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "logoUrl": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "phoneNo": {
            "type": "string"
          },
          "website": {
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "InvoiceSettingsSenderConfigurationDto": {
        "properties": {
          "fromEmail": {
            "description": "Email id to be used while sending email notification",
            "example": "alex@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name to be used while sending email notification",
            "example": "Alex",
            "type": "string"
          }
        },
        "type": "object"
      },
      "InvoicesCardDto": {
        "properties": {
          "brand": {
            "type": "string"
          },
          "last4": {
            "type": "string"
          }
        },
        "required": [
          "brand",
          "last4"
        ],
        "type": "object"
      },
      "InvoicesCustomRRuleOptionsDto": {
        "properties": {
          "count": {
            "description": "Max number of task executions",
            "example": 10,
            "type": "number"
          },
          "dayOfMonth": {
            "description": "-1, 1, 2, 3, ..., 27, 28",
            "example": 15,
            "type": "number"
          },
          "dayOfWeek": {
            "enum": [
              "mo",
              "tu",
              "we",
              "th",
              "fr",
              "sa",
              "su"
            ],
            "example": "mo",
            "type": "string"
          },
          "daysBefore": {
            "description": "Execute task number of days before",
            "example": 5,
            "type": "number"
          },
          "endDate": {
            "description": "End date in YYYY-MM-DD format",
            "example": "2029-11-01",
            "type": "string"
          },
          "endTime": {
            "description": "End time in HH:mm:ss format",
            "example": "18:45:00",
            "type": "string"
          },
          "endType": {
            "description": "End type like after, by, count",
            "example": "by",
            "type": "string"
          },
          "interval": {
            "example": 2,
            "type": "number"
          },
          "intervalType": {
            "enum": [
              "yearly",
              "monthly",
              "weekly",
              "daily",
              "hourly",
              "minutely",
              "secondly"
            ],
            "example": "monthly",
            "type": "string"
          },
          "monthOfYear": {
            "enum": [
              "jan",
              "feb",
              "mar",
              "apr",
              "may",
              "jun",
              "jul",
              "aug",
              "sep",
              "oct",
              "nov",
              "dec"
            ],
            "example": "jan",
            "type": "string"
          },
          "numOfWeek": {
            "description": "-1, 1, 2, 3, 4",
            "example": -1,
            "type": "number"
          },
          "startDate": {
            "description": "Start date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "startTime": {
            "description": "Start time in HH:mm:ss format",
            "example": "20:45:00",
            "type": "string"
          },
          "useStartAsPrimaryUserAccepted": {
            "description": "Start as primary user accepted date",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "intervalType",
          "interval",
          "startDate"
        ],
        "type": "object"
      },
      "InvoicesDiscountDto": {
        "properties": {
          "type": {
            "default": "percentage",
            "description": "Discount type",
            "enum": [
              "percentage",
              "fixed"
            ],
            "example": "percentage",
            "type": "string"
          },
          "validOnProductIds": {
            "description": "Product Ids on which discount is applicable",
            "example": "[ '6579751d56f60276e5bd4154' ]",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "value": {
            "default": 0,
            "description": "Discount Value",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "InvoicesScheduleOptionsDto": {
        "properties": {
          "executeAt": {
            "type": "string"
          },
          "rrule": {
            "$ref": "#/components/schemas/InvoicesCustomRRuleOptionsDto"
          }
        },
        "type": "object"
      },
      "ItemTaxDto": {
        "properties": {
          "_id": {
            "type": "string"
          },
          "calculation": {
            "enum": [
              "exclusive"
            ],
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "rate": {
            "type": "number"
          },
          "taxId": {
            "type": "string"
          }
        },
        "required": [
          "_id",
          "name",
          "rate"
        ],
        "type": "object"
      },
      "KeywordSuggestionDTO": {
        "properties": {
          "keywords": {
            "description": "Seed keywords",
            "example": [
              "marketing"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "languageCode": {
            "description": "Language code",
            "example": "en",
            "type": "string"
          },
          "locations": {
            "description": "Target locations",
            "example": [
              "US",
              "CA"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "url": {
            "description": "Target URL",
            "example": "https://example.com",
            "type": "string"
          }
        },
        "required": [
          "url"
        ],
        "type": "object"
      },
      "KnowledgeBaseBadRequestDTO": {
        "properties": {
          "message": {
            "example": "Bad Request",
            "type": "string"
          },
          "statusCode": {
            "example": 400,
            "type": "number"
          }
        },
        "type": "object"
      },
      "KnowledgeBaseDataDTO": {
        "properties": {
          "createdAt": {
            "description": "Date when knowledge base was created",
            "example": "2025-08-02T20:26:57.057Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the knowledge base is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Knowledge base ID",
            "example": "ZwTB8S0yo0FIBY6OPZTD",
            "type": "string"
          },
          "kbMetadata": {
            "description": "Knowledge base metadata",
            "example": {},
            "type": "object"
          },
          "locationId": {
            "description": "Location ID",
            "example": "qIyivCmsuEOSnyoFYEej",
            "type": "string"
          },
          "name": {
            "description": "Knowledge base name",
            "example": "KB for Bot Training",
            "type": "string"
          },
          "nameLowerCase": {
            "description": "Knowledge base name in lowercase",
            "example": "kb for bot training",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date when knowledge base was last updated",
            "example": "2025-08-02T20:26:57.057Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "nameLowerCase",
          "locationId",
          "kbMetadata",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "KnowledgeBaseInternalServerErrorDTO": {
        "properties": {
          "message": {
            "example": "Internal Server Error",
            "type": "string"
          },
          "statusCode": {
            "example": 500,
            "type": "number"
          }
        },
        "type": "object"
      },
      "KnowledgeBaseListItemDTO": {
        "properties": {
          "createdAt": {
            "description": "Date when knowledge base was created",
            "example": "2025-08-02T20:26:57.057Z",
            "type": "string"
          },
          "id": {
            "description": "Knowledge base ID",
            "example": "ZwTB8S0yo0FIBY6OPZTD",
            "type": "string"
          },
          "name": {
            "description": "Knowledge base name",
            "example": "bot training kb",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "createdAt"
        ],
        "type": "object"
      },
      "KnowledgeBaseMetadataDTO": {
        "properties": {
          "faqs": {
            "description": "Number of FAQs in the knowledge base",
            "example": 2,
            "type": "number"
          },
          "files": {
            "description": "Number of files in the knowledge base",
            "example": 0,
            "type": "number"
          },
          "richText": {
            "description": "Number of rich text documents in the knowledge base",
            "example": 0,
            "type": "number"
          },
          "tables": {
            "description": "Number of tables in the knowledge base",
            "example": 0,
            "type": "number"
          },
          "urls": {
            "description": "Number of URLs in the knowledge base",
            "example": 64,
            "type": "number"
          },
          "webSearches": {
            "description": "Number of web searche configs in the knowledge base",
            "example": 0,
            "type": "number"
          }
        },
        "required": [
          "faqs",
          "urls",
          "richText",
          "files",
          "webSearches",
          "tables"
        ],
        "type": "object"
      },
      "KnowledgeBaseParameters": {
        "properties": {
          "knowledgeBaseId": {
            "description": "Knowledge base ID to query",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "triggerPrompt": {
            "description": "When to query the knowledge base",
            "example": "When caller asks about pricing",
            "type": "string"
          }
        },
        "required": [
          "triggerPrompt",
          "knowledgeBaseId"
        ],
        "type": "object"
      },
      "KnowledgeBaseUnauthorizedDTO": {
        "properties": {
          "error": {
            "example": "Unauthorized",
            "type": "string"
          },
          "message": {
            "example": "Invalid token: access token is invalid",
            "type": "string"
          },
          "statusCode": {
            "example": 401,
            "type": "number"
          }
        },
        "type": "object"
      },
      "LargeTextField": {
        "properties": {
          "fieldValue": {
            "description": "Large text value for the custom field (preferred).",
            "example": "My Text",
            "type": "string"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": "My Text",
            "type": "string"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "LateFeesConfigurationDto": {
        "properties": {
          "enable": {
            "description": "Enable late fees",
            "example": true,
            "type": "boolean"
          },
          "frequency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesFrequencyDto"
              }
            ],
            "description": "Late Fees Frequency"
          },
          "grace": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesGraceDto"
              }
            ],
            "description": "Late Fees Grace"
          },
          "maxLateFees": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesMaxFeesDto"
              }
            ],
            "description": "Max late fees payable"
          },
          "type": {
            "description": "Late Fees Type",
            "enum": [
              "fixed",
              "percentage"
            ],
            "example": "fixed",
            "type": "string"
          },
          "value": {
            "description": "Late Fees Value",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "enable",
          "value",
          "type",
          "frequency"
        ],
        "type": "object"
      },
      "LateFeesFrequencyDto": {
        "properties": {
          "interval": {
            "description": "Late fees interval",
            "enum": [
              "minute",
              "hour",
              "day",
              "week",
              "month",
              "one_time"
            ],
            "example": "day",
            "type": "string"
          },
          "intervalCount": {
            "description": "Late fees interval count",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "intervalCount",
          "interval"
        ],
        "type": "object"
      },
      "LateFeesGraceDto": {
        "properties": {
          "interval": {
            "description": "Late fees grace interval",
            "enum": [
              "day"
            ],
            "example": "day",
            "type": "string"
          },
          "intervalCount": {
            "description": "Late fees grace interval count",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "intervalCount",
          "interval"
        ],
        "type": "object"
      },
      "LateFeesMaxFeesDto": {
        "properties": {
          "type": {
            "enum": [
              "fixed"
            ],
            "example": "fixed",
            "type": "string"
          },
          "value": {
            "description": "Max late fees to pay",
            "example": "10",
            "type": "number"
          }
        },
        "required": [
          "type",
          "value"
        ],
        "type": "object"
      },
      "LeadConnectorRecommendationDto": {
        "properties": {
          "isEmailValid": {
            "description": "Email verification status",
            "example": false,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "LeadFormAssetPayloadDTO": {
        "properties": {
          "backgroundImageAsset": {
            "description": "Background image asset resource name",
            "example": "customers/123/assets/789",
            "type": "string"
          },
          "businessName": {
            "description": "Business name shown on the form",
            "example": "Acme Corp",
            "type": "string"
          },
          "callToActionDescription": {
            "description": "Description text for the CTA button",
            "example": "Request your free quote now",
            "type": "string"
          },
          "callToActionType": {
            "description": "Call to action button type",
            "enum": [
              "LEARN_MORE",
              "GET_QUOTE",
              "APPLY_NOW",
              "SIGN_UP",
              "CONTACT_US",
              "SUBSCRIBE",
              "DOWNLOAD",
              "BOOK_NOW",
              "GET_OFFER",
              "REGISTER",
              "GET_INFO",
              "REQUEST_DEMO",
              "JOIN_NOW",
              "GET_STARTED",
              "VISIT_SITE"
            ],
            "example": "GET_QUOTE",
            "type": "string"
          },
          "customQuestionFields": {
            "description": "Custom question fields appended after standard fields",
            "example": [
              {
                "customQuestionText": "What service are you interested in?",
                "singleChoiceAnswers": [
                  {
                    "answerTexts": [
                      "Web Design",
                      "SEO"
                    ]
                  }
                ]
              }
            ],
            "items": {
              "$ref": "#/components/schemas/CustomQuestionFieldDTO"
            },
            "type": "array"
          },
          "description": {
            "description": "Lead form description",
            "example": "Fill out this form and we will contact you within 24 hours",
            "type": "string"
          },
          "desiredIntent": {
            "description": "Desired lead intent level",
            "enum": [
              "LOW_INTENT",
              "HIGH_INTENT"
            ],
            "example": "HIGH_INTENT",
            "type": "string"
          },
          "fields": {
            "description": "Form fields to collect user input",
            "example": [
              {
                "inputType": "FULL_NAME",
                "singleChoiceAnswers": []
              },
              {
                "inputType": "EMAIL",
                "singleChoiceAnswers": []
              }
            ],
            "items": {
              "$ref": "#/components/schemas/LeadFormFieldDTO"
            },
            "type": "array"
          },
          "finalUrls": {
            "description": "Final URL shown after form submission",
            "example": "https://example.com/thank-you",
            "type": "string"
          },
          "headline": {
            "description": "Lead form headline",
            "example": "Get a free quote",
            "type": "string"
          },
          "postSubmitCallToActionType": {
            "description": "Post-submit CTA button type",
            "enum": [
              "VISIT_SITE",
              "DOWNLOAD",
              "LEARN_MORE",
              "SHOP_NOW"
            ],
            "example": "VISIT_SITE",
            "type": "string"
          },
          "postSubmitDescription": {
            "description": "Description shown after form submission",
            "example": "We will be in touch shortly",
            "type": "string"
          },
          "postSubmitHeadline": {
            "description": "Headline shown after form submission",
            "example": "Thank you!",
            "type": "string"
          },
          "privacyPolicyUrl": {
            "description": "Privacy policy URL",
            "example": "https://example.com/privacy",
            "type": "string"
          },
          "resourceName": {
            "description": "Google Ads resource name for an existing lead form asset",
            "example": "customers/123/assets/456",
            "type": "string"
          }
        },
        "required": [
          "headline",
          "description",
          "businessName",
          "privacyPolicyUrl",
          "fields",
          "callToActionType"
        ],
        "type": "object"
      },
      "LeadFormContentDTO": {
        "properties": {
          "description": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocalizedStringDTO"
              }
            ],
            "description": "Form description",
            "example": {
              "localized": {
                "en_US": "Fill out this quick form"
              }
            }
          },
          "headline": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocalizedStringDTO"
              }
            ],
            "description": "Form headline",
            "example": {
              "localized": {
                "en_US": "Get in touch"
              }
            }
          },
          "legalInfo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LegalInfoDTO"
              }
            ],
            "description": "Legal information",
            "example": {
              "consents": [
                {
                  "checkRequired": true,
                  "consent": {
                    "localized": {
                      "en_US": "I agree"
                    }
                  },
                  "id": 1
                }
              ],
              "privacyPolicyUrl": "https://example.com/privacy"
            }
          },
          "postSubmissionInfo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostSubmissionInfoDTO"
              }
            ],
            "description": "Post-submission info",
            "example": {
              "callToAction": {
                "callToActionLabel": "LEARN_MORE",
                "callToActionTarget": {
                  "landingPageUrl": "https://example.com/thank-you"
                }
              },
              "message": {
                "localized": {
                  "en_US": "Thank you!"
                }
              }
            }
          },
          "questions": {
            "description": "Form questions",
            "example": [
              {
                "name": "firstName",
                "question": {
                  "localized": {
                    "en_US": "First name"
                  }
                },
                "questionDetails": {
                  "textQuestionDetails": {}
                }
              }
            ],
            "items": {
              "$ref": "#/components/schemas/LeadFormQuestionDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "questions",
          "headline",
          "postSubmissionInfo",
          "legalInfo"
        ],
        "type": "object"
      },
      "LeadFormFieldDTO": {
        "properties": {
          "inputType": {
            "description": "Field input type from Google Ads LeadFormFieldUserInputType",
            "example": "FULL_NAME",
            "type": "string"
          },
          "singleChoiceAnswers": {
            "description": "Single-choice answer options for the field",
            "example": [
              {
                "key": "option_1",
                "value": "Yes"
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "inputType"
        ],
        "type": "object"
      },
      "LeadFormQuestionDTO": {
        "properties": {
          "name": {
            "description": "Question field name",
            "example": "firstName",
            "type": "string"
          },
          "predefinedField": {
            "description": "Predefined field identifier",
            "example": "FIRST_NAME",
            "type": "string"
          },
          "question": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocalizedStringDTO"
              }
            ],
            "description": "Question text",
            "example": {
              "localized": {
                "en_US": "What is your first name?"
              }
            }
          },
          "questionDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/QuestionDetailsDTO"
              }
            ],
            "description": "Question type details",
            "example": {
              "textQuestionDetails": {}
            }
          }
        },
        "required": [
          "question",
          "name",
          "questionDetails"
        ],
        "type": "object"
      },
      "LegalInfoDTO": {
        "properties": {
          "consents": {
            "description": "Consent entries",
            "example": [
              {
                "checkRequired": true,
                "consent": {
                  "localized": {
                    "en_US": "I agree to terms"
                  }
                },
                "id": 1
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ConsentDTO"
            },
            "type": "array"
          },
          "legalDisclaimer": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocalizedStringDTO"
              }
            ],
            "description": "Legal disclaimer text",
            "example": {
              "localized": {
                "en_US": "By submitting, you accept our Privacy Policy"
              }
            }
          },
          "privacyPolicyUrl": {
            "description": "Privacy policy URL",
            "example": "https://example.com/privacy",
            "type": "string"
          }
        },
        "required": [
          "consents",
          "privacyPolicyUrl"
        ],
        "type": "object"
      },
      "LinkSchema": {
        "properties": {
          "fieldKey": {
            "description": "Template variable key used to reference this trigger link",
            "example": "{{trigger_link.n4AriwEnFrGh3tu08W0U}}",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the trigger link",
            "example": "n4AriwEnFrGh3tu08W0U",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID this trigger link belongs to",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Display name of the trigger link",
            "example": "first tag",
            "type": "string"
          },
          "redirectTo": {
            "description": "URL or variable to redirect to when the trigger link is clicked",
            "example": "https://www.google.com/",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LinkUpdateDto": {
        "properties": {
          "name": {
            "description": "Display name of the trigger link",
            "example": "first tag",
            "type": "string"
          },
          "redirectTo": {
            "description": "URL or variable to redirect to when the trigger link is clicked",
            "example": "https://www.google.com/",
            "type": "string"
          }
        },
        "required": [
          "name",
          "redirectTo"
        ],
        "type": "object"
      },
      "LinkedInAdDTO": {
        "properties": {
          "adCampaignGroupId": {
            "description": "Parent campaign group identifier",
            "example": "cg_abc123",
            "type": "string"
          },
          "adCampaignId": {
            "description": "Parent ad campaign identifier",
            "example": "camp_abc123",
            "type": "string"
          },
          "adId": {
            "description": "LinkedIn ad resource ID",
            "example": "12345678",
            "type": "string"
          },
          "callToActionLabel": {
            "description": "Call to action label",
            "example": "LEARN_MORE",
            "type": "string"
          },
          "contentReferenceString": {
            "description": "Content reference URN for boosted posts",
            "example": "urn:li:share:123",
            "type": "string"
          },
          "description": {
            "description": "Ad description",
            "example": "Join thousands who already made the switch",
            "type": "string"
          },
          "destinationFormId": {
            "description": "Destination lead-gen form ID",
            "example": "form_abc123",
            "type": "string"
          },
          "destinationUrl": {
            "description": "Click-through destination URL",
            "example": "https://example.com",
            "type": "string"
          },
          "headline": {
            "description": "Ad headline",
            "example": "Your next career move starts here",
            "type": "string"
          },
          "id": {
            "description": "Ad identifier",
            "example": "ad_abc123",
            "type": "string"
          },
          "introductoryText": {
            "description": "Introductory ad copy shown above the creative",
            "example": "Check out our summer sale!",
            "type": "string"
          },
          "linkedInError": {
            "description": "LinkedIn API error message",
            "example": "Ad rejected by policy",
            "type": "string"
          },
          "media": {
            "description": "Ad creative media",
            "example": [
              {
                "src": "https://example.com/image.jpg",
                "type": "image"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/LinkedInMediaDTO"
            },
            "type": "array"
          },
          "meta": {
            "description": "Additional ad metadata",
            "example": {
              "tone": "professional"
            },
            "type": "object"
          },
          "name": {
            "description": "Ad name",
            "example": "Summer Sale Ad",
            "type": "string"
          },
          "publishingStatus": {
            "description": "Ad publishing status",
            "enum": [
              "DRAFT",
              "SCHEDULED",
              "PUBLISHED",
              "PUBLISHING",
              "FAILED",
              "IN_REVIEW",
              "PAUSED",
              "ARCHIVED",
              "WITH_ISSUES",
              "REJECTED"
            ],
            "example": "PUBLISHED",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LinkedInBudgetDTO": {
        "properties": {
          "amount": {
            "description": "Budget amount (currency minor units)",
            "example": 10000,
            "type": "number"
          },
          "budgetType": {
            "description": "LinkedIn campaign budget type",
            "enum": [
              "DAILY",
              "LIFETIME"
            ],
            "example": "DAILY",
            "type": "string"
          },
          "scheduleEndDate": {
            "description": "Schedule end date (ISO 8601)",
            "example": "2025-12-31",
            "type": "string"
          },
          "scheduleStartDate": {
            "description": "Schedule start date (ISO 8601)",
            "example": "2025-01-01",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LinkedInCreateLeadFormBodyDTO": {
        "properties": {
          "content": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadFormContentDTO"
              }
            ],
            "description": "Form content",
            "example": {
              "headline": {
                "localized": {
                  "en_US": "Get in touch"
                }
              },
              "legalInfo": {},
              "postSubmissionInfo": {},
              "questions": []
            }
          },
          "creationLocale": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreationLocaleDTO"
              }
            ],
            "description": "Creation locale",
            "example": {
              "country": "US",
              "language": "en"
            }
          },
          "hiddenFields": {
            "description": "Hidden fields",
            "example": [
              {
                "name": "utm_source",
                "value": "linkedin"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/HiddenFieldDTO"
            },
            "type": "array"
          },
          "name": {
            "description": "Form name",
            "example": "Contact Us",
            "type": "string"
          },
          "owner": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SponsoredAccountOwnerDTO"
              }
            ],
            "description": "Form owner",
            "example": {
              "sponsoredAccount": "urn:li:sponsoredAccount:123456"
            }
          },
          "state": {
            "description": "Form state",
            "enum": [
              "PUBLISHED"
            ],
            "example": "PUBLISHED",
            "type": "string"
          }
        },
        "required": [
          "owner",
          "creationLocale",
          "name",
          "state",
          "content"
        ],
        "type": "object"
      },
      "LinkedInMediaDTO": {
        "properties": {
          "destinationUrl": {
            "description": "Click-through destination URL",
            "example": "https://example.com",
            "type": "string"
          },
          "fileSizeBytes": {
            "description": "File size in bytes",
            "example": 102400,
            "type": "number"
          },
          "frames": {
            "description": "Video frame URLs",
            "example": [
              "https://example.com/frame1.jpg"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "headline": {
            "description": "Media headline",
            "example": "Get started today",
            "type": "string"
          },
          "name": {
            "description": "Media name",
            "example": "ad_image.jpg",
            "type": "string"
          },
          "selectedPoster": {
            "description": "Selected poster frame index",
            "example": 0,
            "type": "number"
          },
          "src": {
            "description": "Media source URL",
            "example": "https://example.com/image.jpg",
            "type": "string"
          },
          "thumbnailUrl": {
            "description": "Thumbnail URL",
            "example": "https://example.com/thumb.jpg",
            "type": "string"
          },
          "type": {
            "description": "Media type",
            "enum": [
              "video",
              "image"
            ],
            "example": "image",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LinkedInPageSchema": {
        "properties": {
          "avatar": {
            "description": "Profile Avatar url",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "id": {
            "description": "Page ID",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "isConnected": {
            "description": "is connected to app",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "LinkedIn Page Name",
            "example": "Sample Name",
            "type": "string"
          },
          "urn": {
            "description": "URN",
            "example": "urn:li:organization:80847980",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LinkedInProfileSchema": {
        "properties": {
          "avatar": {
            "description": "Profile avatar",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "id": {
            "description": "Id",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "isConnected": {
            "description": "is connected to app",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of profile",
            "example": "Profile Name",
            "type": "string"
          },
          "urn": {
            "description": "URN",
            "example": "urn:li:person:ABC123XYZ",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LinkedInUpdateAdStatusBodyDTO": {
        "properties": {
          "operationType": {
            "description": "Update operation",
            "enum": [
              "PAUSED",
              "ARCHIVED",
              "RESUME"
            ],
            "example": "PAUSED",
            "type": "string"
          },
          "type": {
            "description": "Ad object type",
            "enum": [
              "adGroup",
              "adCampaign",
              "ad"
            ],
            "example": "adCampaign",
            "type": "string"
          }
        },
        "required": [
          "operationType",
          "type"
        ],
        "type": "object"
      },
      "LinkedinPollDto": {
        "properties": {
          "options": {
            "description": "Poll options. Minimum 2, maximum 4. Each option text max 30 characters. Option texts must be unique.",
            "items": {
              "$ref": "#/components/schemas/LinkedinPollOptionDto"
            },
            "maxItems": 4,
            "minItems": 2,
            "type": "array",
            "uniqueItems": true
          },
          "question": {
            "description": "Question for the poll. Max length: 140 characters.",
            "example": "What is your favorite color?",
            "maxLength": 140,
            "type": "string"
          },
          "settings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedinPollSettingsDto"
              }
            ],
            "description": "Poll settings (duration)."
          }
        },
        "required": [
          "question",
          "options",
          "settings"
        ],
        "type": "object"
      },
      "LinkedinPollOptionDto": {
        "additionalProperties": false,
        "properties": {
          "text": {
            "description": "Text describing the option. Max length: 30 characters.",
            "example": "Red",
            "maxLength": 30,
            "type": "string"
          }
        },
        "required": [
          "text"
        ],
        "type": "object"
      },
      "LinkedinPollSettingsDto": {
        "properties": {
          "duration": {
            "description": "Duration the poll stays open for votes.",
            "enum": [
              "ONE_DAY",
              "THREE_DAYS",
              "SEVEN_DAYS",
              "FOURTEEN_DAYS"
            ],
            "example": "SEVEN_DAYS",
            "type": "string"
          }
        },
        "required": [
          "duration"
        ],
        "type": "object"
      },
      "LinkedinPostSchema": {
        "properties": {
          "pdfTitle": {
            "description": "Title for the PDF document carousel. Displayed as the document name on LinkedIn.\n\n**Max length:** 100 characters\n\n**Tip:** Use a descriptive title that explains the document content.",
            "example": "Q4 Marketing Strategy Presentation",
            "type": "string"
          },
          "poll": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedinPollDto"
              }
            ],
            "description": "Publish a LinkedIn poll post.\n\n**Required fields when `poll` is supplied:**\n- `question` (max 140 characters)\n- `options`: 2 to 4 entries, each `text` ≤ 30 characters; option texts must be unique\n- `settings.duration`: one of `ONE_DAY`, `THREE_DAYS`, `SEVEN_DAYS`, `FOURTEEN_DAYS`\n\n**LinkedIn restrictions:**\n- Polls cannot be edited after publishing.\n- A poll post cannot include `media` or a meta-link preview."
          },
          "postAsPdf": {
            "description": "Post images as a PDF document carousel.\n\n**Limits:**\n- Max 300 pages/images\n- Max PDF size: 100 MB",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "pdfTitle",
          "postAsPdf"
        ],
        "type": "object"
      },
      "LinksDto": {
        "properties": {
          "locationId": {
            "description": "Location ID of the business profile",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Display name of the trigger link",
            "example": "first tag",
            "type": "string"
          },
          "redirectTo": {
            "description": "URL or variable to redirect to when the trigger link is clicked",
            "example": "https://www.google.com/",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name",
          "redirectTo"
        ],
        "type": "object"
      },
      "ListAffiliatesResponseDto": {
        "properties": {
          "affiliates": {
            "description": "Affiliate list",
            "items": {
              "$ref": "#/components/schemas/OAuthAffiliateListItemResponseDto"
            },
            "type": "array"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AffiliateListMetaResponseDto"
              }
            ],
            "description": "Pagination metadata"
          }
        },
        "required": [
          "affiliates",
          "meta"
        ],
        "type": "object"
      },
      "ListBrandVoicesPublicV1ResponseDto": {
        "properties": {
          "items": {
            "description": "List of brand voices",
            "example": [
              {
                "createdAt": "2024-01-05T12:00:00.000Z",
                "id": "507f1f77bcf86cd799439011",
                "isDefault": false,
                "name": "My Brand Voice",
                "updatedAt": "2024-01-05T12:00:00.000Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/BrandVoicePublicV1Dto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of brand voices",
            "example": 25,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "items",
          "total"
        ],
        "type": "object"
      },
      "ListBulkActionCampaignsPublicV2ResponseDto": {
        "properties": {
          "campaigns": {
            "description": "List of bulk action campaigns",
            "example": [
              {
                "createdAt": "2025-07-24T11:55:43.598Z",
                "deleted": false,
                "id": "OI72xYec4Mho6VBykTvj",
                "name": "Test Mail",
                "status": "complete",
                "updatedAt": "2026-02-09T04:49:12.322Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/BulkActionCampaignPublicV2Dto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of bulk action campaigns",
            "example": 25,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "campaigns",
          "total"
        ],
        "type": "object"
      },
      "ListCollectionResponseDto": {
        "properties": {
          "data": {
            "description": "Array of Collections",
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "total": {
            "description": "The total count of the collections present, which is useful to calculate the pagination",
            "type": "number"
          }
        },
        "required": [
          "data",
          "total"
        ],
        "type": "object"
      },
      "ListCouponsResponseDto": {
        "properties": {
          "data": {
            "description": "Array of coupon objects",
            "items": {
              "$ref": "#/components/schemas/CouponDto"
            },
            "type": "array"
          },
          "totalCount": {
            "description": "Total number of coupons matching the query criteria",
            "example": 20,
            "type": "number"
          },
          "traceId": {
            "description": "Unique identifier for tracing this API request",
            "example": "c667b18d-8f5e-44cf-a914",
            "type": "string"
          }
        },
        "required": [
          "data",
          "totalCount",
          "traceId"
        ],
        "type": "object"
      },
      "ListEmailCampaignsPublicV2ResponseDto": {
        "properties": {
          "campaigns": {
            "description": "List of email campaigns",
            "example": [
              {
                "createdAt": "2025-07-24T11:55:43.598Z",
                "deleted": false,
                "id": "67f15c2ae99226d5bcccb8f3",
                "name": "February Newsletter",
                "status": "sent",
                "updatedAt": "2026-02-09T04:49:12.322Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/EmailCampaignPublicV2Dto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of email campaigns",
            "example": 25,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "campaigns",
          "total"
        ],
        "type": "object"
      },
      "ListEstimateTemplateResponseDTO": {
        "properties": {
          "data": {
            "description": "List of estimate templates",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "totalCount": {
            "description": "Total number of estimate templates available",
            "type": "number"
          },
          "traceId": {
            "description": "Unique identifier for tracing the request",
            "type": "string"
          }
        },
        "required": [
          "data",
          "totalCount",
          "traceId"
        ],
        "type": "object"
      },
      "ListEstimatesResponseDTO": {
        "properties": {
          "estimates": {
            "description": "List of estimates",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of estimates",
            "type": "number"
          },
          "traceId": {
            "description": "Unique identifier for tracing the request",
            "type": "string"
          }
        },
        "required": [
          "estimates",
          "total",
          "traceId"
        ],
        "type": "object"
      },
      "ListFaqsResponseDTO": {
        "properties": {
          "count": {
            "description": "Total count of all FAQs in the knowledge base",
            "example": 150,
            "type": "number"
          },
          "faqs": {
            "description": "Array of FAQ objects",
            "items": {
              "$ref": "#/components/schemas/FaqResponseDTO"
            },
            "type": "array"
          },
          "hasMore": {
            "description": "Whether there are more FAQs available",
            "example": true,
            "type": "boolean"
          },
          "lastFaqId": {
            "description": "Last FAQ ID for pagination (use as lastFaqId in next request)",
            "example": "3rzeElC1FOVY91veVBkp",
            "type": "string"
          }
        },
        "required": [
          "count",
          "faqs"
        ],
        "type": "object"
      },
      "ListFulfillmentResponseDto": {
        "properties": {
          "data": {
            "description": "An array of fulfilled items",
            "items": {
              "$ref": "#/components/schemas/FulfillmentSchema"
            },
            "type": "array"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "ListInvoicesResponseDto": {
        "properties": {
          "invoices": {
            "items": {
              "$ref": "#/components/schemas/GetInvoiceResponseDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of invoices",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "invoices",
          "total"
        ],
        "type": "object"
      },
      "ListNumberItemResponseDto": {
        "properties": {
          "addressSid": {
            "description": "Address SID used for regulated number purchases",
            "example": "ADXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
            "type": "string"
          },
          "bundleSid": {
            "description": "Bundle SID used for regulated number purchases",
            "example": "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
            "type": "string"
          },
          "capabilities": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NumberCapabilitiesDto"
              }
            ],
            "description": "Phone number capabilities",
            "example": {
              "fax": false,
              "mms": true,
              "sms": true,
              "voice": true
            }
          },
          "countryCode": {
            "description": "ISO country code for the number",
            "example": "US",
            "type": "string"
          },
          "dateAdded": {
            "description": "Date the number was added",
            "example": "2024-01-01T00:00:00.000Z",
            "type": "object"
          },
          "dateCreated": {
            "description": "Legacy created-at field returned by some providers",
            "example": "2024-01-01T00:00:00.000Z",
            "type": "object"
          },
          "dateUpdated": {
            "description": "Date the number was last updated",
            "example": "2024-01-01T00:00:00.000Z",
            "type": "object"
          },
          "forwardingNumber": {
            "description": "Forwarding number in E.164 format",
            "example": "+17745678903",
            "type": "string"
          },
          "friendlyName": {
            "description": "Human-friendly label for the number",
            "example": "Main line",
            "type": "string"
          },
          "inboundCallService": {
            "additionalProperties": true,
            "description": "Inbound call service metadata",
            "example": {
              "type": "ivr",
              "value": "flow-123"
            },
            "type": "object"
          },
          "isDefaultNumber": {
            "description": "Whether this is the default outbound number",
            "example": true,
            "type": "boolean"
          },
          "isGroupConversationEnabled": {
            "description": "Whether group conversations are enabled",
            "example": true,
            "type": "boolean"
          },
          "linkedRingAllUsers": {
            "description": "Ring-all user IDs linked to the number",
            "example": [
              "user-123",
              "user-456"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "linkedUser": {
            "description": "Linked user ID if the number is assigned",
            "example": "user-123",
            "nullable": true,
            "type": "string"
          },
          "origin": {
            "description": "Provider origin for the number",
            "example": "twilio",
            "type": "string"
          },
          "phoneNumber": {
            "description": "Phone number in E.164 format",
            "example": "+17745678902",
            "type": "string"
          },
          "sid": {
            "description": "Provider number identifier",
            "example": "PNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
            "type": "string"
          },
          "type": {
            "description": "Phone number type",
            "example": "local",
            "type": "string"
          }
        },
        "required": [
          "phoneNumber"
        ],
        "type": "object"
      },
      "ListNumbersV3Http200ResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ListNumbersV3ResponseDto"
              }
            ],
            "description": "V3 list payload: numbers, pagination fields, isUnderLc (renamed from isUnderGhl), etc.",
            "example": {
              "accountStatus": "active",
              "isUnderLc": true,
              "numbers": [
                {
                  "countryCode": "US",
                  "friendlyName": "Main line",
                  "phoneNumber": "+17745678902"
                }
              ],
              "page": 0,
              "pageSize": 50,
              "total": 1
            }
          },
          "message": {
            "description": "Human-readable success message.",
            "example": "OK",
            "type": "string"
          },
          "status": {
            "description": "Outcome indicator from the shared success helper.",
            "enum": [
              "success"
            ],
            "example": "success",
            "type": "string"
          },
          "statusCode": {
            "description": "HTTP status echoed in the response body.",
            "example": 200,
            "type": "number"
          }
        },
        "required": [
          "status",
          "data",
          "message",
          "statusCode"
        ],
        "type": "object"
      },
      "ListNumbersV3ResponseDto": {
        "properties": {
          "accountStatus": {
            "description": "Twilio account status for the location",
            "example": "active",
            "type": "string"
          },
          "isUnderLc": {
            "description": "Whether the account is managed under LC. Renamed from isUnderGhl.",
            "example": true,
            "type": "boolean"
          },
          "numbers": {
            "description": "Active numbers available for the location",
            "example": [
              {
                "capabilities": {
                  "fax": false,
                  "mms": true,
                  "sms": true,
                  "voice": true
                },
                "countryCode": "US",
                "friendlyName": "Main line",
                "isDefaultNumber": true,
                "phoneNumber": "+17745678902",
                "sid": "PNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
                "type": "local"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ListNumberItemResponseDto"
            },
            "type": "array"
          },
          "page": {
            "description": "The zero-based page index requested",
            "example": 0,
            "type": "number"
          },
          "pageSize": {
            "description": "The page size requested",
            "example": 50,
            "type": "number"
          },
          "rcsSenderIds": {
            "description": "Optional RCS sender IDs returned with the number list",
            "example": [
              {
                "friendlyName": "Brand Sender",
                "number": "rcs-sender-id",
                "numberType": "rcsSenderId",
                "rcsMeta": {
                  "brandId": "brand-123"
                }
              }
            ],
            "items": {
              "$ref": "#/components/schemas/RcsSenderIdResponseDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of active numbers when available",
            "example": 2,
            "type": "number"
          }
        },
        "required": [
          "numbers"
        ],
        "type": "object"
      },
      "ListOrdersResponseDto": {
        "properties": {
          "data": {
            "description": "An array of orders",
            "items": {
              "$ref": "#/components/schemas/OrderResponseSchema"
            },
            "type": "array"
          },
          "totalCount": {
            "description": "total orders count",
            "type": "number"
          }
        },
        "required": [
          "data",
          "totalCount"
        ],
        "type": "object"
      },
      "ListPricesResponseDto": {
        "properties": {
          "prices": {
            "description": "An array of prices",
            "items": {
              "$ref": "#/components/schemas/DefaultPriceResponseDto"
            },
            "type": "array"
          },
          "total": {
            "default": "Total number of prices available",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "prices",
          "total"
        ],
        "type": "object"
      },
      "ListProductReviewsResponseDto": {
        "properties": {
          "data": {
            "description": "Array of Collections",
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "total": {
            "description": "The total count of the collections present, which is useful to calculate the pagination",
            "type": "number"
          }
        },
        "required": [
          "data",
          "total"
        ],
        "type": "object"
      },
      "ListProductsResponseDto": {
        "properties": {
          "products": {
            "description": "An array of products",
            "items": {
              "$ref": "#/components/schemas/DefaultProductResponseDto"
            },
            "type": "array"
          },
          "total": {
            "description": "list products status",
            "items": {
              "$ref": "#/components/schemas/ListProductsStats"
            },
            "type": "array"
          }
        },
        "required": [
          "products",
          "total"
        ],
        "type": "object"
      },
      "ListProductsStats": {
        "properties": {
          "total": {
            "description": "Total number of products",
            "example": 20,
            "type": "number"
          }
        },
        "required": [
          "total"
        ],
        "type": "object"
      },
      "ListSchedulesResponseDto": {
        "properties": {
          "schedules": {
            "items": {
              "$ref": "#/components/schemas/GetScheduleResponseDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of Schedules",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "schedules",
          "total"
        ],
        "type": "object"
      },
      "ListShippingCarrierResponseDto": {
        "properties": {
          "data": {
            "description": "An array of items",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierSchema"
            },
            "type": "array"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "ListShippingRateResponseDto": {
        "properties": {
          "data": {
            "description": "An array of items",
            "items": {
              "$ref": "#/components/schemas/ShippingRateSchema"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of items",
            "example": 20,
            "type": "number"
          }
        },
        "required": [
          "total",
          "data"
        ],
        "type": "object"
      },
      "ListShippingZoneResponseDto": {
        "properties": {
          "data": {
            "description": "An array of items",
            "items": {
              "$ref": "#/components/schemas/ShippingZoneSchema"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of items",
            "example": 20,
            "type": "number"
          }
        },
        "required": [
          "total",
          "data"
        ],
        "type": "object"
      },
      "ListSubscriptionResponseDto": {
        "properties": {
          "data": {
            "description": "An array of subscriptions",
            "items": {
              "$ref": "#/components/schemas/SubscriptionResponseSchema"
            },
            "type": "array"
          },
          "totalCount": {
            "description": "total subscriptions count",
            "type": "number"
          }
        },
        "required": [
          "data",
          "totalCount"
        ],
        "type": "object"
      },
      "ListTemplatesPublicV2ResponseDto": {
        "properties": {
          "items": {
            "description": "List of template and folder resources",
            "example": [
              {
                "id": "67f15c2ae99226d5bcccb8f3",
                "name": "February Newsletter",
                "type": "template"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/TemplateListItemPublicV2Dto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of templates and folders",
            "example": 25,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "items",
          "total"
        ],
        "type": "object"
      },
      "ListTemplatesResponseDto": {
        "properties": {
          "data": {
            "items": {
              "$ref": "#/components/schemas/GetTemplateResponseDto"
            },
            "type": "array"
          },
          "totalCount": {
            "description": "Total number of Templates",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "data",
          "totalCount"
        ],
        "type": "object"
      },
      "ListTxnsResponseDto": {
        "properties": {
          "data": {
            "description": "An array of transactions",
            "items": {
              "$ref": "#/components/schemas/TxnResponseSchema"
            },
            "type": "array"
          },
          "totalCount": {
            "description": "total transactions count",
            "type": "number"
          }
        },
        "required": [
          "data",
          "totalCount"
        ],
        "type": "object"
      },
      "ListWhitelabelIntegrationProviderResponseDto": {
        "properties": {
          "providers": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IntegrationProviderSchema"
              }
            ],
            "description": "list of integration provider."
          }
        },
        "required": [
          "providers"
        ],
        "type": "object"
      },
      "ListWorkflowCampaignsPublicV2ResponseDto": {
        "properties": {
          "campaigns": {
            "description": "List of workflow campaigns",
            "example": [
              {
                "createdAt": "2025-12-12T08:24:46.700Z",
                "id": "693bd14ea6b50a8df0180e9a",
                "name": "sorting workflow",
                "status": "published",
                "updatedAt": "2026-01-23T05:58:48.453Z"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/WorkflowCampaignPublicV2Dto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total count of campaigns",
            "example": 50,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "campaigns",
          "total"
        ],
        "type": "object"
      },
      "LocaleDTO": {
        "properties": {
          "country": {
            "description": "Country code",
            "example": "US",
            "type": "string"
          },
          "language": {
            "description": "Language code",
            "example": "en",
            "type": "string"
          }
        },
        "required": [
          "country",
          "language"
        ],
        "type": "object"
      },
      "LocalizedStringDTO": {
        "properties": {
          "localized": {
            "description": "Locale-keyed string map",
            "example": {
              "en_US": "Hello"
            },
            "type": "object"
          }
        },
        "required": [
          "localized"
        ],
        "type": "object"
      },
      "LocationAndAccountDeleteResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Deleted Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DeleteAccountResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "id": "65fac446d599990d1313c1dd",
              "locationId": "ve9EPM428h8vShlRW1KT"
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "LocationConfiguration": {
        "properties": {
          "kind": {
            "description": "Type of meeting location. zoom_conference/google_conference/ms_teams_conference is not supported in event calendar type",
            "enum": [
              "custom",
              "zoom_conference",
              "google_conference",
              "inbound_call",
              "outbound_call",
              "physical",
              "booker",
              "ms_teams_conference"
            ],
            "example": "custom",
            "type": "string"
          },
          "location": {
            "description": "Address for meeting location. Not applicable on \"zoom_conference\", \"google_conference\" and \"ms_teams_conference\" kind",
            "examples": [
              "+14455550132",
              "http://meet.google.com/your-meeting-location"
            ],
            "type": "string"
          }
        },
        "required": [
          "kind"
        ],
        "type": "object"
      },
      "LocationConfigurationResponse": {
        "properties": {
          "kind": {
            "description": "Type of meeting location. zoom_conference/google_conference/ms_teams_conference is not supported in event calendar type",
            "enum": [
              "custom",
              "zoom_conference",
              "google_conference",
              "inbound_call",
              "outbound_call",
              "physical",
              "booker",
              "ms_teams_conference"
            ],
            "example": "custom",
            "type": "string"
          },
          "location": {
            "description": "Address for meeting location. Not applicable on \"zoom_conference\", \"google_conference\" and \"ms_teams_conference\" kind",
            "examples": [
              "+14455550132",
              "http://meet.google.com/your-meeting-location"
            ],
            "type": "string"
          },
          "meetingId": {
            "description": "Unique ID used to select a specific meeting location",
            "example": "my_conference_id",
            "type": "string"
          }
        },
        "required": [
          "kind"
        ],
        "type": "object"
      },
      "LocationDeletedSuccessfulResponseDto": {
        "properties": {
          "message": {
            "description": "Success message of the API",
            "example": "Deleted location with id: ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "success": {
            "description": "Success status of the API",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message"
        ],
        "type": "object"
      },
      "LocationIdBodyDTO": {
        "properties": {
          "locationId": {
            "description": "Location identifier",
            "example": "HChooFuiyPpVYzeJ4HMe",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "LocationSubscriptionResponseDto": {
        "properties": {
          "companyId": {
            "description": "Company ID",
            "example": "companyId1",
            "type": "string"
          },
          "customerId": {
            "description": "Customer ID",
            "example": "customerId1",
            "type": "string"
          },
          "isSaaSV2": {
            "description": "Indicates if the SaaS is V2",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "locationId1",
            "type": "string"
          },
          "priceId": {
            "description": "Price ID",
            "example": "priceId1",
            "type": "string"
          },
          "productId": {
            "description": "Product ID",
            "example": "productId1",
            "type": "string"
          },
          "saasMode": {
            "description": "SaaS mode",
            "example": "saasV2",
            "type": "string"
          },
          "saasPlanId": {
            "description": "SaaS plan ID",
            "example": "saasPlanId1",
            "type": "string"
          },
          "subscriptionId": {
            "description": "Subscription ID",
            "example": "subscriptionId1",
            "type": "string"
          },
          "subscriptionStatus": {
            "description": "Subscription status",
            "example": "active",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "isSaaSV2",
          "companyId"
        ],
        "type": "object"
      },
      "LocationTagDeleteSuccessfulResponseDto": {
        "properties": {
          "succeded": {
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "LocationTagSuccessfulResponseDto": {
        "properties": {
          "tag": {
            "$ref": "#/components/schemas/LocationTagsSchema"
          }
        },
        "type": "object"
      },
      "LocationTagsSchema": {
        "properties": {
          "id": {
            "example": "flGwEuzsfJOia1i1ikRN",
            "type": "string"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "example": "minim aliquip anim",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LocationTagsSuccessfulResponseDto": {
        "properties": {
          "tags": {
            "items": {
              "$ref": "#/components/schemas/LocationTagsSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "LocationTaskListSuccessfulResponseDto": {
        "properties": {
          "tasks": {
            "items": {
              "type": "array"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "LocationWalletBalanceDto": {
        "properties": {
          "balance": {
            "description": "Current wallet balance",
            "example": 1500.5,
            "type": "number"
          },
          "complimentaryCredits": {
            "description": "Complimentary credits amount",
            "example": 100,
            "type": "number"
          },
          "walletId": {
            "description": "Wallet Id",
            "example": "xyz789",
            "type": "string"
          }
        },
        "required": [
          "walletId",
          "balance",
          "complimentaryCredits"
        ],
        "type": "object"
      },
      "LocationsCreateCustomFieldsDTO": {
        "properties": {
          "acceptedFormat": {
            "example": [
              ".pdf",
              ".docx",
              ".jpeg"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "dataType": {
            "example": "TEXT",
            "type": "string"
          },
          "isMultipleFile": {
            "example": false,
            "type": "boolean"
          },
          "maxNumberOfFiles": {
            "example": 2,
            "type": "number"
          },
          "model": {
            "description": "Model of the custom field you want to create",
            "enum": [
              "contact",
              "opportunity"
            ],
            "example": "opportunity",
            "type": "string"
          },
          "name": {
            "example": "Custom Field",
            "type": "string"
          },
          "placeholder": {
            "example": "Placeholder Text",
            "type": "string"
          },
          "position": {
            "default": 0,
            "example": 0,
            "type": "number"
          },
          "textBoxListOptions": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/textBoxListOptionsSchema"
                },
                {
                  "$ref": "#/components/schemas/textBoxListOptionsSchema"
                }
              ]
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "dataType"
        ],
        "type": "object"
      },
      "LocationsCustomFieldSchema": {
        "properties": {
          "dataType": {
            "example": "TEXT",
            "type": "string"
          },
          "fieldKey": {
            "example": "contact.pincode",
            "type": "string"
          },
          "id": {
            "example": "3sv6UEo51C9Bmpo1cKTq",
            "type": "string"
          },
          "isAllowedCustomOption": {
            "example": false,
            "type": "boolean"
          },
          "isMultiFileAllowed": {
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "example": "3sv6UEo51C9Bmpo1cKTq",
            "type": "string"
          },
          "maxFileLimit": {
            "example": 4,
            "type": "number"
          },
          "model": {
            "description": "Model of the custom field",
            "enum": [
              "contact",
              "opportunity"
            ],
            "example": "opportunity",
            "type": "string"
          },
          "name": {
            "example": "pincode",
            "type": "string"
          },
          "picklistImageOptions": {
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "picklistOptions": {
            "example": [
              "first option"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "placeholder": {
            "example": "Pin code",
            "type": "string"
          },
          "position": {
            "example": 0,
            "type": "number"
          }
        },
        "type": "object"
      },
      "LocationsCustomFieldSuccessfulResponseDto": {
        "properties": {
          "customField": {
            "$ref": "#/components/schemas/LocationsCustomFieldSchema"
          }
        },
        "type": "object"
      },
      "LocationsSearchSuccessfulResponseDto": {
        "properties": {
          "locations": {
            "items": {
              "$ref": "#/components/schemas/GetLocationSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "LocationsUpdateCustomFieldsDTO": {
        "properties": {
          "acceptedFormat": {
            "example": [
              ".pdf",
              ".docx",
              ".jpeg"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isMultipleFile": {
            "example": false,
            "type": "boolean"
          },
          "maxNumberOfFiles": {
            "example": 2,
            "type": "number"
          },
          "model": {
            "description": "Model of the custom field you want to update",
            "enum": [
              "contact",
              "opportunity"
            ],
            "example": "opportunity",
            "type": "string"
          },
          "name": {
            "example": "Custom Field",
            "type": "string"
          },
          "placeholder": {
            "example": "Placeholder Text",
            "type": "string"
          },
          "position": {
            "default": 0,
            "example": 0,
            "type": "number"
          },
          "textBoxListOptions": {
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/textBoxListOptionsSchema"
                },
                {
                  "$ref": "#/components/schemas/textBoxListOptionsSchema"
                }
              ]
            },
            "type": "array"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "Logo": {
        "properties": {
          "id": {
            "description": "Unique identifier for the logo",
            "example": "logo_abc123",
            "type": "string"
          },
          "label": {
            "description": "Display label for the logo (e.g., Primary, Secondary)",
            "example": "Primary Logo",
            "type": "string"
          },
          "path": {
            "description": "Storage path of the logo in the media library",
            "example": "/locations/ve9EPM428h8vShlRW1KT/logos/my-logo.png",
            "type": "string"
          },
          "url": {
            "description": "Public URL of the logo image. Used for uploading to the brand board folder in media library",
            "example": "https://storage.googleapis.com/bucket/logos/my-logo.png",
            "type": "string"
          }
        },
        "required": [
          "url",
          "label",
          "path"
        ],
        "type": "object"
      },
      "LookBusyConfiguration": {
        "properties": {
          "LookBusyPercentage": {
            "description": "Percentage of slots that will be hidden",
            "type": "number"
          },
          "enabled": {
            "default": false,
            "description": "Apply Look Busy",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "enabled",
          "LookBusyPercentage"
        ],
        "type": "object"
      },
      "LostReasonResponseSchema": {
        "properties": {
          "createdAt": {
            "description": "created at",
            "example": "2023-06-19T12:04:22.488Z",
            "format": "date-time",
            "type": "string"
          },
          "id": {
            "description": "lost reason id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "locationId": {
            "description": "location id",
            "example": "location_id",
            "type": "string"
          },
          "name": {
            "description": "lost reason name",
            "example": "lost reason",
            "type": "string"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-06-19T12:04:22.488Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "LostReasonsResponseSchema": {
        "properties": {
          "lostReasons": {
            "description": "List of lost reasons for the location",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/LostReasonResponseSchema"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of lost reasons matching the query",
            "example": 100,
            "type": "number"
          }
        },
        "type": "object"
      },
      "MailgunSchema": {
        "properties": {
          "apiKey": {
            "description": "API key provided by Mailgun",
            "example": "key-XXXXXXXXXXX",
            "type": "string"
          },
          "domain": {
            "description": "Domain connected with Mailgun",
            "example": "replies.yourdomain.com",
            "type": "string"
          }
        },
        "required": [
          "apiKey",
          "domain"
        ],
        "type": "object"
      },
      "MarketplaceInternalServerErrorDTO": {
        "properties": {
          "message": {
            "description": "Error message describing the internal server error",
            "example": "Internal Server Error",
            "type": "string"
          },
          "statusCode": {
            "description": "HTTP status code",
            "example": 500,
            "type": "number"
          }
        },
        "type": "object"
      },
      "MediaDTO": {
        "properties": {
          "description": {
            "description": "Media description",
            "example": "Click to learn more",
            "type": "string"
          },
          "headline": {
            "description": "Media headline",
            "example": "Great Offer",
            "type": "string"
          },
          "link": {
            "description": "Media destination link",
            "example": "https://example.com",
            "type": "string"
          },
          "name": {
            "description": "Media file name",
            "example": "ad_image.jpg",
            "type": "string"
          },
          "selectedPoster": {
            "description": "Selected poster index (required when type is video)",
            "example": 0,
            "type": "number"
          },
          "src": {
            "description": "Media source URL",
            "example": "https://example.com/image.jpg",
            "type": "string"
          },
          "thumbnailUrl": {
            "description": "Thumbnail URL (required when type is video)",
            "example": "https://example.com/thumb.jpg",
            "type": "string"
          },
          "type": {
            "description": "Media content type",
            "enum": [
              "image",
              "video"
            ],
            "example": "IMAGE",
            "type": "string"
          }
        },
        "required": [
          "src",
          "type"
        ],
        "type": "object"
      },
      "MediasUploadFileResponseDTO": {
        "properties": {
          "fileId": {
            "description": "ID of the uploaded file",
            "example": "file.pdf",
            "type": "string"
          },
          "url": {
            "description": "Google Cloud Storage URL of the uploaded file",
            "example": "https://storage.googleapis.com/bucket-name/path/to/file.pdf",
            "type": "string"
          }
        },
        "required": [
          "fileId",
          "url"
        ],
        "type": "object"
      },
      "MemberDTO": {
        "properties": {
          "app": {
            "description": "App identifier",
            "example": "com.example.app",
            "type": "string"
          },
          "keyword": {
            "description": "Keyword value",
            "example": "marketing",
            "type": "string"
          },
          "memberType": {
            "description": "Member type",
            "enum": [
              "KEYWORD",
              "URL",
              "APP"
            ],
            "example": "KEYWORD",
            "type": "string"
          },
          "url": {
            "description": "URL value",
            "example": "https://example.com",
            "type": "string"
          }
        },
        "required": [
          "memberType"
        ],
        "type": "object"
      },
      "MembershipOfferDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the membership offer.",
            "example": "655b33aa2209e60b6adb87a7",
            "type": "string"
          },
          "label": {
            "description": "Membership offer label",
            "example": "top_50",
            "type": "string"
          },
          "value": {
            "description": "Membership offer label",
            "example": "50",
            "type": "string"
          }
        },
        "required": [
          "label",
          "value",
          "_id"
        ],
        "type": "object"
      },
      "MentionsDTO": {
        "properties": {
          "id": {
            "description": "Mention ID",
            "example": "102694781978972",
            "type": "string"
          },
          "length": {
            "description": "Mention length",
            "example": "106",
            "type": "number"
          },
          "name": {
            "description": "Mention name",
            "example": "Test",
            "type": "string"
          },
          "offset": {
            "description": "Mention offset",
            "example": "106",
            "type": "number"
          },
          "slug": {
            "description": "Mention slug for community profile link",
            "example": "mohammed-marvan-8bRf3H",
            "type": "string"
          }
        },
        "required": [
          "name",
          "id",
          "offset",
          "length"
        ],
        "type": "object"
      },
      "MessageMeta": {
        "properties": {
          "callDuration": {
            "description": "Call duration in seconds",
            "example": 120,
            "type": "string"
          },
          "callStatus": {
            "description": "Call status - can be pending, completed, answered, busy, no-answer, failed, canceled, or voicemail",
            "enum": [
              "pending",
              "completed",
              "answered",
              "busy",
              "no-answer",
              "failed",
              "canceled",
              "voicemail"
            ],
            "example": "completed",
            "type": "string"
          },
          "email": {
            "description": "meta will contain email, for message type 3 (email). messageIds is list of all email message ids under the message thread",
            "example": {
              "email": {
                "messageIds": [
                  "ve9EPM428kjkvShlRW1KT",
                  "ve9EPs1028kjkvShlRW1KT"
                ]
              }
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "MetaDTO": {
        "properties": {
          "count": {
            "description": "Total count of items",
            "example": "100",
            "type": "string"
          }
        },
        "type": "object"
      },
      "MetaData": {
        "properties": {
          "lastAction": {
            "description": "Last action performed on the brand board",
            "example": "UPDATE",
            "type": "string"
          },
          "sourceId": {
            "description": "Source brand board ID if created from a template",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "sourceType": {
            "description": "How the brand board was created",
            "enum": [
              "template",
              "blank",
              "snapshot",
              "url"
            ],
            "example": "blank",
            "type": "string"
          },
          "updatedBy": {
            "description": "User ID who last updated the brand board",
            "example": "user_abc123",
            "type": "string"
          }
        },
        "type": "object"
      },
      "MigrateConnectionDto": {
        "properties": {
          "accessToken": {
            "description": "Access token (required when type is oauth2)",
            "example": "ya29.a0AfH6SMBx...",
            "type": "string"
          },
          "accountId": {
            "description": "Connection identifier",
            "example": "my-connection-identifier",
            "type": "string"
          },
          "apiKey": {
            "description": "API Key (supported when type is basic)",
            "example": "example-token",
            "type": "string"
          },
          "appId": {
            "description": "App ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "appVersionId": {
            "description": "App Version ID",
            "example": "507f1f77bcf86cd799439012",
            "type": "string"
          },
          "basicCredentials": {
            "description": "Basic auth credentials as key/value pairs (supported when type is basic). Keys are validated against the app version externalAuthConfig.fields.",
            "example": {
              "email": "user@example.com",
              "password": "p@ssw0rd"
            },
            "type": "object"
          },
          "displayName": {
            "description": "Display name for the connection (optional, defaults to accountId)",
            "example": "My Connection Display Name",
            "type": "string"
          },
          "expiryAt": {
            "description": "Timestamp for access token expiry (optional for oauth2)",
            "example": 1735689600000,
            "type": "number"
          },
          "expiryIn": {
            "description": "Access token expiry time in milliseconds (optional for oauth2)",
            "example": 3600000,
            "type": "number"
          },
          "isDefault": {
            "description": "Whether this is the default connection for the location (optional, defaults to false)",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "location_12345",
            "type": "string"
          },
          "refreshToken": {
            "description": "Refresh token (required when type is oauth2)",
            "example": "1//0gHq5F...",
            "type": "string"
          },
          "scopes": {
            "description": "OAuth2 scopes (optional for oauth2)",
            "example": [
              "contacts.readonly",
              "contacts.write"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "type": {
            "description": "Type of authentication - basic or oauth2",
            "enum": [
              "oauth2",
              "basic"
            ],
            "example": "oauth2",
            "type": "string"
          }
        },
        "required": [
          "type",
          "locationId",
          "appId",
          "appVersionId",
          "accountId"
        ],
        "type": "object"
      },
      "MigrateConnectionResponseDto": {
        "properties": {
          "identifier": {
            "description": "Unique identifier for the migrated connection",
            "example": "migration_12345",
            "type": "string"
          },
          "message": {
            "description": "Message describing the result",
            "example": "Connection migrated successfully",
            "type": "string"
          },
          "success": {
            "description": "Indicates if the migration was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "identifier"
        ],
        "type": "object"
      },
      "MissingAssets": {
        "properties": {
          "colors": {
            "description": "Color labels that used defaults",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "fonts": {
            "description": "Font labels that used defaults",
            "example": [
              "Arial"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "logos": {
            "description": "Logo labels that used fallbacks",
            "example": [
              "Footer"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "logos",
          "fonts",
          "colors"
        ],
        "type": "object"
      },
      "MonetoryField": {
        "properties": {
          "fieldValue": {
            "description": "Monetary value for the custom field (preferred).",
            "example": 100.5,
            "type": "object"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": 100.5,
            "type": "object"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "MoveOrDeleteObjectParams": {
        "properties": {
          "_id": {
            "type": "string"
          },
          "altId": {
            "type": "string"
          },
          "altType": {
            "type": "string"
          }
        },
        "required": [
          "altType",
          "altId",
          "_id"
        ],
        "type": "object"
      },
      "MultiSelectField": {
        "properties": {
          "fieldValue": {
            "description": "Array of selected values for the custom field (preferred).",
            "example": [
              "test",
              "test2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": [
              "test",
              "test2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "MultipleChoiceOptionDTO": {
        "properties": {
          "id": {
            "description": "Option ID",
            "example": 1,
            "type": "number"
          },
          "text": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocalizedStringDTO"
              }
            ],
            "description": "Option text",
            "example": {
              "localized": {
                "en_US": "Yes"
              }
            }
          }
        },
        "required": [
          "id",
          "text"
        ],
        "type": "object"
      },
      "MultipleChoiceQuestionDetailsDTO": {
        "properties": {
          "options": {
            "description": "Choice options",
            "example": [
              {
                "id": 1,
                "text": {
                  "localized": {
                    "en_US": "Yes"
                  }
                }
              }
            ],
            "items": {
              "$ref": "#/components/schemas/MultipleChoiceOptionDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "options"
        ],
        "type": "object"
      },
      "NotFoundDTO": {
        "properties": {
          "error": {
            "description": "Error type identifier",
            "example": "The requested resource was not found",
            "type": "string"
          },
          "message": {
            "description": "Error message describing the not found failure",
            "example": "Not Found",
            "type": "string"
          },
          "statusCode": {
            "description": "HTTP status code for not found",
            "example": 404,
            "type": "number"
          }
        },
        "type": "object"
      },
      "NoteCreatedBySchema": {
        "properties": {
          "id": {
            "example": "TUcmRxWr",
            "type": "string"
          },
          "name": {
            "example": "John Doe",
            "type": "string"
          }
        },
        "type": "object"
      },
      "NotificationSendSettingDto": {
        "properties": {
          "subject": {
            "type": "string"
          },
          "templateId": {
            "type": "string"
          }
        },
        "required": [
          "templateId",
          "subject"
        ],
        "type": "object"
      },
      "NotificationSenderSettingDto": {
        "properties": {
          "fromEmail": {
            "type": "string"
          },
          "fromName": {
            "type": "string"
          }
        },
        "required": [
          "fromEmail",
          "fromName"
        ],
        "type": "object"
      },
      "NotificationSettingsDto": {
        "properties": {
          "receive": {
            "$ref": "#/components/schemas/NotificationSendSettingDto"
          },
          "sender": {
            "$ref": "#/components/schemas/NotificationSenderSettingDto"
          }
        },
        "required": [
          "receive",
          "sender"
        ],
        "type": "object"
      },
      "NumberCapabilitiesDto": {
        "properties": {
          "fax": {
            "description": "Whether the number supports fax",
            "example": false,
            "type": "boolean"
          },
          "mms": {
            "description": "Whether the number supports MMS",
            "example": true,
            "type": "boolean"
          },
          "sms": {
            "description": "Whether the number supports SMS",
            "example": true,
            "type": "boolean"
          },
          "voice": {
            "description": "Whether the number supports voice calls",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "NumericField": {
        "properties": {
          "fieldValue": {
            "description": "Numeric value for the custom field (preferred).",
            "example": 100,
            "type": "object"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": 100,
            "type": "object"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "OAuthAffiliateListItemResponseDto": {
        "properties": {
          "_id": {
            "description": "Affiliate id",
            "example": "63d147176c5bbc30e9e091a4",
            "type": "string"
          },
          "active": {
            "description": "Whether the affiliate is active",
            "example": true,
            "type": "boolean"
          },
          "address": {
            "description": "Affiliate address",
            "example": "123 Main St",
            "type": "string"
          },
          "avatar": {
            "description": "Affiliate avatar URL",
            "example": "https://example.com/avatar.png",
            "type": "string"
          },
          "campaignIds": {
            "description": "Campaign ids",
            "example": [
              "650173614761b33c46d33b19"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "clickCount": {
            "description": "Click count",
            "example": 100,
            "type": "number"
          },
          "contactId": {
            "description": "Contact id associated with the affiliate",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2024-06-16T00:00:00.000Z",
            "type": "string"
          },
          "createdBy": {
            "description": "Created by audit info",
            "type": "object"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "customer": {
            "description": "Customer count",
            "example": 15,
            "type": "number"
          },
          "deleted": {
            "description": "Whether the affiliate is deleted",
            "example": false,
            "type": "boolean"
          },
          "droppedCustomer": {
            "description": "Dropped customer count",
            "example": 2,
            "type": "number"
          },
          "email": {
            "description": "Affiliate email",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "facebookUrl": {
            "description": "Facebook URL",
            "example": "https://facebook.com/johndoe",
            "type": "string"
          },
          "firstName": {
            "description": "Affiliate first name",
            "example": "John",
            "type": "string"
          },
          "instagramUrl": {
            "description": "Instagram URL",
            "example": "https://instagram.com/johndoe",
            "type": "string"
          },
          "lastName": {
            "description": "Affiliate last name",
            "example": "Doe",
            "type": "string"
          },
          "lastUpdatedBy": {
            "description": "Last updated by audit info",
            "type": "object"
          },
          "lead": {
            "description": "Lead count",
            "example": 5,
            "type": "number"
          },
          "linkedInUrl": {
            "description": "LinkedIn URL",
            "example": "https://linkedin.com/in/johndoe",
            "type": "string"
          },
          "locationId": {
            "description": "Location id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "owned": {
            "description": "Owned amount",
            "example": 750,
            "type": "number"
          },
          "paid": {
            "description": "Paid amount",
            "example": 500,
            "type": "number"
          },
          "phone": {
            "description": "Affiliate phone number",
            "example": "+1 888 888-8888",
            "type": "string"
          },
          "revenue": {
            "description": "Affiliate revenue",
            "example": 1250.5,
            "type": "number"
          },
          "twitterUrl": {
            "description": "Twitter URL",
            "example": "https://twitter.com/johndoe",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated at timestamp",
            "example": "2024-06-16T00:00:00.000Z",
            "type": "string"
          },
          "vatId": {
            "description": "VAT ID",
            "example": "VAT123",
            "type": "string"
          },
          "w8Form": {
            "description": "W8 form URL",
            "type": "string"
          },
          "w9Form": {
            "description": "W9 form URL",
            "type": "string"
          },
          "websiteUrl": {
            "description": "Website URL",
            "example": "https://example.com",
            "type": "string"
          },
          "youtubeUrl": {
            "description": "YouTube URL",
            "example": "https://youtube.com/channel",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "locationId",
          "email"
        ],
        "type": "object"
      },
      "ObjectRecordDeleteResponseDTO": {
        "properties": {
          "id": {
            "description": "id of the deleted object",
            "example": "661c06b4ffde146bdb469442",
            "type": "string"
          },
          "success": {
            "description": "boolean that defines if the operation was a success or not",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "OgImageSchema": {
        "properties": {
          "height": {
            "description": "Image height",
            "example": 400,
            "type": "number"
          },
          "type": {
            "description": "Image Type",
            "example": "image/jpg",
            "type": "string"
          },
          "url": {
            "description": "Image url",
            "example": "https://knowledge.wharton.upenn.edu/wp-content/uploads/2019/07/072619_socialmedia_phonelikes-600x440.jpg",
            "type": "string"
          },
          "width": {
            "description": "Image width",
            "example": 400,
            "type": "number"
          }
        },
        "type": "object"
      },
      "OgTagsDTO": {
        "properties": {
          "metaImage": {
            "description": "URL of the content's primary image.",
            "example": "https://example.com/image.png",
            "type": "object"
          },
          "metaLink": {
            "description": "The canonical URL of the content.",
            "example": "https://example.com",
            "type": "object"
          },
          "ogTitle": {
            "description": "The title of the content.",
            "example": "Example Title",
            "type": "object"
          }
        },
        "type": "object"
      },
      "OgTagsInputDTO": {
        "properties": {
          "metaImage": {
            "description": "URL of the image to display in link preview.",
            "example": "https://example.com/images/preview.png",
            "type": "object"
          },
          "metaLink": {
            "description": "The canonical URL of the content for link preview.",
            "example": "https://example.com/blog/post-title",
            "type": "object"
          },
          "ogTitle": {
            "description": "Title to display in link preview.",
            "example": "Check out our latest blog post!",
            "type": "object"
          }
        },
        "type": "object"
      },
      "OgTagsSchema": {
        "properties": {
          "metaImage": {
            "description": "Preview image URL for the shared link.\n\n**Best Practices:**\n- Use high-quality images (1200x630px recommended)\n- Ensure the image is publicly accessible\n\n**Auto-fetch:** Use the Get Metatags API to fetch OG data from a URL.",
            "example": "https://yoursite.com/images/og-image.jpg",
            "type": "string"
          },
          "metaLink": {
            "description": "URL of the webpage being shared. This is the destination when users click the link preview.",
            "example": "https://yoursite.com/blog/amazing-article",
            "type": "string"
          },
          "ogDescription": {
            "description": "Custom description for the link preview. Overrides the page's og:description meta tag.\n\n**Tip:** Keep descriptions under 155 characters for optimal display.",
            "example": "Learn proven strategies to boost your social media engagement and grow your audience.",
            "type": "string"
          },
          "ogTitle": {
            "description": "Custom title for the link preview. Overrides the page's og:title meta tag.\n\n**Tip:** Keep titles concise (50-60 characters) for best display across platforms.",
            "example": "How to Double Your Social Media Engagement",
            "type": "string"
          }
        },
        "type": "object"
      },
      "OldCreateInvoiceDTO": {
        "properties": {},
        "type": "object"
      },
      "OpenHour": {
        "properties": {
          "daysOfTheWeek": {
            "items": {
              "maximum": 6,
              "minimum": 0,
              "type": "number"
            },
            "type": "array"
          },
          "hours": {
            "items": {
              "$ref": "#/components/schemas/Hour"
            },
            "type": "array"
          }
        },
        "required": [
          "daysOfTheWeek",
          "hours"
        ],
        "type": "object"
      },
      "OperationDetailsDTO": {
        "properties": {
          "__v": {
            "description": "Version field",
            "example": 0,
            "type": "number"
          },
          "_id": {
            "description": "Operation unique identifier",
            "example": "688e410c8a18870ecf4d13bb",
            "type": "string"
          },
          "createdAt": {
            "description": "Operation creation timestamp",
            "example": "2025-08-02T16:47:08.182Z",
            "type": "string"
          },
          "discoveredUrlsCount": {
            "description": "Number of URLs discovered",
            "example": 66,
            "type": "number"
          },
          "knowledgeBaseId": {
            "description": "Knowledge base ID",
            "example": "CCNPhKqSCkTOG8O7dtbq",
            "type": "string"
          },
          "locationId": {
            "description": "Associated location ID",
            "example": "nnAzVJqSv6PJ1p6zrhvC",
            "type": "string"
          },
          "mode": {
            "description": "Crawling mode used",
            "enum": [
              "Exact",
              "Path",
              "Domain"
            ],
            "example": "Path",
            "type": "string"
          },
          "robotsFileData": {
            "description": "Robots.txt file content",
            "example": "User-agent: *\nSitemap: https://developer.mozilla.org/sitemap.xml\nDisallow: /api/",
            "type": "string"
          },
          "status": {
            "description": "Current operation status",
            "enum": [
              "Pending",
              "Processing",
              "Successful",
              "Failed",
              "Existing",
              "Restricted",
              "Cancelled",
              "Aborted",
              "Training"
            ],
            "example": "Pending",
            "type": "string"
          },
          "trainedUrlsCount": {
            "description": "Number of URLs successfully trained",
            "example": 0,
            "type": "number"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2025-08-02T16:48:43.635Z",
            "type": "string"
          },
          "url": {
            "description": "Base URL being crawled",
            "example": "https://developer.mozilla.org/en-US/blog/",
            "type": "string"
          }
        },
        "required": [
          "discoveredUrlsCount",
          "trainedUrlsCount",
          "_id",
          "locationId",
          "status",
          "url",
          "mode",
          "knowledgeBaseId",
          "createdAt",
          "updatedAt",
          "__v"
        ],
        "type": "object"
      },
      "OpportunitiesCreateAddFollowersSuccessfulResponseDto": {
        "properties": {
          "followers": {
            "description": "Current list of all follower user IDs after the operation",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "sx6wyHhbFdRXh302LLss"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "followersAdded": {
            "description": "User IDs that were successfully added as followers",
            "example": [
              "Mx6wyHhbFdRXh302Luer",
              "Ka6wyHhbFdRXh302LLsAm"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "OpportunitiesDeleteFollowersSuccessfulResponseDto": {
        "properties": {
          "followers": {
            "description": "Current list of all follower user IDs after the operation",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "sx6wyHhbFdRXh302LLss"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "followersRemoved": {
            "description": "User IDs that were successfully removed as followers",
            "example": [
              "Mx6wyHhbFdRXh302Luer",
              "Ka6wyHhbFdRXh302LLsAm"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "OpportunitiesFollowersDTO": {
        "properties": {
          "followers": {
            "description": "Array of user IDs to add or remove as followers (max 10)",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "followers"
        ],
        "type": "object"
      },
      "OpportunitiesSearchSuccessfulResponseDto": {
        "properties": {
          "aggregations": {
            "description": "Aggregation results keyed by aggregation name",
            "example": {},
            "type": "object"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SearchMetaResponseSchema"
              }
            ],
            "description": "Pagination metadata for the result set",
            "example": {}
          },
          "opportunities": {
            "description": "List of opportunities matching the search criteria",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/SearchOpportunitiesResponseSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "OpportunitySearchBodyDTO": {
        "properties": {
          "additionalDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AdditionalDetailsDTO"
              }
            ],
            "description": "Flags to include additional related entities in the response",
            "example": {
              "calendarEvents": false,
              "notes": false,
              "tasks": false
            }
          },
          "limit": {
            "description": "Maximum number of results to return per page",
            "example": 20,
            "type": "number"
          },
          "locationId": {
            "description": "Location Id",
            "example": "i2SpAtBVHSVea1sL6oah",
            "type": "string"
          },
          "page": {
            "description": "Page number (0-indexed)",
            "example": 0,
            "type": "number"
          },
          "query": {
            "description": "Full-text search query string (max 75 characters)",
            "example": "john@example.com",
            "type": "string"
          },
          "searchAfter": {
            "description": "Search-after cursor values for deep pagination",
            "example": [
              1625203104328,
              "yWQobCRIhRguQtD2llvk"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId",
          "query",
          "limit",
          "page",
          "searchAfter",
          "additionalDetails"
        ],
        "type": "object"
      },
      "OptionDTO": {
        "properties": {
          "key": {
            "description": "Key of the option (Included in Create and Response, excluded in Update)",
            "type": "string"
          },
          "label": {
            "description": "Value of the option",
            "type": "string"
          },
          "url": {
            "description": "URL associated with the option (Optional, valid only for RADIO type)",
            "type": "string"
          }
        },
        "required": [
          "key",
          "label"
        ],
        "type": "object"
      },
      "OrderResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the order.",
            "example": "653f5e0cde5a1314e62a837c",
            "type": "string"
          },
          "altId": {
            "description": "AltId is the unique identifier eg: location id.",
            "example": "3SwdhCu3svxI8AKsPJt6",
            "type": "string"
          },
          "altType": {
            "description": "AltType is the type of identifier.",
            "example": "location",
            "type": "string"
          },
          "amount": {
            "description": "Order value.",
            "example": "100",
            "type": "number"
          },
          "contactEmail": {
            "description": "Contact email corresponding to the order.",
            "example": "james.bond@example.com",
            "type": "string"
          },
          "contactId": {
            "description": "Contact id corresponding to the order.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "contactName": {
            "description": "Contact name corresponding to the order.",
            "example": "James Bond",
            "type": "string"
          },
          "couponCode": {
            "description": "Coupon code for the order.",
            "example": "100PER",
            "type": "string"
          },
          "createdAt": {
            "description": "The creation timestamp of the order.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the order.",
            "example": "user123",
            "type": "string"
          },
          "currency": {
            "description": "Currency in which order was created.",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "description": "Discount value on order.",
            "example": "10",
            "type": "number"
          },
          "fulfillmentStatus": {
            "description": "Fulfillment status of the order.",
            "example": "unfulfilled",
            "type": "string"
          },
          "liveMode": {
            "description": "Order is in live / test mode.",
            "example": "false",
            "type": "boolean"
          },
          "onetimeProducts": {
            "description": "Total one time products in an order.",
            "example": "1",
            "type": "number"
          },
          "recurringProducts": {
            "description": "Total recurring time products in an order.",
            "example": "1",
            "type": "number"
          },
          "sourceId": {
            "description": "Source id for the order.",
            "example": "kDj7BHej9Zyyq3QakJmz",
            "type": "string"
          },
          "sourceMeta": {
            "description": "Meta content for the source of order.",
            "example": "{ domain: \"app.gohighlevel.com\", pageId:  \"rBVhyYhMsbxbO8ZqOcei\", pageUrl:  \"/v2/preview/rBVhyYhMsbxbO8ZqOcei\", stepId:   \"5a772f62-3fbc-418b-af1b-be8929dd64c2\"}",
            "type": "object"
          },
          "sourceName": {
            "description": "Source name for the order.",
            "example": "onestep",
            "type": "string"
          },
          "sourceSubType": {
            "description": "Source sub-type for the order.",
            "example": "one_step_order_form",
            "type": "string"
          },
          "sourceType": {
            "description": "Source type of order (eg: funnel).",
            "example": "funnel",
            "type": "string"
          },
          "status": {
            "description": "The status of the order (e.g., completed).",
            "example": "completed",
            "type": "string"
          },
          "subtotal": {
            "description": "Order sub-total value.",
            "example": "100",
            "type": "number"
          },
          "totalProducts": {
            "description": "Total products in an order.",
            "example": "5",
            "type": "number"
          },
          "updatedAt": {
            "description": "The last update timestamp of the order.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "status",
          "sourceType",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "PageDetailsSchema": {
        "properties": {
          "title": {
            "example": "Example Page",
            "type": "string"
          },
          "url": {
            "example": "https://example.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "PatchAgentDTO": {
        "properties": {
          "agentName": {
            "description": "Display name for the voice AI agent, between 1-40 characters. Default: \"My Agent {random 3 digit number}\"",
            "example": "Customer Support Agent",
            "maxLength": 40,
            "minLength": 1,
            "type": "string"
          },
          "agentPrompt": {
            "description": "Custom instructions defining the agent's behavior and personality. Default: Basic prompt generated automatically",
            "example": "You are a helpful customer service representative. Always be polite and professional.",
            "type": "string"
          },
          "agentWorkingHours": {
            "description": "Time intervals defining when the agent accepts calls, organized by day of week. Default: [] (available 24/7)",
            "items": {
              "$ref": "#/components/schemas/AgentWorkingHoursDTO"
            },
            "type": "array"
          },
          "businessName": {
            "description": "Name of the business this agent represents. Default: Uses location name",
            "example": "Acme Corporation",
            "minLength": 1,
            "type": "string"
          },
          "callEndWorkflowIds": {
            "description": "Array of workflow IDs to trigger automatically when calls end. Default: []",
            "example": [
              "wf_507f1f77bcf86cd799439011",
              "wf_507f1f77bcf86cd799439012"
            ],
            "items": {
              "type": "string"
            },
            "maxItems": 10,
            "type": "array"
          },
          "inboundNumber": {
            "description": "Phone number for receiving inbound calls to this agent. Default: null",
            "example": "+1234567890",
            "type": "string"
          },
          "isAgentAsBackupDisabled": {
            "description": "Prevents this agent from being used as a fallback option. Default: false (Available as backup agent)",
            "example": false,
            "type": "boolean"
          },
          "language": {
            "$ref": "#/components/schemas/VoiceAILanguage",
            "example": "en-US"
          },
          "maxCallDuration": {
            "description": "Maximum call duration in seconds, between 180-900 (3-15 minutes). Default: 300 seconds (5 minutes)",
            "example": 600,
            "maximum": 900,
            "minimum": 180,
            "type": "number"
          },
          "numberPoolId": {
            "description": "Identifier for the number pool managing phone number allocation. Default: null",
            "example": "pool_507f1f77bcf86cd799439011",
            "type": "string"
          },
          "patienceLevel": {
            "$ref": "#/components/schemas/PatienceLevel",
            "example": "low"
          },
          "reminderAfterIdleTimeSeconds": {
            "description": "Seconds to wait before sending idle reminders, between 1-20. Default: 8 seconds",
            "example": 5,
            "maximum": 20,
            "minimum": 1,
            "type": "number"
          },
          "sendPostCallNotificationTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendPostCallNotificationDTO"
              }
            ],
            "description": "Configuration for post-call email notifications to various recipients. Default: []"
          },
          "sendUserIdleReminders": {
            "description": "Enables automatic reminders when callers are silent. Default: true",
            "example": true,
            "type": "boolean"
          },
          "timezone": {
            "description": "IANA timezone identifier affecting working hours and scheduling. Default: Location timezone",
            "example": "America/New_York",
            "pattern": "^[A-Za-z_]+/[A-Za-z_]+$",
            "type": "string"
          },
          "translation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranslationDTO"
              }
            ],
            "description": "Language translation settings including enablement flag and target language code. Rules: (1) translation.enabled can only be true if the agent's language is not en-US; (2) when enabled, translation.language must be either the agent's language or en-US; (3) when enabled, translation.language is required."
          },
          "voiceId": {
            "description": "Identifier for the speech synthesis voice from available voice options. Default: Auto generated",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "welcomeMessage": {
            "description": "Initial greeting spoken when the agent answers calls. Default: Auto generated",
            "example": "Hello! Thank you for calling Acme Corporation. How can I assist you today?",
            "maxLength": 190,
            "minLength": 1,
            "type": "string"
          }
        },
        "type": "object"
      },
      "PatchAgentResponseDTO": {
        "properties": {
          "agentName": {
            "description": "Display name of the voice AI agent",
            "example": "Customer Support Agent",
            "type": "string"
          },
          "agentPrompt": {
            "description": "Custom instructions defining the agent's behavior",
            "example": "You are a helpful customer service representative.",
            "type": "string"
          },
          "agentWorkingHours": {
            "description": "Time intervals when the agent accepts calls, organized by day of week",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/AgentWorkingHoursDTO"
            },
            "type": "array"
          },
          "businessName": {
            "description": "Name of the business this agent represents",
            "example": "Acme Corporation",
            "type": "string"
          },
          "callEndWorkflowIds": {
            "description": "Array of workflow IDs triggered automatically when calls end",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Unique identifier for the created agent",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "inboundNumber": {
            "description": "Phone number for receiving inbound calls",
            "example": "+1234567890",
            "type": "string"
          },
          "isAgentAsBackupDisabled": {
            "description": "Indicates whether this agent is excluded from backup scenarios",
            "example": false,
            "type": "boolean"
          },
          "language": {
            "description": "Language code for the agent's speech and understanding",
            "example": "en-US",
            "type": "string"
          },
          "locationId": {
            "description": "Unique identifier for the location where this agent operates",
            "example": "LOC123456789ABCDEF",
            "type": "string"
          },
          "maxCallDuration": {
            "description": "Maximum call duration in seconds, between 180-900",
            "example": 600,
            "maximum": 900,
            "minimum": 180,
            "type": "number"
          },
          "numberPoolId": {
            "description": "Identifier for the number pool managing this agent's phone allocation",
            "example": "pool_507f1f77bcf86cd799439011",
            "type": "string"
          },
          "patienceLevel": {
            "description": "Current tolerance level for caller response delays",
            "example": "medium",
            "type": "string"
          },
          "reminderAfterIdleTimeSeconds": {
            "description": "Seconds to wait before sending idle reminders, between 1-20",
            "example": 5,
            "maximum": 20,
            "minimum": 1,
            "type": "number"
          },
          "sendPostCallNotificationTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendPostCallNotificationSchema"
              }
            ],
            "description": "Current post-call notification settings including recipient configuration"
          },
          "sendUserIdleReminders": {
            "description": "Indicates whether automatic idle reminders are enabled",
            "example": true,
            "type": "boolean"
          },
          "timezone": {
            "description": "IANA timezone identifier for working hours and scheduling",
            "example": "America/New_York",
            "type": "string"
          },
          "translation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranslationSchema"
              }
            ],
            "description": "Current language translation settings including enablement status and target language"
          },
          "voiceId": {
            "description": "Identifier for the speech synthesis voice being used",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "welcomeMessage": {
            "description": "Greeting message spoken when the agent answers calls",
            "example": "Hello! Thank you for calling. How can I assist you today?",
            "type": "string"
          }
        },
        "required": [
          "id",
          "locationId",
          "agentName",
          "businessName",
          "welcomeMessage",
          "agentPrompt",
          "voiceId",
          "language",
          "patienceLevel",
          "maxCallDuration",
          "sendUserIdleReminders",
          "reminderAfterIdleTimeSeconds",
          "timezone",
          "isAgentAsBackupDisabled"
        ],
        "type": "object"
      },
      "PatchInvoiceStatsLastViewedDto": {
        "properties": {
          "invoiceId": {
            "description": "Invoice Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "invoiceId"
        ],
        "type": "object"
      },
      "PatienceLevel": {
        "description": "Tolerance level for caller response delays. Default: \"high\"",
        "enum": [
          "low",
          "medium",
          "high"
        ],
        "type": "string"
      },
      "PauseLocationDto": {
        "properties": {
          "companyId": {
            "description": "Company ID",
            "example": "companyId1",
            "type": "string"
          },
          "paused": {
            "description": "Paused",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "paused",
          "companyId"
        ],
        "type": "object"
      },
      "PaymentDTO": {
        "properties": {
          "amount": {
            "description": "Service price",
            "example": 50,
            "type": "number"
          },
          "deposit": {
            "description": "Deposit amount or percentage value",
            "example": 20,
            "type": "number"
          },
          "depositType": {
            "description": "Deposit type",
            "enum": [
              "percentage",
              "amount"
            ],
            "example": "amount",
            "type": "string"
          }
        },
        "type": "object"
      },
      "PaymentMethodDto": {
        "properties": {
          "stripe": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StripePaymentMethodDto"
              }
            ],
            "description": "Payment Method"
          }
        },
        "required": [
          "stripe"
        ],
        "type": "object"
      },
      "PaymentScheduleConfigDto": {
        "properties": {
          "dateConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentScheduleDateConfigDto"
              }
            ],
            "description": "Due date type configuration"
          },
          "schedules": {
            "description": "Payment Schedule Items",
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "type": {
            "description": "Payment Schedule Type",
            "enum": [
              "fixed",
              "percentage"
            ],
            "example": "fixed",
            "type": "string"
          }
        },
        "required": [
          "type",
          "dateConfig",
          "schedules"
        ],
        "type": "object"
      },
      "PaymentScheduleDateConfigDto": {
        "properties": {
          "depositDateType": {
            "description": "Deposit date type",
            "enum": [
              "estimate_accepted",
              "custom"
            ],
            "example": "estimate_accepted",
            "type": "string"
          },
          "scheduleDateType": {
            "description": "Payment Schedule Date Type",
            "enum": [
              "regular_interval",
              "custom"
            ],
            "example": "regular_interval",
            "type": "string"
          }
        },
        "required": [
          "depositDateType",
          "scheduleDateType"
        ],
        "type": "object"
      },
      "PaymentScheduleDto": {
        "properties": {
          "schedules": {
            "description": "payment schedule item",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "type": {
            "description": "Payment schedule type",
            "enum": [
              "fixed",
              "percentage"
            ],
            "example": "percentage",
            "type": "string"
          }
        },
        "required": [
          "type",
          "schedules"
        ],
        "type": "object"
      },
      "PaymentsCardDto": {
        "properties": {
          "last4": {
            "description": "Last 4 digit of the card",
            "example": "1234",
            "type": "string"
          },
          "type": {
            "enum": [
              "visa",
              "mastercard",
              "other"
            ],
            "example": "mastercard",
            "type": "string"
          }
        },
        "required": [
          "type",
          "last4"
        ],
        "type": "object"
      },
      "PaymentsCustomRRuleOptionsDto": {
        "properties": {
          "count": {
            "description": "Max number of task executions",
            "example": 10,
            "type": "number"
          },
          "dayOfMonth": {
            "description": "-1, 1, 2, 3, ..., 27, 28",
            "example": 15,
            "type": "number"
          },
          "dayOfWeek": {
            "enum": [
              "mo",
              "tu",
              "we",
              "th",
              "fr",
              "sa",
              "su"
            ],
            "example": "mo",
            "type": "string"
          },
          "daysBefore": {
            "description": "Execute task number of days before",
            "example": 5,
            "type": "number"
          },
          "endDate": {
            "description": "End date in YYYY-MM-DD format",
            "example": "2029-11-01",
            "type": "string"
          },
          "endTime": {
            "description": "End time in HH:mm:ss format",
            "example": "18:45:00",
            "type": "string"
          },
          "interval": {
            "example": 2,
            "type": "number"
          },
          "intervalType": {
            "enum": [
              "yearly",
              "monthly",
              "weekly",
              "daily",
              "hourly",
              "minutely",
              "secondly"
            ],
            "example": "monthly",
            "type": "string"
          },
          "monthOfYear": {
            "enum": [
              "jan",
              "feb",
              "mar",
              "apr",
              "may",
              "jun",
              "jul",
              "aug",
              "sep",
              "oct",
              "nov",
              "dec"
            ],
            "example": "jan",
            "type": "string"
          },
          "numOfWeek": {
            "description": "-1, 1, 2, 3, 4",
            "example": -1,
            "type": "number"
          },
          "startDate": {
            "description": "Start date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "startTime": {
            "description": "Start time in HH:mm:ss format",
            "example": "20:45:00",
            "type": "string"
          }
        },
        "required": [
          "intervalType",
          "interval",
          "startDate"
        ],
        "type": "object"
      },
      "PaymentsOrderSource": {
        "properties": {
          "id": {
            "type": "string"
          },
          "meta": {
            "type": "object"
          },
          "name": {
            "type": "string"
          },
          "subType": {
            "enum": [
              "one_step_order_form",
              "two_step_order_form",
              "upsell",
              "tap_to_pay",
              "card_payment",
              "store",
              "contact_view",
              "email_campaign",
              "payments_dashboard",
              "shopify",
              "subscription_view",
              "store_upsell",
              "woocommerce",
              "service",
              "meeting",
              "imported_csv",
              "qr_code",
              "saas_one_time",
              "saas_subscription"
            ],
            "type": "string"
          },
          "type": {
            "enum": [
              "funnel",
              "website",
              "invoice",
              "calendar",
              "text2Pay",
              "document_contracts",
              "membership",
              "mobile_app",
              "communities",
              "point_of_sale",
              "manual",
              "form",
              "survey",
              "payment_link",
              "external"
            ],
            "type": "string"
          }
        },
        "required": [
          "type",
          "id"
        ],
        "type": "object"
      },
      "PaymentsScheduleOptionsDto": {
        "properties": {
          "executeAt": {
            "type": "string"
          },
          "rrule": {
            "$ref": "#/components/schemas/PaymentsCustomRRuleOptionsDto"
          }
        },
        "type": "object"
      },
      "PayoutListItemResponseDto": {
        "properties": {
          "_id": {
            "description": "Payout id",
            "example": "65df04201e428a0c5ebb6571",
            "type": "string"
          },
          "affiliate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OAuthAffiliateListItemResponseDto"
              }
            ],
            "description": "Affiliate details"
          },
          "affiliateEmail": {
            "description": "Affiliate email",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "affiliateId": {
            "description": "Affiliate id",
            "example": "65df04201e428a0c5ebb6572",
            "type": "string"
          },
          "affiliateName": {
            "description": "Affiliate display name",
            "example": "John Doe",
            "type": "string"
          },
          "altId": {
            "description": "Alternate id",
            "example": "alt_123",
            "type": "string"
          },
          "amount": {
            "description": "Payout amount",
            "example": 150,
            "type": "number"
          },
          "campaign": {
            "description": "Campaign name",
            "example": "Summer Promo",
            "type": "string"
          },
          "campaignId": {
            "description": "Campaign id",
            "example": "65df04201e428a0c5ebb6573",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2024-06-16T00:00:00.000Z",
            "type": "string"
          },
          "currency": {
            "description": "Payout currency",
            "example": "USD",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the payout is deleted",
            "example": false,
            "type": "boolean"
          },
          "dueAt": {
            "description": "Payout due date",
            "example": "2024-06-30T00:00:00.000Z",
            "type": "string"
          },
          "isMigrated": {
            "description": "Whether the payout is migrated",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "paidAt": {
            "description": "Payout paid date",
            "example": "2024-06-30T00:00:00.000Z",
            "type": "string"
          },
          "paidMeta": {
            "description": "Payout metadata",
            "type": "object"
          },
          "paidMethod": {
            "description": "Payout paid method",
            "example": "manual",
            "type": "string"
          },
          "payoutMethod": {
            "description": "Primary payout method",
            "example": "paypal",
            "type": "string"
          },
          "payoutMonth": {
            "description": "Payout month",
            "example": "2024-06-01T00:00:00.000Z",
            "type": "string"
          },
          "status": {
            "description": "Payout status",
            "example": "pending",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated at timestamp",
            "example": "2024-06-17T00:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "locationId",
          "affiliateId",
          "currency",
          "amount"
        ],
        "type": "object"
      },
      "PayoutListMetaResponseDto": {
        "properties": {
          "count": {
            "description": "Total payouts matching the filters",
            "example": 42,
            "type": "number"
          }
        },
        "required": [
          "count"
        ],
        "type": "object"
      },
      "PermissionsDto": {
        "properties": {
          "adwordsReportingEnabled": {
            "default": false,
            "description": "Whether AdWords reporting is enabled for this user",
            "example": false,
            "type": "boolean"
          },
          "affiliateManagerEnabled": {
            "default": true,
            "description": "Whether the affiliate manager is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "agentReportingEnabled": {
            "default": true,
            "description": "Whether agent reporting is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "appointmentsEnabled": {
            "default": true,
            "description": "Whether appointments are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "assignedDataOnly": {
            "default": false,
            "description": "Whether the user can only access data assigned to them",
            "example": false,
            "type": "boolean"
          },
          "attributionsReportingEnabled": {
            "default": false,
            "description": "Whether attributions reporting is enabled for this user",
            "example": false,
            "type": "boolean"
          },
          "bloggingEnabled": {
            "default": true,
            "description": "Whether blogging is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "botService": {
            "default": false,
            "description": "Whether the bot service is enabled for this user",
            "example": false,
            "type": "boolean"
          },
          "bulkRequestsEnabled": {
            "default": true,
            "description": "Whether bulk requests are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "campaignsEnabled": {
            "default": true,
            "description": "Whether campaigns are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "campaignsReadOnly": {
            "default": false,
            "description": "Whether campaigns are in read-only mode for this user",
            "example": false,
            "type": "boolean"
          },
          "cancelSubscriptionEnabled": {
            "default": true,
            "description": "Whether cancelling subscriptions is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "communitiesEnabled": {
            "default": true,
            "description": "Whether communities are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "contactsEnabled": {
            "default": true,
            "description": "Whether contacts are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "contentAiEnabled": {
            "default": true,
            "description": "Whether Content AI is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "conversationsEnabled": {
            "default": true,
            "description": "Whether conversations are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "dashboardStatsEnabled": {
            "default": true,
            "description": "Whether dashboard statistics are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "exportPaymentsEnabled": {
            "default": true,
            "description": "Whether exporting payments is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "facebookAdsReportingEnabled": {
            "default": false,
            "description": "Whether Facebook Ads reporting is enabled for this user",
            "example": false,
            "type": "boolean"
          },
          "funnelsEnabled": {
            "default": true,
            "description": "Whether funnels are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "invoiceEnabled": {
            "default": true,
            "description": "Whether invoices are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "leadValueEnabled": {
            "default": true,
            "description": "Whether lead value features are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "marketingEnabled": {
            "default": true,
            "description": "Whether marketing features are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "membershipEnabled": {
            "default": false,
            "description": "Whether membership features are enabled for this user",
            "example": false,
            "type": "boolean"
          },
          "onlineListingsEnabled": {
            "default": true,
            "description": "Whether online listings are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "opportunitiesEnabled": {
            "default": true,
            "description": "Whether opportunities are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "paymentsEnabled": {
            "default": true,
            "description": "Whether payments are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "phoneCallEnabled": {
            "default": true,
            "description": "Whether phone calls are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "recordPaymentEnabled": {
            "default": true,
            "description": "Whether recording payments is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "refundsEnabled": {
            "default": true,
            "description": "Whether refunds are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "reviewsEnabled": {
            "default": true,
            "description": "Whether reviews are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "settingsEnabled": {
            "default": true,
            "description": "Whether settings are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "socialPlanner": {
            "default": true,
            "description": "Whether the social planner is enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "tagsEnabled": {
            "default": true,
            "description": "Whether tags are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "triggersEnabled": {
            "default": true,
            "description": "Whether triggers are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "websitesEnabled": {
            "default": false,
            "description": "Whether websites are enabled for this user",
            "example": false,
            "type": "boolean"
          },
          "workflowsEnabled": {
            "default": true,
            "description": "Whether workflows are enabled for this user",
            "example": true,
            "type": "boolean"
          },
          "workflowsReadOnly": {
            "default": false,
            "description": "Whether workflows are in read-only mode for this user",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "PermissionsResponseDto": {
        "properties": {
          "permissions": {
            "description": "Enabled permission names for the sub-account",
            "example": [
              "crm",
              "workflow"
            ],
            "items": {
              "enum": [
                "2-way-text-messaging",
                "gmb-messaging",
                "web-chat",
                "reputation-management",
                "facebook-messenger",
                "gmb-call-tracking",
                "missed-call-text-back",
                "text-to-pay",
                "calendar",
                "crm",
                "opportunities",
                "email-marketing",
                "form-builder",
                "survey-builder",
                "trigger-links",
                "html-builder",
                "sms-email-templates",
                "funnels",
                "websites",
                "workflow",
                "membership",
                "all-reports",
                "triggers",
                "campaigns",
                "launchpad"
              ],
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "permissions"
        ],
        "type": "object"
      },
      "PinterestBoardSelection": {
        "description": "Per-account Pinterest board selection. Each entry binds one connected Pinterest account to a list of board IDs the pin should publish to. Each selected board produces an independent child post tracked separately for success/failure.",
        "properties": {
          "accountId": {
            "description": "Connected Pinterest account ID. Must match one of the accounts referenced in the post's `userIds`.",
            "example": "6887d6de1d8175813d50dab8",
            "type": "string"
          },
          "boards": {
            "description": "Pinterest board IDs to publish to on this account. Each board produces an independent child post. Capped at 25 boards per account.",
            "example": [
              "987654321098765432",
              "234567890123456789"
            ],
            "items": {
              "type": "string"
            },
            "maxItems": 25,
            "minItems": 1,
            "type": "array"
          }
        },
        "required": [
          "accountId",
          "boards"
        ],
        "type": "object"
      },
      "PinterestOAuthAccountSchema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseOAuthAccountSchema"
          },
          {
            "properties": {
              "platform": {
                "enum": [
                  "pinterest"
                ],
                "example": "pinterest",
                "type": "string"
              }
            },
            "type": "object"
          }
        ]
      },
      "PinterestPostSchema": {
        "properties": {
          "boardIds": {
            "additionalProperties": {
              "type": "string"
            },
            "deprecated": true,
            "description": "**DEPRECATED — use `pinterestBoards` instead.** Will be removed on July 31, 2026.\n\nLegacy mapping of Pinterest account OAuth IDs to a single board ID:\n`{ accountOAuthId: \"boardId\" }`\n\nFor multi-board posting, use `pinterestBoards`.",
            "example": {
              "6887d6de1d8175813d50dab8": "987654321098765432"
            },
            "type": "object"
          },
          "link": {
            "description": "Destination URL for the pin. Users clicking the pin will be directed to this URL.\n\n**Max length:** 2048 characters\n\n**Best Practices:**\n- Use direct links to relevant content\n- Track with UTM parameters for analytics",
            "example": "https://yoursite.com/blog/home-decor-ideas",
            "type": "string"
          },
          "pinterestBoards": {
            "description": "Per-account Pinterest board selection. Each entry binds one connected Pinterest account to a list of boards on that account. Each board produces an independent child post tracked separately for success/failure. Capped at 25 boards per account.\n\nWhen supplied, this field takes precedence over the deprecated `boardIds` field.",
            "example": [
              {
                "accountId": "6887d6de1d8175813d50dab8",
                "boards": [
                  "987654321098765432",
                  "234567890123456789"
                ]
              },
              {
                "accountId": "682c7d1710a2fe3d805a3513",
                "boards": [
                  "111222333444555666"
                ]
              }
            ],
            "items": {
              "$ref": "#/components/schemas/PinterestBoardSelection"
            },
            "type": "array"
          },
          "shortenedLinks": {
            "description": "Shortened links for the post (auto-generated).",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "title": {
            "description": "Pin title displayed on Pinterest.\n\n**Max length:** 100 characters\n\n**Best Practices:**\n- Include relevant keywords\n- Be descriptive and engaging",
            "example": "10 Easy Home Decor Ideas for 2024",
            "type": "string"
          }
        },
        "type": "object"
      },
      "PinterestProfileSchema": {
        "properties": {
          "avatar": {
            "description": "Avatar of profile account",
            "example": "https://i.pinimg.com/example-avatar.jpg",
            "type": "string"
          },
          "id": {
            "description": "Id",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "isConnected": {
            "description": "Is connected",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of account",
            "example": "Account Name",
            "type": "string"
          },
          "type": {
            "description": "Pinterest Account Type",
            "example": "PINNER",
            "type": "string"
          },
          "username": {
            "description": "Username of account",
            "example": "@username",
            "type": "string"
          },
          "websiteUrl": {
            "description": "Pinterest Account website Url",
            "example": "https://www.pinterest.com/",
            "type": "string"
          }
        },
        "type": "object"
      },
      "PipelinesResponseSchema": {
        "properties": {
          "colorRenderMode": {
            "description": "How pipeline/stage colors are rendered",
            "enum": [
              "dot",
              "bg-tint",
              "none"
            ],
            "example": "dot",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the pipeline",
            "example": "aWdODOBVOlH1RUFKWQke",
            "type": "string"
          },
          "locationId": {
            "description": "Identifier of the location (sub-account) this pipeline belongs to",
            "example": "dsjddjkndadqaja",
            "type": "string"
          },
          "name": {
            "description": "Name of the pipeline",
            "example": "new pipeline",
            "type": "string"
          },
          "showInFunnel": {
            "description": "Whether the pipeline is shown in the funnel view",
            "example": false,
            "type": "boolean"
          },
          "showInPieChart": {
            "description": "Whether the pipeline is shown in the pie chart view",
            "example": true,
            "type": "boolean"
          },
          "stages": {
            "description": "Stages belonging to this pipeline",
            "example": [],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "useOpportunityProbability": {
            "description": "Whether stage-level win probability is enabled for this pipeline",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "PlansDTO": {
        "properties": {
          "subscription": {
            "description": "Subscription plans",
            "example": [
              {
                "baseAmount": 999,
                "features": [
                  "feature1",
                  "feature2"
                ],
                "name": "Monthly Plan - 999",
                "paymentTime": "month",
                "paymentType": "month",
                "planId": "5ae000000000000000000000",
                "resellingAmount": 0
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SubscriptionPlanDTO"
            },
            "type": "array"
          },
          "usage": {
            "description": "Usage-based plans",
            "example": [
              {
                "executionLimitPerCycle": 1000,
                "fixedPricePerUnit": 0.01001,
                "maxPricePerUnit": "0.01001",
                "meterId": "680b97022b4a34420f5f9b93",
                "meterName": "Send Group iMessage",
                "minPricePerUnit": "0.01001",
                "priceType": "fixed",
                "productName": "Send Group iMessage",
                "productType": "workflow_action",
                "usageUnit": "action / message"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/UsagePlanDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "subscription",
          "usage"
        ],
        "type": "object"
      },
      "PostApprovalSchema": {
        "properties": {
          "approvalStatus": {
            "description": "Current approval status of the post.\n\n**Available Values:**\n- `pending` - Awaiting approver review\n- `approved` - Approved and ready for publishing\n- `rejected` - Rejected by approver (needs revision)\n- `not_required` - No approval workflow needed",
            "enum": [
              "pending",
              "approved",
              "rejected",
              "not_required"
            ],
            "example": "pending",
            "type": "string"
          },
          "approver": {
            "description": "User ID of the designated approver.\n\n**Note:** The approver will receive a notification when a post is submitted for review.",
            "example": "iVrVJ2uoXNF0wzcBzgl5",
            "type": "string"
          },
          "approverNote": {
            "description": "Note from the approver to the post creator with feedback or approval comments.",
            "example": "Approved! Great content. Consider adding more hashtags for visibility.",
            "type": "string"
          },
          "requesterNote": {
            "description": "Note from the post creator to the approver explaining the post or requesting specific feedback.",
            "example": "Please review the messaging for our Q4 campaign launch. Let me know if the CTA needs adjustment.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "PostCreateRequest": {
        "properties": {
          "accountIds": {
            "description": "Account Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "categoryId": {
            "description": "Category Id",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID of the creator who is creating/managing the post. Must be a valid MongoDB ObjectId.\n\n**Get User IDs from:** [Get User API](../users/get-user) — use the `id` field from the user object.\n\n**Validation:** Must be a valid MongoDB ObjectId.",
            "example": "65f151c99bc2bf3aaf970d72",
            "type": "string"
          },
          "followUpComment": {
            "description": "Follow-up comment to be posted immediately after the main post is published.\n\n**Supported Platforms:** Facebook, Instagram, LinkedIn, YouTube\n\n**NOT Supported:** TikTok, Google My Business (GMB), Pinterest\n\n**Use Case:** Great for adding hashtags, additional context, or engagement prompts without cluttering the main post.\n\n- Follow-up comment is automatically trimmed to platform limits\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)",
            "example": "What do you think? Let us know in the comments!",
            "type": "string"
          },
          "gmbPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GMBPostSchema"
              }
            ],
            "description": "GMB Post Details"
          },
          "media": {
            "description": "Post Media Data \n The limitations of media as per the platforms is provided through the reference link in API description",
            "example": [
              {
                "altText": "A sunset over the ocean with silhouetted palm trees",
                "caption": "Sample caption",
                "type": "image/jpeg",
                "url": "https://example.com/image.jpg"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/PostMediaSchema"
            },
            "type": "array"
          },
          "ogTagsDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgTagsSchema"
              }
            ],
            "description": "Og Tags Meta Data"
          },
          "postApprovalDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostApprovalSchema"
              }
            ],
            "description": "Post Approval Details"
          },
          "scheduleDate": {
            "description": "Schedule Date",
            "example": "2024-01-15T10:00:00Z",
            "type": "string"
          },
          "scheduleTimeUpdated": {
            "description": "if schedule datetime is updated",
            "example": true,
            "type": "boolean"
          },
          "status": {
            "description": "Status must be one of the following values: in_progress, draft, failed, published, scheduled, in_review, notification_sent, deleted",
            "example": "draft",
            "type": "object"
          },
          "summary": {
            "description": "Post Content \n The limitations of content as per the platforms is provided through the reference link in API description",
            "example": "Hello World",
            "type": "string"
          },
          "tags": {
            "description": "Array of Tag Value",
            "example": [
              "Tag1"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tiktokPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TiktokPostSchema"
              }
            ],
            "description": "Tiktok Post Details"
          },
          "type": {
            "description": "Post Type must be one of the following values: - post, story, reel",
            "example": "post",
            "type": "object"
          },
          "userId": {
            "description": "User ID",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "PostInsightsSchema": {
        "description": "Aggregated engagement metrics for a published post.",
        "properties": {
          "comment": {
            "description": "Total number of comments on the post.",
            "example": 5,
            "type": "number"
          },
          "like": {
            "description": "Total number of likes (or platform-equivalent reactions) on the post.",
            "example": 12,
            "type": "number"
          },
          "share": {
            "description": "Total number of shares/reposts of the post.",
            "example": 3,
            "type": "number"
          }
        },
        "type": "object"
      },
      "PostInterface": {
        "properties": {
          "bucketVideoUrl": {
            "type": "string"
          },
          "contentType": {
            "$ref": "#/components/schemas/contentType"
          },
          "description": {
            "type": "string"
          },
          "postMaterials": {
            "items": {
              "$ref": "#/components/schemas/PostMaterialInterface"
            },
            "type": "array"
          },
          "thumbnailUrl": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "visibility": {
            "$ref": "#/components/schemas/visibility"
          }
        },
        "required": [
          "title",
          "visibility",
          "contentType",
          "description"
        ],
        "type": "object"
      },
      "PostMaterialInterface": {
        "properties": {
          "title": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/type"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "title",
          "type",
          "url"
        ],
        "type": "object"
      },
      "PostMediaSchema": {
        "properties": {
          "altText": {
            "description": "Alt text for accessibility. Supported on Instagram, Threads, Pinterest, Bluesky, and LinkedIn image posts (ignored for video and other platforms). Auto-truncated per platform: Pinterest 500, Instagram/Threads 1000, Bluesky 2000, LinkedIn 4086 chars.",
            "example": "A sunset over the ocean with silhouetted palm trees",
            "maxLength": 4086,
            "type": "string"
          },
          "caption": {
            "description": "Alt text or caption for the media. Used for accessibility and SEO.",
            "example": "Team meeting discussing Q4 marketing strategy",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the media item. Used for tracking and referencing.",
            "example": "media_abc123xyz",
            "type": "string"
          },
          "isModified": {
            "description": "Flag indicating if the media was modified (watermarked, optimized, or processed).",
            "example": true,
            "type": "boolean"
          },
          "optimizedType": {
            "description": "MIME type of the optimized media. May differ from original if format conversion occurred.",
            "example": "image/jpeg",
            "type": "string"
          },
          "optimizedUrl": {
            "description": "URL of the optimized/compressed media. Set automatically when media optimization is enabled.\n\n**Enable Optimization:** Set `mediaOptimization: true` in the post request.",
            "example": "https://storage.googleapis.com/your-bucket/media/optimized-image.jpg",
            "type": "string"
          },
          "originalUrl": {
            "description": "Original media URL before any processing (watermarking/optimization). Set automatically by the system.",
            "example": "https://storage.googleapis.com/test/test/media/original.jpeg",
            "type": "string"
          },
          "thumbnail": {
            "description": "Cover image URL for a video media item.\n\n**Scope**\n- Applies to the **first video** in `media[]`. Values supplied on subsequent video items are ignored.\n- Has no effect on image-only media items.\n\n**Response behavior**\n- After the post is published, the resolved cover image is surfaced on the post-level `thumbnail` field of the response and is no longer echoed back inside `media[]`. This represents the post's primary cover image and the cover used for the first video.\n\n**Limitations**\n- Per-item thumbnails for multi-video posts are not supported. Each destination network exposes a single cover image per post for the leading video; this matches the behavior of the underlying social platform APIs.\n\n**Format**\n- Provide a publicly accessible JPEG or PNG URL. Animated formats and video URLs are not accepted.\n- Recommended: an image matching the orientation of your video and ≤ 2 MB.",
            "example": "https://storage.googleapis.com/test/test/media/test.jpeg",
            "type": "string"
          },
          "type": {
            "description": "MIME type of the media file. See Platform Limitations Guide for platform-specific format support.",
            "enum": [
              "image/jpeg",
              "image/jpg",
              "image/png",
              "image/gif",
              "video/mp4",
              "video/mov",
              "video/webm"
            ],
            "example": "image/jpeg",
            "type": "string"
          },
          "url": {
            "description": "Public URL of the media file. Must be a valid, accessible HTTPS URL.",
            "example": "https://storage.googleapis.com/your-bucket/media/image.jpg",
            "type": "string"
          },
          "watermarkedUrl": {
            "description": "URL of the media after watermarking. Set automatically when watermark is applied.",
            "example": "https://storage.googleapis.com/test/test/media/watermarked.jpeg",
            "type": "string"
          }
        },
        "required": [
          "url",
          "type"
        ],
        "type": "object"
      },
      "PostRecordOrderPaymentBody": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "amount": {
            "description": "Amount to be paid against the invoice.",
            "example": 100,
            "type": "number"
          },
          "card": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentsCardDto"
              }
            ],
            "description": "Details of Card if used for payment"
          },
          "cheque": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ChequeDto"
              }
            ],
            "description": "Details of the Cheque if used for payment"
          },
          "isPartialPayment": {
            "description": "Indicates if the order is intended to be a partial payment.",
            "type": "boolean"
          },
          "meta": {
            "description": "Meta data to be recorded with the transaction",
            "type": "object"
          },
          "mode": {
            "description": "manual payment method",
            "enum": [
              "cash",
              "card",
              "cheque",
              "bank_transfer",
              "other"
            ],
            "example": "card",
            "type": "string"
          },
          "notes": {
            "description": "Any note to be recorded with the transaction",
            "example": "This was a direct payment",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "mode"
        ],
        "type": "object"
      },
      "PostRecordOrderPaymentResponse": {
        "properties": {
          "success": {
            "description": "Success status of the request",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "PostSearchSuccessfulResponseDto": {
        "properties": {
          "aggregations": {
            "description": "Aggregation results keyed by aggregation name",
            "example": {},
            "type": "object"
          },
          "opportunities": {
            "description": "List of opportunities matching the search criteria",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/SearchOpportunitiesResponseSchema"
            },
            "type": "array"
          },
          "stageAggregations": {
            "description": "Per-stage totals when pipeline filter is present",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/StageAggregationResponseDto"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of opportunities matching the query",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "total"
        ],
        "type": "object"
      },
      "PostSubmissionCallToActionDTO": {
        "properties": {
          "callToActionLabel": {
            "description": "Call to action label",
            "enum": [
              "VISIT_COMPANY_WEBSITE",
              "DOWNLOAD_NOW",
              "TRY_NOW",
              "VIEW_NOW",
              "LEARN_MORE"
            ],
            "example": "LEARN_MORE",
            "type": "string"
          },
          "callToActionTarget": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostSubmissionCallToActionTargetDTO"
              }
            ],
            "description": "Call to action target",
            "example": {
              "landingPageUrl": "https://example.com/thank-you"
            }
          }
        },
        "required": [
          "callToActionTarget",
          "callToActionLabel"
        ],
        "type": "object"
      },
      "PostSubmissionCallToActionTargetDTO": {
        "properties": {
          "landingPageUrl": {
            "description": "Landing page URL",
            "example": "https://example.com/thank-you",
            "type": "string"
          }
        },
        "required": [
          "landingPageUrl"
        ],
        "type": "object"
      },
      "PostSubmissionInfoDTO": {
        "properties": {
          "callToAction": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostSubmissionCallToActionDTO"
              }
            ],
            "description": "Post-submission call to action",
            "example": {
              "callToActionLabel": "LEARN_MORE",
              "callToActionTarget": {
                "landingPageUrl": "https://example.com/thank-you"
              }
            }
          },
          "message": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LocalizedStringDTO"
              }
            ],
            "description": "Thank-you message",
            "example": {
              "localized": {
                "en_US": "Thank you!"
              }
            }
          }
        },
        "required": [
          "message",
          "callToAction"
        ],
        "type": "object"
      },
      "PostSuccessfulResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Posts",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostSuccessfulResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "count": 6,
              "posts": [
                {
                  "_id": "61bb16833b3f2791f9715be2",
                  "insights": {
                    "comment": 5,
                    "like": 12,
                    "share": 3
                  },
                  "locationId": "ve9EPM428h8vShlRW1KT",
                  "status": "published"
                }
              ]
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "PostSuccessfulResponseSchema": {
        "properties": {
          "count": {
            "description": "Total count of posts",
            "example": 6,
            "type": "number"
          },
          "posts": {
            "description": "Post Data",
            "example": [
              {
                "_id": "61bb16833b3f2791f9715be2",
                "locationId": "ve9EPM428h8vShlRW1KT",
                "platform": "google",
                "status": "published",
                "summary": "Sample Summary"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/GetPostFormattedSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "PostUserSchema": {
        "properties": {
          "email": {
            "description": "Email Id",
            "example": "abc@example.com",
            "type": "string"
          },
          "firstName": {
            "description": "First name",
            "example": "Harry",
            "type": "string"
          },
          "id": {
            "description": "User Id",
            "example": "6284c43d519161e96cc09c13",
            "type": "string"
          },
          "lastName": {
            "description": "Last name",
            "example": "Spencer",
            "type": "string"
          },
          "phone": {
            "description": "Phone number",
            "example": "901111119",
            "type": "string"
          },
          "profilePhoto": {
            "description": "Profile photo",
            "example": "https://storage.googleapis.com/user/kCrjKGHZQ2/profile/1dca8c-61c9-404d-a459-751fbcb.jpeg",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "Mr",
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "firstName",
          "lastName",
          "profilePhoto",
          "phone",
          "email"
        ],
        "type": "object"
      },
      "PriceDimensionsDto": {
        "properties": {
          "height": {
            "description": "Height of the price",
            "example": 10,
            "type": "number"
          },
          "length": {
            "description": "Length of the price",
            "example": 10,
            "type": "number"
          },
          "unit": {
            "description": "Unit of the price dimensions",
            "enum": [
              "cm",
              "in",
              "m"
            ],
            "example": "cm",
            "type": "string"
          },
          "width": {
            "description": "Width of the price",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "height",
          "width",
          "length",
          "unit"
        ],
        "type": "object"
      },
      "PriceMetaDto": {
        "properties": {
          "internalSource": {
            "description": "The internal source of the price.",
            "enum": [
              "agency_plan",
              "funnel",
              "membership",
              "communities",
              "gokollab",
              "calendar"
            ],
            "example": "agency_plan",
            "type": "string"
          },
          "source": {
            "description": "The source of the price.",
            "enum": [
              "stripe",
              "woocommerce",
              "shopify"
            ],
            "example": "stripe",
            "type": "string"
          },
          "sourceId": {
            "description": "The id of the source of the price from where it is imported",
            "example": "123",
            "type": "string"
          },
          "stripePriceId": {
            "description": "The Stripe price ID associated with the price.",
            "example": "price_123",
            "type": "string"
          }
        },
        "required": [
          "source",
          "stripePriceId",
          "internalSource"
        ],
        "type": "object"
      },
      "PriceUpdateField": {
        "properties": {
          "roundToWhole": {
            "description": "Round to nearest whole number",
            "example": true,
            "type": "boolean"
          },
          "type": {
            "description": "Type of price update",
            "enum": [
              "INCREASE_BY_AMOUNT",
              "REDUCE_BY_AMOUNT",
              "SET_NEW_PRICE",
              "INCREASE_BY_PERCENTAGE",
              "REDUCE_BY_PERCENTAGE"
            ],
            "example": "INCREASE_BY_AMOUNT",
            "type": "string"
          },
          "value": {
            "description": "Value to update (amount or percentage based on type)",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "type",
          "value"
        ],
        "type": "object"
      },
      "ProcessMessageBodyDto": {
        "properties": {
          "altId": {
            "description": "external mail provider's message id",
            "example": "61d6d1f9cdac7612faf80753",
            "type": "string"
          },
          "attachments": {
            "description": "Array of attachments",
            "example": [
              "https://example.com/files/image.png"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "call": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CallDataDTO"
              }
            ],
            "description": "Phone call dialer and receiver information",
            "example": {
              "from": "+15037081211",
              "status": "completed",
              "to": "+15037081210"
            }
          },
          "contactId": {
            "description": "Contact Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "conversationId": {
            "description": "Conversation Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "conversationProviderId": {
            "description": "Conversation Provider Id",
            "example": "61d6d1f9cdac7612faf80753",
            "type": "string"
          },
          "date": {
            "description": "Date of the inbound message",
            "example": "2024-03-27T18:13:49.000Z",
            "format": "date-time",
            "type": "string"
          },
          "direction": {
            "default": "outbound",
            "description": "Message direction, if required can be set manually, default is outbound",
            "example": [
              "outbound",
              "inbound"
            ],
            "type": "object"
          },
          "emailBcc": {
            "description": "List of email address to BCC",
            "example": [
              "john1@example.com",
              "john2@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "emailCc": {
            "description": "List of email address to CC",
            "example": [
              "john1@example.com",
              "john2@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "emailFrom": {
            "description": "Email address to send from. This field is associated with the contact record and cannot be dynamically changed.",
            "example": "sender@example.com",
            "type": "string"
          },
          "emailMessageId": {
            "description": "Send the email message id for which this email should be threaded. This is for replying to a specific email",
            "example": "rnGyqh2F6uBrIkfhFo9A",
            "type": "string"
          },
          "emailTo": {
            "description": "Recipient email address. This field is associated with the contact record and cannot be dynamically changed.",
            "example": "recipient@example.com",
            "type": "string"
          },
          "html": {
            "description": "HTML Body of Email",
            "example": "<p>Hello from the contact.</p>",
            "type": "string"
          },
          "message": {
            "description": "Message Body",
            "example": "Hello from the contact.",
            "type": "string"
          },
          "subject": {
            "description": "Subject of the Email",
            "example": "Welcome email",
            "type": "string"
          },
          "type": {
            "description": "Message Type",
            "enum": [
              "SMS",
              "RCS",
              "Email",
              "WhatsApp",
              "GMB",
              "IG",
              "FB",
              "Custom",
              "WebChat",
              "Live_Chat",
              "Call",
              "IVR_Call",
              "Campaign_Call",
              "Campaign_VoiceMail",
              "TIKTOK",
              "ALL_IN_ONE_CHAT",
              "FORM_SUBMISSION"
            ],
            "example": "SMS",
            "type": "string"
          }
        },
        "required": [
          "type",
          "conversationId",
          "contactId",
          "conversationProviderId"
        ],
        "type": "object"
      },
      "ProcessMessageResponseDto": {
        "properties": {
          "contactId": {
            "description": "Contact ID associated with the processed message",
            "example": "ABC12h2F6uBrIkfXYazb",
            "type": "string"
          },
          "conversationId": {
            "description": "Conversation ID.",
            "example": "ABC12h2F6uBrIkfXYazb",
            "type": "string"
          },
          "dateAdded": {
            "description": "Timestamp when the processed message was created",
            "example": "2024-03-27T18:13:49.000Z",
            "format": "date-time",
            "type": "string"
          },
          "emailMessageId": {
            "description": "Email message ID created for email conversations",
            "example": "rnGyqh2F6uBrIkfhFo9A",
            "type": "string"
          },
          "message": {
            "description": "Result message returned after processing",
            "example": "Message queued successfully.",
            "type": "string"
          },
          "messageId": {
            "description": "This is the main Message ID",
            "example": "t22c6DQcTDf3MjRhwf77",
            "type": "string"
          },
          "success": {
            "description": "Whether the message processing succeeded",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "conversationId",
          "messageId",
          "message"
        ],
        "type": "object"
      },
      "ProcessOutboundMessageBodyDto": {
        "properties": {
          "altId": {
            "description": "external mail provider's message id",
            "example": "61d6d1f9cdac7612faf80753",
            "type": "string"
          },
          "attachments": {
            "description": "Array of attachments",
            "example": [
              "https://example.com/files/recording.mp3"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "call": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CallDataDTO"
              }
            ],
            "description": "Phone call dialer and receiver information",
            "example": {
              "from": "+15037081211",
              "status": "completed",
              "to": "+15037081210"
            }
          },
          "conversationId": {
            "description": "Conversation Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "conversationProviderId": {
            "description": "Conversation Provider Id",
            "example": "61d6d1f9cdac7612faf80753",
            "type": "string"
          },
          "date": {
            "description": "Date of the outbound message",
            "example": "2024-03-27T18:13:49.000Z",
            "format": "date-time",
            "type": "string"
          },
          "type": {
            "description": "Message Type",
            "enum": [
              "Call"
            ],
            "example": "Call",
            "type": "string"
          }
        },
        "required": [
          "type",
          "conversationId",
          "conversationProviderId"
        ],
        "type": "object"
      },
      "ProcessingFeeDto": {
        "properties": {
          "charges": {
            "description": "charges for the processing fee",
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "collectedMiscellaneousCharges": {
            "description": "collected miscellaneous charges",
            "example": 10,
            "type": "number"
          },
          "paidCharges": {
            "description": "paid miscellaneous charges",
            "items": {
              "$ref": "#/components/schemas/ProcessingFeePaidChargeDto"
            },
            "type": "array"
          }
        },
        "required": [
          "charges"
        ],
        "type": "object"
      },
      "ProcessingFeePaidChargeDto": {
        "properties": {
          "_id": {
            "description": "id of the processing fee",
            "example": "673d01d7d547648a8dab6211",
            "type": "string"
          },
          "amount": {
            "description": "amount of the processing fee",
            "example": 10,
            "type": "number"
          },
          "charge": {
            "description": "charge for the processing fee",
            "example": 10,
            "type": "number"
          },
          "name": {
            "description": "name of the processing fee",
            "example": "Processing Fee",
            "type": "string"
          }
        },
        "required": [
          "name",
          "charge",
          "amount",
          "_id"
        ],
        "type": "object"
      },
      "ProductCategories": {
        "properties": {},
        "type": "object"
      },
      "ProductInterface": {
        "properties": {
          "categories": {
            "items": {
              "$ref": "#/components/schemas/CategoryInterface"
            },
            "type": "array"
          },
          "description": {
            "type": "string"
          },
          "imageUrl": {
            "type": "string"
          },
          "instructorDetails": {
            "$ref": "#/components/schemas/InstructorDetails"
          },
          "title": {
            "type": "string"
          }
        },
        "required": [
          "title",
          "description",
          "categories"
        ],
        "type": "object"
      },
      "ProductItem": {
        "properties": {
          "id": {
            "description": "id of product",
            "type": "string"
          },
          "qty": {
            "description": "No of quantities",
            "type": "number"
          }
        },
        "required": [
          "id",
          "qty"
        ],
        "type": "object"
      },
      "ProductLabelDto": {
        "properties": {
          "endDate": {
            "description": "Start date in YYYY-MM-DDTHH:mm:ssZ format",
            "example": "2024-06-30T05:43:39.000Z",
            "type": "string"
          },
          "startDate": {
            "description": "Start date in YYYY-MM-DDTHH:mm:ssZ format",
            "example": "2024-06-26T05:43:35.000Z",
            "type": "string"
          },
          "title": {
            "description": "The content for the product label.",
            "example": "Featured",
            "type": "string"
          }
        },
        "required": [
          "title"
        ],
        "type": "object"
      },
      "ProductMediaDto": {
        "properties": {
          "id": {
            "description": "The unique identifier for the media.",
            "example": "fzrgusiuu0m",
            "type": "string"
          },
          "isFeatured": {
            "description": "Indicates whether the media is featured.",
            "example": true,
            "type": "boolean"
          },
          "priceIds": {
            "description": "Mongo ObjectIds of the prices for which the media is assigned",
            "example": "6578278e879ad2646715ba9c",
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "title": {
            "description": "The title of the media file.",
            "example": "1dd7dcd0-e71d-4cf7-a06b-6d47723d6a29.png",
            "type": "string"
          },
          "type": {
            "description": "The type of the media file (e.g., image, video will be supporting soon).",
            "enum": [
              "image",
              "video"
            ],
            "example": "image",
            "type": "string"
          },
          "url": {
            "description": "The URL where the media file is stored.",
            "example": "https://storage.googleapis.com/ghl-test/3SwdhCsvxI8Au3KsPJt6/media/sample.png",
            "type": "string"
          }
        },
        "required": [
          "id",
          "url",
          "type"
        ],
        "type": "object"
      },
      "ProductReviewDto": {
        "properties": {
          "comment": {
            "description": "Detailed Review of the product",
            "example": "This product exceeded my expectations in terms of quality and performance. Highly recommended!",
            "maxLength": 5000,
            "minLength": 0,
            "type": "string"
          },
          "headline": {
            "description": "Headline of the Review",
            "example": "Amazing product with great quality",
            "maxLength": 200,
            "minLength": 0,
            "type": "string"
          },
          "user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetailsDto"
              }
            ],
            "description": "User who is giving the review/reply"
          }
        },
        "required": [
          "headline",
          "comment",
          "user"
        ],
        "type": "object"
      },
      "ProductSEODto": {
        "properties": {
          "description": {
            "description": "SEO description",
            "example": "This is the best product you can buy online with amazing features and great value",
            "type": "string"
          },
          "title": {
            "description": "SEO title",
            "example": "Best Product - Buy Now",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ProductVariantDto": {
        "properties": {
          "id": {
            "description": "A unique identifier for the variant.",
            "example": "38s63qmxfr4",
            "type": "string"
          },
          "name": {
            "description": "The name of the variant.",
            "example": "Size",
            "type": "string"
          },
          "options": {
            "description": "An array of options for the variant.",
            "items": {
              "$ref": "#/components/schemas/ProductVariantOptionDto"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "name",
          "options"
        ],
        "type": "object"
      },
      "ProductVariantOptionDto": {
        "properties": {
          "id": {
            "description": "The unique identifier for the option.",
            "example": "h4z7u0im2q8",
            "type": "string"
          },
          "name": {
            "description": "The name of the option.",
            "example": "XL",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "PromoteAndPublishDTO": {
        "properties": {
          "locationId": {
            "description": "Location ID for authorization",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "userEmail": {
            "description": "User email performing the promotion action",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "userId": {
            "description": "User ID performing the promotion action",
            "example": "usr_abc123def456",
            "type": "string"
          },
          "userName": {
            "description": "User name performing the promotion action",
            "example": "John Doe",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "PromoteAndPublishResponseDTO": {
        "properties": {
          "data": {
            "description": "Result data with production and new draft version details",
            "example": {
              "newDraftVersion": {
                "agentId": "p1q2r3s4t5u6v7w8x9y0z1a2",
                "createdAt": "2024-02-27T12:00:00.000Z",
                "isPublished": false,
                "state": "draft",
                "version": 3,
                "versionId": "v2b3c4d5e6f7g8h9i0j1",
                "versionName": "Customer Support Agent v3"
              },
              "productionVersion": {
                "agentId": "p1q2r3s4t5u6v7w8x9y0z1a2",
                "isPublished": true,
                "publishedAt": "2024-02-27T12:00:00.000Z",
                "publishedBy": "usr_abc123def456",
                "publishedByEmail": "john.doe@example.com",
                "publishedByName": "John Doe",
                "state": "prod",
                "version": 2,
                "versionId": "v1a2b3c4d5e6f7g8h9i0",
                "versionName": "Customer Support Agent v2"
              }
            },
            "type": "object"
          },
          "message": {
            "description": "Response message",
            "example": "Draft published to production successfully. New draft version created for future edits.",
            "type": "string"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message",
          "data"
        ],
        "type": "object"
      },
      "ProposalEstimateLinksDto": {
        "properties": {
          "createdBy": {
            "description": "Created by user ID",
            "example": "b6d8fa28-1112-4dc7-b9d2-f22b75a477ea",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the document is deleted",
            "example": false,
            "type": "boolean"
          },
          "documentId": {
            "description": "Document ID",
            "example": "c1e87a91-93b2-4b78-821f-85cf0e1f925b",
            "type": "string"
          },
          "documentRevision": {
            "description": "Document revision number",
            "example": 1,
            "type": "number"
          },
          "entityName": {
            "description": "Entity name that the recipient belongs to",
            "enum": [
              "contacts",
              "users"
            ],
            "example": "contacts",
            "type": "string"
          },
          "recipientCategory": {
            "description": "Recipient category (recipient, cc, or bcc)",
            "enum": [
              "recipient",
              "cc",
              "bcc"
            ],
            "example": "recipient",
            "type": "string"
          },
          "recipientId": {
            "description": "Recipient ID",
            "example": "u240JcS0E5qE0ziHnwMm",
            "type": "string"
          },
          "referenceId": {
            "description": "Reference ID",
            "example": "550e8400-e29b-41d4-a716-446655440000",
            "type": "string"
          }
        },
        "required": [
          "referenceId",
          "documentId",
          "recipientId",
          "entityName",
          "recipientCategory",
          "documentRevision",
          "createdBy",
          "deleted"
        ],
        "type": "object"
      },
      "ProposalsBadRequestDTO": {
        "properties": {
          "message": {
            "example": "Bad Request",
            "type": "string"
          },
          "statusCode": {
            "example": 400,
            "type": "number"
          }
        },
        "type": "object"
      },
      "ProposalsDiscountDto": {
        "properties": {
          "id": {
            "description": "Unique identifier for the discount",
            "example": "123456",
            "type": "string"
          },
          "type": {
            "description": "Type of discount",
            "enum": [
              "percentage",
              "custom_amount"
            ],
            "example": "percentage",
            "type": "string"
          },
          "value": {
            "description": "Discount value (either a percentage or custom amount)",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "id",
          "value",
          "type"
        ],
        "type": "object"
      },
      "ProposalsUnauthorizedDTO": {
        "properties": {
          "error": {
            "example": "Unauthorized",
            "type": "string"
          },
          "message": {
            "example": "Invalid token: access token is invalid",
            "type": "string"
          },
          "statusCode": {
            "example": 401,
            "type": "number"
          }
        },
        "type": "object"
      },
      "ProspectInfoDto": {
        "properties": {
          "email": {
            "description": "Email of the prospect",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "firstName": {
            "description": "First name of the prospect",
            "example": "John",
            "type": "string"
          },
          "lastName": {
            "description": "Last name of the prospect",
            "example": "Doe",
            "type": "string"
          }
        },
        "required": [
          "firstName",
          "lastName",
          "email"
        ],
        "type": "object"
      },
      "PublicAttachmentSchema": {
        "properties": {
          "imageUrl": {
            "description": "URL of the image attachment",
            "example": "https://example.com/image.png",
            "type": "string"
          },
          "type": {
            "description": "Type of attachment",
            "example": "image",
            "type": "string"
          }
        },
        "required": [
          "type",
          "imageUrl"
        ],
        "type": "object"
      },
      "PublicExporterPayload": {
        "properties": {
          "locationId": {
            "type": "string"
          },
          "products": {
            "items": {
              "$ref": "#/components/schemas/ProductInterface"
            },
            "type": "array"
          },
          "userId": {
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "products"
        ],
        "type": "object"
      },
      "PublishAdDTO": {
        "properties": {
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "PublishingProgressResponseDTO": {
        "properties": {
          "campaignId": {
            "description": "Campaign identifier",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "hasFailed": {
            "description": "Whether publishing failed (Redis failed status or campaign FAILED)",
            "example": false,
            "type": "boolean"
          },
          "isComplete": {
            "description": "Whether publishing is finished (Redis complete/failed, processed >= total, or status is no longer PUBLISHING)",
            "example": false,
            "type": "boolean"
          },
          "processed": {
            "description": "Number of publish steps completed so far",
            "example": 2,
            "type": "number"
          },
          "publishingStatus": {
            "description": "Current campaign publishing status in ad-publishing",
            "enum": [
              "DRAFT",
              "SCHEDULED",
              "PUBLISHED",
              "PUBLISHING",
              "FAILED",
              "IN_REVIEW",
              "PAUSED",
              "ARCHIVED",
              "WITH_ISSUES",
              "REJECTED"
            ],
            "example": "PUBLISHING",
            "type": "string"
          },
          "total": {
            "description": "Total publish steps tracked in Redis (campaign + ad sets + ads)",
            "example": 5,
            "type": "number"
          }
        },
        "required": [
          "campaignId",
          "publishingStatus",
          "total",
          "processed",
          "isComplete",
          "hasFailed"
        ],
        "type": "object"
      },
      "PurchaseNumberForLocationV3Http201ResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PurchaseNumberForLocationV3ResponseDto"
              }
            ],
            "description": "V3 purchase payload: purchased number, location, Twilio account id, and underLcAccount.",
            "example": {
              "id": "twilio-account-123",
              "locationId": "tDtDnQdgm2LXpyiqYvZ6",
              "number": "+17745678902",
              "underLcAccount": false
            }
          },
          "message": {
            "description": "Human-readable success message.",
            "example": "Number purchase successful",
            "type": "string"
          },
          "status": {
            "description": "Outcome indicator from the shared success helper.",
            "enum": [
              "success"
            ],
            "example": "success",
            "type": "string"
          },
          "statusCode": {
            "description": "HTTP status echoed in the response body.",
            "example": 201,
            "type": "number"
          }
        },
        "required": [
          "status",
          "data",
          "message",
          "statusCode"
        ],
        "type": "object"
      },
      "PurchaseNumberForLocationV3ResponseDto": {
        "properties": {
          "id": {
            "description": "Twilio account document identifier",
            "example": "twilio-account-123",
            "type": "string"
          },
          "locationId": {
            "description": "Location that owns the Twilio / numbers account",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "number": {
            "description": "E.164 phone number that was purchased (from the request body)",
            "example": "+17745678902",
            "type": "string"
          },
          "underLcAccount": {
            "description": "Whether the account is managed under LC. Renamed from under_ghl_account in the legacy document.",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "number",
          "locationId",
          "id",
          "underLcAccount"
        ],
        "type": "object"
      },
      "PurchasePhoneNumberBodyDto": {
        "properties": {
          "addressSid": {
            "description": "addressSid twilio address id",
            "example": "ADXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
            "type": "string"
          },
          "bundleSid": {
            "description": "bundleSid twilio bundle id",
            "example": "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
            "type": "string"
          },
          "countryCode": {
            "description": "country for which the phone numbers are being requested",
            "example": "US",
            "type": "string"
          },
          "fingerprintId": {
            "description": "fingerprintId is request id which is unique for every purchase number request",
            "example": "purchase-req-abc-123",
            "type": "string"
          },
          "locality": {
            "description": "locality of the user in which number is being purchased",
            "example": "Austin",
            "type": "string"
          },
          "numberType": {
            "description": "type of phone number to be purchased",
            "example": "local",
            "type": "object"
          },
          "paymentIntentId": {
            "description": "stripe payment intent id",
            "example": "pi_3Oxxxxxxxxxxxxxxxxxxxx",
            "type": "string"
          },
          "paymentMethodId": {
            "description": "stripe registered payment method id",
            "example": "pm_1Oxxxxxxxxxxxxxxxx",
            "type": "string"
          },
          "phoneNumber": {
            "description": "phoneNumber to purchase",
            "example": "830236932",
            "type": "string"
          },
          "region": {
            "description": "region of the user in which number is being purchased",
            "example": "TX",
            "type": "string"
          },
          "skipLocationKYC": {
            "description": "Skip location-level KYC verification if agency-level compliance has already been verified",
            "example": false,
            "type": "boolean"
          },
          "stripeAccountId": {
            "description": "stripe account id",
            "example": "acct_1Oxxxxxxxxxxxxxxxx",
            "type": "string"
          }
        },
        "required": [
          "phoneNumber",
          "addressSid",
          "bundleSid",
          "countryCode",
          "numberType",
          "paymentIntentId",
          "stripeAccountId",
          "paymentMethodId",
          "locality",
          "region",
          "fingerprintId",
          "skipLocationKYC"
        ],
        "type": "object"
      },
      "QuestionDetailsDTO": {
        "properties": {
          "multipleChoiceQuestionDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MultipleChoiceQuestionDetailsDTO"
              }
            ],
            "description": "Multiple choice question details",
            "example": {
              "options": [
                {
                  "id": 1,
                  "text": {
                    "localized": {
                      "en_US": "Yes"
                    }
                  }
                }
              ]
            }
          },
          "textQuestionDetails": {
            "description": "Text question details (empty object for text questions)",
            "example": {},
            "type": "object"
          }
        },
        "type": "object"
      },
      "QueueItemDTO": {
        "properties": {
          "_id": {
            "description": "The unique identifier of the queue item.",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "errors": {
            "description": "List of errors associated with the queue item. Possible values: INVALID_USER_ID, PIXABAY_MEDIA.",
            "example": [
              "INVALID_USER_ID",
              "PIXABAY_MEDIA"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isSkipped": {
            "description": "Indicates if this time slot is skipped and the post will not be published at this time",
            "example": false,
            "type": "boolean"
          },
          "order": {
            "description": "The order of the item in the queue.",
            "example": 1000,
            "type": "number"
          },
          "post": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPostFormattedSchema"
              }
            ],
            "description": "The formatted post data."
          },
          "postId": {
            "description": "The ID of the original post, if any.",
            "example": "60af88475f1b2c001f5d5f4d",
            "type": "string"
          },
          "primaryImage": {
            "description": "The primary image URL for the post.",
            "example": "https://example.com/images/post-image.png",
            "type": "string"
          },
          "scheduledDateTime": {
            "description": "The calculated date/time when this item is scheduled to be posted",
            "example": "2023-10-15T10:00:00.000Z",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "scheduledVariationIndex": {
            "description": "The variation index that will be used when this item is posted",
            "example": 0,
            "type": "number"
          },
          "variations": {
            "description": "A list of content variations for the post.",
            "items": {
              "$ref": "#/components/schemas/VariationDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "QueueItemWithVariationsDTO": {
        "properties": {
          "_id": {
            "description": "The unique identifier of the queue item.",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "currentVariation": {
            "description": "The index of the current variation being used for this post",
            "example": 0,
            "type": "number"
          },
          "errors": {
            "description": "List of errors associated with the queue item. Possible values: INVALID_USER_ID, PIXABAY_MEDIA.",
            "example": [
              "INVALID_USER_ID",
              "PIXABAY_MEDIA"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isSkipped": {
            "description": "Indicates if this time slot is skipped and the post will not be published at this time",
            "example": false,
            "type": "boolean"
          },
          "order": {
            "description": "The order of the item in the queue.",
            "example": 1000,
            "type": "number"
          },
          "post": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPostFormattedSchema"
              }
            ],
            "description": "The formatted post data."
          },
          "postId": {
            "description": "The ID of the original post, if any.",
            "example": "60af88475f1b2c001f5d5f4d",
            "type": "string"
          },
          "primaryImage": {
            "description": "The primary image URL for the post.",
            "example": "https://example.com/images/post-image.png",
            "type": "string"
          },
          "scheduledDateTime": {
            "description": "The calculated date/time when this item is scheduled to be posted",
            "example": "2023-10-15T10:00:00.000Z",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "scheduledVariationIndex": {
            "description": "The variation index that will be used when this item is posted",
            "example": 0,
            "type": "number"
          },
          "variations": {
            "description": "A list of content variations for the post.",
            "items": {
              "$ref": "#/components/schemas/VariationDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "QueueModifiedPostDTO": {
        "properties": {
          "accountIds": {
            "description": "Account Ids (OAuth only)",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "applyWatermark": {
            "description": "Apply watermark to media in this post.\n\n**Note:** Watermarks are applied to images only. Videos are not watermarked.",
            "example": true,
            "type": "boolean"
          },
          "categoryId": {
            "description": "Category ID to organize the post. Categories help group related posts.\n\n**Get Category IDs from:** [Get Categories API](./social-planner/get-categories-location-id) — use the `_id` field.\n\n**Validation:** Must be a valid MongoDB ObjectId.",
            "example": "65f151c99bc2bf3aaf970d72",
            "type": "string"
          },
          "createdBy": {
            "description": "Created By",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "facebookPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FacebookPostSchema"
              }
            ],
            "description": "Facebook Post Details"
          },
          "followUpComment": {
            "description": "Follow-up comment to be posted immediately after the main post is published.\n\n**Supported Platforms:** Facebook, Instagram, LinkedIn, YouTube\n\n**NOT Supported:** TikTok, Google My Business (GMB), Pinterest\n\n**Use Case:** Great for adding hashtags, additional context, or engagement prompts without cluttering the main post.\n\n- Follow-up comment is automatically trimmed to platform limits\n\n**Reference:** [Platform Limitations Guide](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations)",
            "example": "What do you think? Let us know in the comments!",
            "type": "string"
          },
          "gmbPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GMBPostSchema"
              }
            ],
            "description": "GMB Post Details",
            "example": {
              "actionType": "BOOK",
              "gmbEventType": "STANDARD",
              "url": "https://example.com"
            }
          },
          "instagramPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InstagramPostSchema"
              }
            ],
            "description": "Instagram Post Details"
          },
          "linkedinPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedinPostSchema"
              }
            ],
            "description": "Linkedin Post Details"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "media": {
            "description": "Post Media",
            "example": [
              {
                "altText": "A sunset over the ocean with silhouetted palm trees",
                "caption": "Sample caption",
                "type": "image/jpeg",
                "url": "https://example.com/image.jpg"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/PostMediaSchema"
            },
            "type": "array"
          },
          "ogTagsDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgTagsSchema"
              }
            ],
            "description": "Og Tags Meta Data",
            "example": {
              "metaImage": "https://example.com/image.jpg",
              "metaLink": "https://www.yahoo.com/",
              "ogDescription": "Page Description",
              "ogTitle": "Page Title"
            }
          },
          "pinterestPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PinterestPostSchema"
              }
            ],
            "description": "Pinterest Post Details"
          },
          "postApprovalDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PostApprovalSchema"
              }
            ],
            "description": "Post Approval Details",
            "example": {
              "approvalStatus": "pending",
              "approver": "iVrVJ2uoXNF0wzcBzgl5"
            }
          },
          "scheduleDate": {
            "description": "Schedule Date",
            "example": "2024-01-15T10:00:00Z",
            "type": "string"
          },
          "scheduleTimeUpdated": {
            "description": "Flag indicating if the schedule datetime was manually updated. Used for tracking rescheduled posts.",
            "example": true,
            "type": "boolean"
          },
          "selectedBestTime": {
            "description": "Selected Best Time slot for scheduling",
            "example": "2024-01-15T10:00:00Z",
            "type": "string"
          },
          "status": {
            "description": "Post status indicating the current state of the post.\n\n**Available Status Values:**\n- `draft` - Post saved as draft, not yet ready for publishing\n- `scheduled` - Post scheduled for future publishing (requires `scheduleDate`)\n- `in_review` - Post pending approval (requires `scheduleDate` and `postApprovalDetails`)\n- `published` - Post has been published\n- `in_progress` - Post is currently being processed\n- `pending` - Post is awaiting platform processing for Instagram media container creation\n- `failed` - Post publishing failed\n- `notification_sent` - Story notification sent (for manual story posting)\n- `deleted` - Post has been deleted\n\n**Validations:**\n- `scheduled` or `in_review` status requires `scheduleDate` to be set\n- Draft posts skip most validations (accountIds, media requirements)",
            "example": "scheduled",
            "type": "object"
          },
          "summary": {
            "description": "Post Content",
            "example": "Hello World",
            "type": "string"
          },
          "tags": {
            "description": "Array of Tag IDs to associate with the post for organization and filtering.\n\n**Get Tag IDs from:** [Get Tags API](./social-planner/get-tags-location-id) — use the `_id` field from each tag.\n\n**Validation:** All IDs must be valid MongoDB ObjectIds.",
            "example": [
              "65f151c99bc2bf3aaf970d72",
              "65f151c99bc2bf3aaf970d73"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tiktokPostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TiktokPostSchema"
              }
            ],
            "description": "Tiktok Post Details",
            "example": {
              "enableComment": true,
              "enableDuet": false,
              "privacyLevel": "PUBLIC_TO_EVERYONE"
            }
          },
          "type": {
            "description": "Post Type must be one of the following values: - post, story, reel",
            "example": "post",
            "type": "object"
          },
          "userId": {
            "description": "User ID",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "type": "string"
          },
          "youtubePostDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/YoutubePostSchema"
              }
            ],
            "description": "Youtube Post Details"
          }
        },
        "type": "object"
      },
      "RadioField": {
        "properties": {
          "fieldValue": {
            "description": "Selected radio option value for the custom field (preferred).",
            "example": "My Selected Option",
            "type": "string"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": "My Selected Option",
            "type": "string"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "RaiseChargeBodyDTO": {
        "properties": {
          "appId": {
            "description": "App ID of the App",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "companyId": {
            "description": "ID of the Agency the Sub-account belongs to",
            "example": "company_abc123",
            "type": "string"
          },
          "description": {
            "description": "Description of the charge",
            "example": "Charge for sending 10 SMS messages",
            "type": "string"
          },
          "eventId": {
            "description": "Event ID / Transaction ID on your server's side. This will help you maintain the reference of the event/transaction on your end that you charged the customer for.",
            "example": "evt_abc123",
            "type": "string"
          },
          "eventTime": {
            "description": "The timestamp when the event/transaction was performed. If blank, the billing timestamp will be set as the event time. ISO8601 Format.",
            "example": "2025-03-26T00:00:000Z",
            "type": "string"
          },
          "locationId": {
            "description": "ID of the Sub-Account to be charged",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "meterId": {
            "description": "Billing Meter ID (you can find this on your app's pricing page)",
            "example": "680b97022b4a34420f5f9b93",
            "type": "string"
          },
          "price": {
            "description": "Price per unit to charge",
            "example": 0.01,
            "type": "number"
          },
          "units": {
            "description": "Number of units to charge",
            "example": 10,
            "type": "number"
          },
          "userId": {
            "description": "User ID",
            "example": "user_abc123",
            "type": "string"
          }
        },
        "required": [
          "appId",
          "meterId",
          "eventId",
          "locationId",
          "companyId",
          "description",
          "units"
        ],
        "type": "object"
      },
      "RcsSenderIdResponseDto": {
        "properties": {
          "friendlyName": {
            "description": "Human-friendly label for the sender ID",
            "example": "Brand Sender",
            "type": "string"
          },
          "number": {
            "description": "RCS sender ID",
            "example": "rcs-sender-id",
            "type": "string"
          },
          "numberType": {
            "description": "Entry type",
            "example": "rcsSenderId",
            "type": "string"
          },
          "rcsMeta": {
            "additionalProperties": true,
            "description": "RCS sender metadata",
            "example": {
              "brandId": "brand-123"
            },
            "type": "object"
          }
        },
        "required": [
          "number",
          "numberType"
        ],
        "type": "object"
      },
      "RecipientItem": {
        "properties": {
          "contactName": {
            "description": "Recipient contact name",
            "example": "Jim Anton",
            "type": "string"
          },
          "country": {
            "description": "Recipient country",
            "example": "United States",
            "type": "string"
          },
          "email": {
            "description": "Recipient Email",
            "example": "jim@example.com",
            "type": "string"
          },
          "entityName": {
            "description": "Recipient entity name",
            "example": "Jim Anton",
            "type": "string"
          },
          "firstName": {
            "description": "Recipient First Name",
            "example": "Jim",
            "type": "string"
          },
          "hasCompleted": {
            "description": "Recipient has completed the document",
            "example": true,
            "type": "boolean"
          },
          "id": {
            "description": "Recipient Id",
            "example": "u240JcS0E5qE0ziHnwMm",
            "type": "string"
          },
          "imgUrl": {
            "description": "Recipient image url",
            "example": "base64 image url",
            "type": "string"
          },
          "initialsImgUrl": {
            "description": "Recipient initials image url",
            "example": "base64 image url",
            "type": "string"
          },
          "ip": {
            "description": "Recipient ip",
            "example": "123.123.123.123",
            "type": "string"
          },
          "isPrimary": {
            "description": "Recipient is primary",
            "example": true,
            "type": "boolean"
          },
          "lastName": {
            "description": "Recipient Last Name",
            "example": "Anton",
            "type": "string"
          },
          "lastViewedAt": {
            "description": "Recipient last viewed date",
            "example": "2025-02-03T18:30:00.000Z",
            "type": "string"
          },
          "phone": {
            "description": "Recipient Phone",
            "example": "1234567890",
            "type": "string"
          },
          "phoneNumber": {
            "description": "Recipient Phone Number",
            "example": "+1234567890",
            "type": "string"
          },
          "role": {
            "description": "Recipient role",
            "enum": [
              "user",
              "signer"
            ],
            "example": "signer",
            "type": "string"
          },
          "shareLink": {
            "description": "Share link",
            "example": "https://www.google.com",
            "type": "string"
          },
          "signedDate": {
            "description": "Recipient signed date",
            "example": "2025-02-03T18:30:00.000Z",
            "type": "string"
          },
          "signingOrder": {
            "description": "Recipient signing order",
            "example": 1,
            "type": "number"
          },
          "userAgent": {
            "description": "Recipient user agent",
            "example": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
            "type": "string"
          }
        },
        "required": [
          "id",
          "email",
          "hasCompleted",
          "role",
          "isPrimary",
          "signingOrder"
        ],
        "type": "object"
      },
      "RecordByIdResponseDTO": {
        "properties": {
          "record": {
            "$ref": "#/components/schemas/IRecordSchema"
          }
        },
        "type": "object"
      },
      "RecordPaymentDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "amount": {
            "description": "Amount to be paid against the invoice.",
            "example": 999,
            "type": "number"
          },
          "card": {
            "$ref": "#/components/schemas/InvoicesCardDto"
          },
          "cheque": {
            "$ref": "#/components/schemas/ChequeDto"
          },
          "fulfilledAt": {
            "description": "Updated At to be recorded against the invoice.",
            "example": "2025-03-19T05:03:00.000Z",
            "type": "string"
          },
          "meta": {
            "type": "object"
          },
          "mode": {
            "description": "manual payment method",
            "enum": [
              "cash",
              "card",
              "cheque",
              "bank_transfer",
              "other"
            ],
            "example": "card",
            "type": "string"
          },
          "notes": {
            "description": "Any note to be recorded with the transaction",
            "example": "This was a direct payment",
            "type": "string"
          },
          "paymentScheduleIds": {
            "description": "Payment Schedule Ids to be recorded against the invoice.",
            "example": [
              "6578278e879ad2646715ba9c"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "mode",
          "card",
          "cheque",
          "notes"
        ],
        "type": "object"
      },
      "RecordPaymentResponseDto": {
        "properties": {
          "invoice": {
            "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
          },
          "success": {
            "description": "status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "invoice"
        ],
        "type": "object"
      },
      "RecordResponseDTO": {
        "properties": {
          "createdAt": {
            "description": "Date and time when the object was added",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedByResponseDTO"
              }
            ],
            "description": "Created By Meta"
          },
          "followers": {
            "description": "Follower (User's ids). Limited to 10 and supported for custom objects for now",
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "v5cEPM428h8vShlRW1KT"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "id of the record",
            "example": "661c06b4ffde146bdb469442",
            "type": "string"
          },
          "lastUpdatedBy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedByResponseDTO"
              }
            ],
            "description": "Last Updated By Meta"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "objectId": {
            "description": "ObjectId Id",
            "example": "6d6f6e676f5f6576656e7473",
            "type": "string"
          },
          "objectKey": {
            "description": "ObjectId key",
            "example": "custom_objects.pet",
            "type": "string"
          },
          "owner": {
            "description": "Owner (User's id). Limited to 1 for now . Only supported for custom objects for now",
            "example": [
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "properties": {
            "description": "Properties of the record",
            "example": {
              "customer_number": 1424,
              "money": {
                "currency": "default",
                "value": 100
              },
              "my_files": [
                {
                  "url": "---url_of_file---"
                }
              ],
              "my_textbox_list.option_a": "Value 1",
              "my_textbox_list.option_b": "Value 2",
              "phone_number": "+917000000000",
              "recieved_on": "2024-07-11",
              "section_of_app": [
                "contacts",
                "smartlist"
              ],
              "ticket_name": "Customer not able login",
              "type_of_ticket": "doubt"
            },
            "type": "string"
          },
          "searchAfter": {
            "example": [
              1738683828372,
              "67a235b49b289431bcf657f8"
            ],
            "items": {
              "type": "number"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "Date and time when the object was last updated",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "id",
          "owner",
          "followers",
          "properties",
          "createdAt",
          "updatedAt",
          "locationId",
          "objectId",
          "objectKey",
          "createdBy",
          "lastUpdatedBy",
          "searchAfter"
        ],
        "type": "object"
      },
      "Recurring": {
        "properties": {
          "bookingOption": {
            "description": "This setting contols what to do incase a recurring slot is unavailable",
            "enum": [
              "skip",
              "continue",
              "book_next"
            ],
            "type": "string"
          },
          "bookingOverlapDefaultStatus": {
            "description": "This setting contols what to do incase a recurring slot is unavailable",
            "enum": [
              "confirmed",
              "new"
            ],
            "type": "string"
          },
          "count": {
            "description": "Number of recurrences",
            "maximum": 24,
            "type": "number"
          },
          "freq": {
            "enum": [
              "DAILY",
              "WEEKLY",
              "MONTHLY"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "RecurringDto": {
        "properties": {
          "interval": {
            "description": "The interval at which the recurring event occurs.",
            "enum": [
              "day",
              "month",
              "week",
              "year"
            ],
            "example": "day",
            "type": "string"
          },
          "intervalCount": {
            "description": "The number of intervals between each occurrence of the event.",
            "example": 1,
            "type": "number"
          }
        },
        "required": [
          "interval",
          "intervalCount"
        ],
        "type": "object"
      },
      "RecurringTaskCreateDTO": {
        "properties": {
          "contactIds": {
            "description": "Contact Id",
            "example": [
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "Description of the task",
            "example": "Task Description",
            "type": "string"
          },
          "ignoreTaskCreation": {
            "description": "Create initial task or not",
            "example": true,
            "type": "boolean"
          },
          "owners": {
            "description": "Assigned To",
            "example": [
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "rruleOptions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomRRulesOptions"
              }
            ],
            "description": "Recurring rules",
            "example": {
              "dueAfterSeconds": 600,
              "interval": 1,
              "intervalType": "hourly",
              "startDate": "2025-07-23T10:00:00.000Z"
            }
          },
          "title": {
            "description": "Name of the task",
            "example": "Task Name",
            "type": "string"
          }
        },
        "required": [
          "title",
          "rruleOptions"
        ],
        "type": "object"
      },
      "RecurringTaskResponseDTO": {
        "properties": {
          "assignedTo": {
            "description": "Assigned To",
            "example": "sx6wyHhbFdRXh302Lunr",
            "type": "string"
          },
          "contactId": {
            "description": "Contact Id",
            "example": "v5cEPM428h8vShlRW1KT",
            "type": "string"
          },
          "createdAt": {
            "description": "Created At",
            "example": "2021-04-15T10:00:00.000Z",
            "type": "string"
          },
          "deleted": {
            "description": "Deleted",
            "example": false,
            "type": "boolean"
          },
          "description": {
            "description": "Description of the task",
            "example": "Task Description",
            "type": "string"
          },
          "id": {
            "description": "Recurring Task Id",
            "example": "sx6wyHhbFdRXh302Lunr",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "sx6wyHhbFdRXh302Lunr",
            "type": "string"
          },
          "rruleOptions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomRRulesOptions"
              }
            ],
            "description": "Recurring rules",
            "example": {
              "count": 550,
              "createTaskIfOverDue": false,
              "dueAfterSeconds": 600,
              "interval": 1,
              "intervalType": "hourly",
              "startDate": "2024-10-29T12:34:03.000Z"
            }
          },
          "title": {
            "description": "Name of the task",
            "example": "Task Name",
            "type": "string"
          },
          "totalOccurrence": {
            "description": "Total Occurrence",
            "example": 10,
            "type": "number"
          },
          "updatedAt": {
            "description": "Updated At",
            "example": "2021-04-15T10:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "description",
          "locationId",
          "updatedAt",
          "createdAt",
          "rruleOptions",
          "totalOccurrence",
          "deleted"
        ],
        "type": "object"
      },
      "RecurringTaskSingleResponseDTO": {
        "properties": {
          "recurringTask": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringTaskResponseDTO"
              }
            ],
            "description": "Recurring Tasks"
          }
        },
        "required": [
          "recurringTask"
        ],
        "type": "object"
      },
      "RecurringTaskUpdateDTO": {
        "properties": {
          "contactIds": {
            "description": "Contact Id",
            "example": [
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "Description of the task",
            "example": "Task Description",
            "type": "string"
          },
          "ignoreTaskCreation": {
            "description": "Create initial task or not",
            "example": true,
            "type": "boolean"
          },
          "owners": {
            "description": "Assigned To",
            "example": [
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "rruleOptions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomRRulesOptions"
              }
            ],
            "description": "Recurring rules",
            "example": {
              "dueAfterSeconds": 600,
              "interval": 1,
              "intervalType": "hourly",
              "startDate": "2025-07-23T10:00:00.000Z"
            }
          },
          "title": {
            "description": "Name of the task",
            "example": "Task Name",
            "type": "string"
          }
        },
        "type": "object"
      },
      "RedirectDTO": {
        "properties": {
          "redirectAction": {
            "description": "Redirect Action",
            "example": false,
            "type": "boolean"
          },
          "redirectText": {
            "description": "Redirect Text",
            "example": "Click here",
            "type": "string"
          },
          "redirectWebsite": {
            "description": "Redirect Website",
            "example": "www.gohighlevel.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "RedirectListResponseDTO": {
        "properties": {
          "data": {
            "description": "Object containing the count of redirects and an array of redirect data",
            "example": {
              "count": 42,
              "data": []
            },
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "RedirectResponseDTO": {
        "properties": {
          "action": {
            "description": "Action performed by the redirect",
            "example": "url",
            "type": "string"
          },
          "domain": {
            "description": "Domain where the redirect occurs",
            "example": "www.example.com",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the redirect",
            "example": "6p2RxpgtMKQwO3E6IUaT",
            "type": "string"
          },
          "locationId": {
            "description": "Identifier of the location associated with the redirect",
            "example": "6p2RxpgtMKQwO3E6IUaT",
            "type": "string"
          },
          "path": {
            "description": "Original path that will be redirected",
            "example": "/old-path",
            "type": "string"
          },
          "pathLowercase": {
            "description": "Lowercase version of the original path",
            "example": "/old-path",
            "type": "string"
          },
          "target": {
            "description": "Target URL to which the original path will be redirected",
            "example": "https://www.example.com/new-path",
            "type": "string"
          },
          "type": {
            "description": "Type of redirect (e.g., Permanent, Temporary)",
            "example": "Permanent",
            "type": "string"
          }
        },
        "required": [
          "id",
          "locationId",
          "domain",
          "path",
          "pathLowercase",
          "type",
          "target",
          "action"
        ],
        "type": "object"
      },
      "ReminderDto": {
        "properties": {
          "emailSubject": {
            "description": "Subject of the reminder",
            "example": "Reminder",
            "type": "string"
          },
          "emailTemplate": {
            "description": "Email template to be used for sending reminders",
            "example": "default",
            "type": "string"
          },
          "enabled": {
            "description": "Flag indicating if the reminder is enabled or not",
            "example": true,
            "type": "boolean"
          },
          "endTime": {
            "description": "Business Hour End Time",
            "example": "5:00 PM",
            "type": "string"
          },
          "intervalType": {
            "description": "Interval type for the reminder",
            "enum": [
              "yearly",
              "monthly",
              "weekly",
              "daily",
              "hourly",
              "minutely",
              "secondly"
            ],
            "example": "daily",
            "type": "string"
          },
          "maxReminders": {
            "description": "Maximum number of reminders that can be sent",
            "example": 3,
            "type": "number"
          },
          "reminderId": {
            "description": "Unique identifier for the reminder",
            "example": "9333e45f-a27d-4659-90e5-76c5ef06d094",
            "type": "string"
          },
          "reminderInvoiceCondition": {
            "description": "Condition for sending the reminder",
            "enum": [
              "invoice_sent",
              "invoice_overdue"
            ],
            "example": "invoice_sent",
            "type": "string"
          },
          "reminderName": {
            "description": "Name of the reminder",
            "example": "Special Reminder",
            "type": "string"
          },
          "reminderNumber": {
            "description": "frequency gap of the reminder to exeucte",
            "example": 10,
            "type": "number"
          },
          "reminderTime": {
            "description": "Time condition for the reminder",
            "enum": [
              "before",
              "after"
            ],
            "example": "before",
            "type": "string"
          },
          "smsTemplate": {
            "description": "SMS template to be used for sending reminders",
            "example": "default",
            "type": "string"
          },
          "startTime": {
            "description": "Business Hour Start Time",
            "example": "9:00 AM",
            "type": "string"
          },
          "timezone": {
            "description": "Timezone at which reminder will be sent",
            "example": "businessTZ",
            "type": "string"
          }
        },
        "required": [
          "enabled",
          "emailTemplate",
          "smsTemplate",
          "emailSubject",
          "reminderId",
          "reminderName",
          "reminderTime",
          "intervalType",
          "maxReminders",
          "reminderInvoiceCondition",
          "reminderNumber"
        ],
        "type": "object"
      },
      "ReminderExecutionDetailsList": {
        "properties": {},
        "type": "object"
      },
      "ReminderSettingsDto": {
        "properties": {
          "defaultEmailTemplateId": {
            "description": "default template Id of reminder",
            "example": "dhwjqi2899012990w2u",
            "type": "string"
          },
          "reminders": {
            "description": "List of reminders",
            "items": {
              "$ref": "#/components/schemas/ReminderDto"
            },
            "type": "array"
          }
        },
        "required": [
          "defaultEmailTemplateId",
          "reminders"
        ],
        "type": "object"
      },
      "RemindersConfigurationDto": {
        "properties": {
          "reminderExecutionDetailsList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReminderExecutionDetailsList"
              }
            ],
            "description": "List of reminders"
          },
          "reminderSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ReminderSettingsDto"
              }
            ],
            "description": "Reminder settings"
          }
        },
        "required": [
          "reminderExecutionDetailsList",
          "reminderSettings"
        ],
        "type": "object"
      },
      "ResetQueueItemDTO": {
        "properties": {
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "ResetQueueItemResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation. Examples: \"Queue item reset successfully\", \"Dummy queue item deleted successfully\".",
            "example": "Queue item reset successfully",
            "type": "string"
          },
          "queueItem": {
            "allOf": [
              {
                "$ref": "#/components/schemas/QueueItemWithVariationsDTO"
              }
            ],
            "description": "The reset queue item, including its current variation."
          }
        },
        "type": "object"
      },
      "ResourceDeleteResponseDTO": {
        "properties": {
          "success": {
            "description": "Success",
            "example": "true",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ResourceNotFoundDTO": {
        "properties": {
          "message": {
            "description": "Error message",
            "example": [
              "Contact not found",
              "User not found",
              "Group not found",
              "Channel not found"
            ],
            "type": "string"
          },
          "statusCode": {
            "description": "Status code",
            "example": 404,
            "type": "number"
          }
        },
        "type": "object"
      },
      "RoleSchema": {
        "properties": {
          "locationIds": {
            "description": "List of location IDs the user has access to",
            "example": [
              "ve9EPM428h8vShlRW1KT"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "restrictSubAccount": {
            "description": "Whether the user is restricted to specific sub-accounts only",
            "example": true,
            "type": "boolean"
          },
          "role": {
            "description": "User role within the account (admin or user)",
            "example": "admin",
            "type": "string"
          },
          "type": {
            "description": "User account type (account for sub-account users, agency for agency-level users)",
            "example": "account",
            "type": "string"
          }
        },
        "type": "object"
      },
      "RuleBasedUserListDTO": {
        "properties": {
          "flexibleRuleUserList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FlexibleRuleUserListDTO"
              }
            ],
            "description": "Flexible rule user list configuration",
            "example": {
              "exclusiveOperands": [],
              "inclusiveOperands": [],
              "inclusiveRuleOperator": "AND"
            }
          },
          "prepopulationStatus": {
            "description": "Prepopulation status",
            "enum": [
              "REQUESTED"
            ],
            "example": "REQUESTED",
            "type": "string"
          }
        },
        "required": [
          "flexibleRuleUserList"
        ],
        "type": "object"
      },
      "RuleDTO": {
        "properties": {
          "ruleItemGroups": {
            "description": "List of rule item groups",
            "example": [
              {
                "ruleItems": [
                  {
                    "name": "url__",
                    "stringRuleItem": {
                      "operator": "CONTAINS",
                      "value": "/products"
                    }
                  }
                ]
              }
            ],
            "items": {
              "$ref": "#/components/schemas/RuleItemGroupDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "ruleItemGroups"
        ],
        "type": "object"
      },
      "RuleItemDTO": {
        "properties": {
          "name": {
            "description": "Rule item name",
            "enum": [
              "url__",
              "referrer__"
            ],
            "example": "url__",
            "type": "string"
          },
          "stringRuleItem": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StringRuleItemDTO"
              }
            ],
            "description": "String rule item condition",
            "example": {
              "operator": "CONTAINS",
              "value": "/products"
            }
          }
        },
        "required": [
          "name",
          "stringRuleItem"
        ],
        "type": "object"
      },
      "RuleItemGroupDTO": {
        "properties": {
          "ruleItems": {
            "description": "List of rule items",
            "example": [
              {
                "name": "url__",
                "stringRuleItem": {
                  "operator": "CONTAINS",
                  "value": "/products"
                }
              }
            ],
            "items": {
              "$ref": "#/components/schemas/RuleItemDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "ruleItems"
        ],
        "type": "object"
      },
      "RuleOperandDTO": {
        "properties": {
          "lookbackWindowDays": {
            "description": "Lookback window in days",
            "example": 30,
            "type": "number"
          },
          "rule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RuleDTO"
              }
            ],
            "description": "Rule definition",
            "example": {
              "ruleItemGroups": [
                {
                  "ruleItems": [
                    {
                      "name": "url__",
                      "stringRuleItem": {
                        "operator": "CONTAINS",
                        "value": "/products"
                      }
                    }
                  ]
                }
              ]
            }
          }
        },
        "required": [
          "lookbackWindowDays",
          "rule"
        ],
        "type": "object"
      },
      "SMSParameters": {
        "properties": {
          "messageBody": {
            "description": "SMS message content to send",
            "example": "Your appointment is confirmed for tomorrow at 2 PM",
            "type": "string"
          },
          "triggerMessage": {
            "description": "Message to tell the caller",
            "example": "I'll send you a confirmation text",
            "type": "string"
          },
          "triggerPrompt": {
            "description": "When to send the SMS",
            "example": "When caller asks for booking confirmation",
            "type": "string"
          }
        },
        "required": [
          "triggerPrompt",
          "triggerMessage",
          "messageBody"
        ],
        "type": "object"
      },
      "SaasBadRequestDTO": {
        "properties": {
          "message": {
            "description": "Error message",
            "example": "Bad Request",
            "type": "string"
          },
          "statusCode": {
            "description": "Status code",
            "example": 400,
            "type": "number"
          }
        },
        "type": "object"
      },
      "SaasInternalServerErrorDTO": {
        "properties": {
          "message": {
            "description": "Error message",
            "example": "Internal Server Error",
            "type": "string"
          },
          "statusCode": {
            "description": "Status code",
            "example": 500,
            "type": "number"
          }
        },
        "type": "object"
      },
      "SaasLocationDto": {
        "properties": {
          "companyId": {
            "description": "Company ID",
            "example": "companyId1",
            "type": "string"
          },
          "customerId": {
            "description": "Customer ID",
            "example": "customerId1",
            "type": "string"
          },
          "email": {
            "description": "Email",
            "example": "john.doe@example.com",
            "type": "string"
          },
          "isSaaSV2": {
            "description": "Indicates if the SaaS is V2",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "locationId1",
            "type": "string"
          },
          "name": {
            "description": "Name",
            "example": "John Doe",
            "type": "string"
          },
          "providerLocationId": {
            "description": "Provider location ID",
            "example": "r06mdj4OrrERzYDvsOdh",
            "type": "string"
          },
          "saasMode": {
            "description": "SaaS mode",
            "example": "saasV2",
            "type": "string"
          },
          "subscriptionId": {
            "description": "Subscription ID",
            "example": "subscriptionId1",
            "type": "string"
          },
          "subscriptionInfo": {
            "description": "Subscription information",
            "example": {
              "priceId": "price_1QDPY5FpU9DlKp7RQ8BXfywx",
              "saasPlanId": "66c4d36534f21f900dc2a265",
              "stripeProductId": "prod_1QDPY5FpU9DlKp7RQ8BXfywx",
              "subscriptionStatus": "active"
            },
            "type": "object"
          }
        },
        "required": [
          "locationId",
          "companyId",
          "saasMode",
          "subscriptionId"
        ],
        "type": "object"
      },
      "SaasPlanResponseDto": {
        "properties": {
          "addOns": {
            "description": "Array of add-ons included in the plan",
            "example": [
              "YEXT_V2",
              "WHATSAPP_V1",
              "WORDPRESS_V1",
              "AI_EMPLOYEE",
              "Ad_Publishing_Connect_Your_BM"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "categoryId": {
            "description": "Category ID for the plan",
            "example": "66911cdc98508ec2731979b9",
            "type": "string"
          },
          "companyId": {
            "description": "Company ID associated with the SaaS plan",
            "example": "66c4d36534f21f900dc2a265",
            "type": "string"
          },
          "contactLimit": {
            "description": "Contact limit for the plan",
            "example": 50,
            "type": "number"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-07-31T07:54:41.885Z",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "Description of the SaaS plan",
            "example": "AED 1.5",
            "type": "string"
          },
          "isSaaSV2": {
            "description": "Indicates if this is a SaaS V2 plan",
            "example": true,
            "type": "boolean"
          },
          "planId": {
            "description": "Unique identifier for the SaaS plan",
            "example": "66c4d36534f21f900dc2a265",
            "type": "string"
          },
          "planLevel": {
            "description": "Level of the plan (0-4)",
            "example": 0,
            "type": "number"
          },
          "prices": {
            "description": "Prices for the plan",
            "items": {
              "properties": {
                "active": {
                  "example": true,
                  "type": "boolean"
                },
                "amount": {
                  "example": 150,
                  "type": "number"
                },
                "billingInterval": {
                  "enum": [
                    "month",
                    "year"
                  ],
                  "example": "month",
                  "type": "string"
                },
                "currency": {
                  "example": "AED",
                  "type": "string"
                },
                "id": {
                  "example": "66a9edbfcc6c505a22db7976",
                  "type": "string"
                },
                "symbol": {
                  "example": "$",
                  "type": "string"
                }
              },
              "type": "object"
            },
            "type": "array"
          },
          "productId": {
            "description": "Product ID for the plan",
            "example": "66a9edbfcc6c5090bedb7974",
            "type": "string"
          },
          "providerLocationId": {
            "description": "Provider location ID",
            "example": "r06mdj4OrrERzYDvsOdh",
            "type": "string"
          },
          "saasProducts": {
            "description": "Array of SaaS products included in the plan",
            "example": [
              "2-way-text-messaging",
              "gmb-messaging",
              "web-chat"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "setupFee": {
            "description": "Setup fee for the plan",
            "example": 100,
            "type": "number"
          },
          "snapshotId": {
            "description": "Snapshot ID for the plan",
            "example": "G8KmpIeLnZc7ZMoJoxDx",
            "type": "string"
          },
          "title": {
            "description": "Title of the SaaS plan",
            "example": "AED 1.5 changed",
            "type": "string"
          },
          "trialPeriod": {
            "description": "Trial period in days",
            "example": 16,
            "type": "number"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2025-04-01T12:27:29.167Z",
            "format": "date-time",
            "type": "string"
          },
          "userLimit": {
            "description": "User limit for the plan",
            "example": 50,
            "type": "number"
          }
        },
        "required": [
          "planId",
          "companyId",
          "title",
          "description",
          "saasProducts",
          "planLevel",
          "trialPeriod",
          "prices",
          "isSaaSV2",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "SaasUnauthorizedDTO": {
        "properties": {
          "error": {
            "description": "Error message",
            "example": "Unauthorized",
            "type": "string"
          },
          "message": {
            "description": "Error message",
            "example": "Invalid token: access token is invalid",
            "type": "string"
          },
          "statusCode": {
            "description": "Status code",
            "example": 401,
            "type": "number"
          }
        },
        "type": "object"
      },
      "SaveBuilderDataDto": {
        "properties": {
          "dnd": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IBuilderJsonMapper"
              }
            ],
            "example": "{elements:[], attrs:{}, templateSettings:{}}"
          },
          "editorType": {
            "enum": [
              "html",
              "builder"
            ],
            "type": "string"
          },
          "html": {
            "example": "",
            "type": "string"
          },
          "isPlainText": {
            "example": "false",
            "type": "boolean"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "previewText": {
            "example": "zYy3YOUuHxgomU1uYJty",
            "type": "string"
          },
          "templateId": {
            "example": "zYy3YOUuHxgomU1uYJty",
            "type": "string"
          },
          "updatedBy": {
            "example": "zYy3YOUuHxgomU1uYJty",
            "type": "string"
          },
          "usedEmailAI": {
            "description": "Whether Email AI was used",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "locationId",
          "templateId",
          "updatedBy",
          "dnd",
          "html",
          "editorType"
        ],
        "type": "object"
      },
      "SaveEditSessionDTO": {
        "properties": {
          "keepInDraft": {
            "default": false,
            "description": "If true, keeps the queue in DRAFT state after saving instead of automatically activating it. Only applicable when the queue is currently in DRAFT status.",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "sessionId"
        ],
        "type": "object"
      },
      "SaveEditSessionResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Edit session saved successfully",
            "type": "string"
          },
          "totalPostsChanged": {
            "description": "Number of unique posts that had their slots changed",
            "example": 10,
            "type": "number"
          },
          "updatedSlots": {
            "description": "Updated slot information for all items after saving changes",
            "items": {
              "$ref": "#/components/schemas/UpdatedSlotInfoDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "ScheduleCampaignABTestConfigPublicV2Dto": {
        "properties": {
          "testDuration": {
            "description": "Seconds to run the test before picking a winner",
            "example": 3600,
            "type": "number"
          },
          "testSize": {
            "description": "Percentage of contacts in the test group (0-100)",
            "example": 30,
            "type": "number"
          },
          "testType": {
            "description": "What is being tested",
            "enum": [
              "emailContent",
              "subjectLine"
            ],
            "example": "subjectLine",
            "type": "string"
          },
          "variationCount": {
            "description": "Number of variations",
            "example": 2,
            "type": "number"
          },
          "variations": {
            "description": "A/B test variations",
            "example": [
              {
                "subject": "Subject A"
              },
              {
                "subject": "Subject B"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ScheduleCampaignABTestVariationPublicV2Dto"
            },
            "type": "array"
          },
          "winningCriteria": {
            "description": "How to pick the winner",
            "enum": [
              "openRate",
              "clickRate"
            ],
            "example": "openRate",
            "type": "string"
          }
        },
        "required": [
          "testType",
          "testDuration",
          "variationCount",
          "testSize",
          "winningCriteria",
          "variations"
        ],
        "type": "object"
      },
      "ScheduleCampaignABTestVariationPublicV2Dto": {
        "properties": {
          "documentId": {
            "description": "Template/document ID for this variation",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "subject": {
            "description": "Subject line for this variation",
            "example": "Subject A",
            "type": "string"
          }
        },
        "type": "object"
      },
      "ScheduleCampaignBatchConfigPublicV2Dto": {
        "properties": {
          "batchSize": {
            "description": "Number of contacts to process per batch",
            "example": 100,
            "type": "number"
          },
          "interval": {
            "description": "Delay between batches",
            "example": 2,
            "type": "number"
          },
          "intervalUnit": {
            "description": "Unit for the interval",
            "enum": [
              "minutes",
              "hours",
              "days"
            ],
            "example": "hours",
            "type": "string"
          },
          "skipDays": {
            "description": "Days to skip sending",
            "example": [
              "Sat",
              "Sun"
            ],
            "items": {
              "enum": [
                "Mon",
                "Tue",
                "Wed",
                "Thu",
                "Fri",
                "Sat",
                "Sun"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "windowEnd": {
            "description": "Latest time to send batches",
            "example": "05:00 PM",
            "type": "string"
          },
          "windowStart": {
            "description": "Earliest time to send batches",
            "example": "09:00 AM",
            "type": "string"
          }
        },
        "required": [
          "batchSize",
          "interval",
          "intervalUnit"
        ],
        "type": "object"
      },
      "ScheduleCampaignEmailMetaPublicV2Dto": {
        "properties": {
          "attachments": {
            "description": "Attachment download URLs",
            "example": [
              "https://example.com/file.pdf"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender display name",
            "example": "John Doe",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text shown in inbox after subject",
            "example": "Check out our latest news",
            "type": "string"
          },
          "replyToAddress": {
            "description": "Reply-to email address",
            "example": "reply@example.com",
            "type": "string"
          },
          "subject": {
            "description": "Email subject line",
            "example": "Our February Newsletter",
            "type": "string"
          }
        },
        "required": [
          "subject",
          "fromName",
          "fromEmail"
        ],
        "type": "object"
      },
      "ScheduleCampaignPublicV2BodyDto": {
        "properties": {
          "abTestConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignABTestConfigPublicV2Dto"
              }
            ],
            "description": "A/B test configuration. Can be combined with any scheduleType except rss.",
            "example": {
              "testDuration": 3600,
              "testSize": 30,
              "testType": "subjectLine",
              "variationCount": 2,
              "variations": [
                {
                  "subject": "Subject A"
                },
                {
                  "subject": "Subject B"
                }
              ],
              "winningCriteria": "openRate"
            }
          },
          "emailMeta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignEmailMetaPublicV2Dto"
              }
            ],
            "description": "Email subject, sender, and content metadata",
            "example": {
              "fromEmail": "john@example.com",
              "fromName": "John Doe",
              "subject": "Our February Newsletter"
            }
          },
          "recipients": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignRecipientsPublicV2Dto"
              }
            ],
            "description": "Who receives the email. Must provide either contactIds or filter.",
            "example": {
              "contactIds": [
                "contactId1",
                "contactId2"
              ],
              "type": "contact"
            }
          },
          "rssConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignRssConfigPublicV2Dto"
              }
            ],
            "description": "RSS feed configuration. Required when scheduleType is rss.",
            "example": {
              "name": "Weekly Digest",
              "repeatAfter": "every_day",
              "repeatAfterTime": "09:00 AM",
              "rssFeedURL": "https://example.com/rss"
            }
          },
          "scheduleConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignScheduleConfigPublicV2Dto"
              }
            ],
            "description": "Schedule configuration for immediate, scheduled, batch, and smart_send types. Required when scheduleType is not rss.",
            "example": {
              "sendAt": "2026-04-01 09:00 AM"
            }
          },
          "scheduleType": {
            "description": "How to schedule the campaign",
            "enum": [
              "immediate",
              "scheduled",
              "batch",
              "rss",
              "smart_send"
            ],
            "example": "immediate",
            "type": "string"
          },
          "sendDays": {
            "description": "Days of the week to allow sending. Used for batch and RSS scheduleTypes.",
            "example": [
              "Mon",
              "Tue",
              "Wed",
              "Thu",
              "Fri",
              "Sat",
              "Sun"
            ],
            "items": {
              "enum": [
                "Mon",
                "Tue",
                "Wed",
                "Thu",
                "Fri",
                "Sat",
                "Sun"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "timeZone": {
            "description": "IANA timezone",
            "example": "America/New_York",
            "type": "string"
          },
          "userId": {
            "description": "ID of the user performing this action",
            "example": "507f1f77bcf86cd799439099",
            "type": "string"
          },
          "userName": {
            "description": "Name of the user performing this action",
            "example": "John Doe",
            "type": "string"
          }
        },
        "required": [
          "scheduleType",
          "timeZone",
          "userId",
          "emailMeta",
          "recipients"
        ],
        "type": "object"
      },
      "ScheduleCampaignPublicV2ResponseDto": {
        "properties": {
          "campaignId": {
            "description": "Campaign ID",
            "example": "67f15c2ae99226d5bcccb8f3",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID for fetching campaign statistics",
            "example": "B67vyPIAfq3Bnk3FVioE",
            "nullable": true,
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of the request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "campaignId",
          "sourceId"
        ],
        "type": "object"
      },
      "ScheduleCampaignRecipientsPublicV2Dto": {
        "properties": {
          "contactIds": {
            "description": "Contact IDs to send to. Required when type is contact.",
            "example": [
              "contactId1",
              "contactId2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "freezeList": {
            "default": true,
            "description": "Freeze the contact list at schedule time — new matching contacts will not be added later",
            "example": true,
            "type": "boolean"
          },
          "segment": {
            "description": "Segment type for pre-built segments. Required when type is segment.",
            "enum": [
              "engaged_last_7_days",
              "engaged_last_30_days",
              "engaged_last_60_days",
              "engaged_last_5_campaigns",
              "unengaged_last_5_campaigns"
            ],
            "example": "engaged_last_7_days",
            "type": "string"
          },
          "tagIds": {
            "description": "Tag IDs to filter recipients by. Required when type is tag.",
            "example": [
              "tagId1",
              "tagId2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "type": {
            "description": "Recipient selection type",
            "enum": [
              "contact",
              "tag",
              "segment"
            ],
            "example": "contact",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "ScheduleCampaignResendPublicV2Dto": {
        "properties": {
          "enabled": {
            "description": "Enable resend to contacts who did not open",
            "example": false,
            "type": "boolean"
          },
          "subject": {
            "description": "Override subject line for the resend email",
            "example": "Did you miss this?",
            "type": "string"
          },
          "waitHours": {
            "description": "Hours to wait before resending. Required when enabled is true.",
            "example": 12,
            "type": "number"
          }
        },
        "type": "object"
      },
      "ScheduleCampaignRssConfigPublicV2Dto": {
        "properties": {
          "firstExecutionDate": {
            "description": "Override first execution date/time",
            "example": "2026-04-01 10:00:00",
            "type": "string"
          },
          "name": {
            "description": "RSS schedule name",
            "example": "Weekly Digest",
            "type": "string"
          },
          "repeatAfter": {
            "description": "How often to check the feed",
            "enum": [
              "every_day",
              "every_week",
              "every_month"
            ],
            "example": "every_day",
            "type": "string"
          },
          "repeatAfterTime": {
            "description": "Time of day to execute",
            "example": "09:00 AM",
            "type": "string"
          },
          "rssFeedLimit": {
            "description": "Max number of RSS items per email",
            "example": 10,
            "type": "number"
          },
          "rssFeedURL": {
            "description": "RSS feed URL",
            "example": "https://example.com/rss",
            "type": "string"
          },
          "startAtDay": {
            "description": "Day of week for weekly RSS",
            "enum": [
              "Monday",
              "Tuesday",
              "Wednesday",
              "Thursday",
              "Friday",
              "Saturday",
              "Sunday"
            ],
            "example": "Monday",
            "type": "string"
          },
          "startAtMonthDay": {
            "description": "Day of month for monthly RSS",
            "example": "15",
            "type": "string"
          }
        },
        "required": [
          "name",
          "rssFeedURL",
          "repeatAfter",
          "repeatAfterTime"
        ],
        "type": "object"
      },
      "ScheduleCampaignScheduleConfigPublicV2Dto": {
        "properties": {
          "batch": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignBatchConfigPublicV2Dto"
              }
            ],
            "description": "Batch/drip configuration. Required when scheduleType is batch. Ignored otherwise.",
            "example": {
              "batchSize": 100,
              "interval": 2,
              "intervalUnit": "hours"
            }
          },
          "emailPreferenceId": {
            "description": "Email preference type ID for categorizing this campaign",
            "example": "preference-type-id",
            "type": "string"
          },
          "resend": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignResendPublicV2Dto"
              }
            ],
            "description": "Auto-resend to contacts who did not open",
            "example": {
              "enabled": false
            }
          },
          "sendAt": {
            "description": "Date/time to send. Required for scheduled, batch, and smart_send. Ignored for immediate.",
            "example": "2026-04-01 09:00 AM",
            "type": "string"
          },
          "tracking": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleCampaignTrackingPublicV2Dto"
              }
            ],
            "description": "Click and UTM tracking options",
            "example": {
              "clickTracking": true,
              "utmTracking": false
            }
          }
        },
        "type": "object"
      },
      "ScheduleCampaignTrackingPublicV2Dto": {
        "properties": {
          "clickTracking": {
            "description": "Enable click tracking on links",
            "example": true,
            "type": "boolean"
          },
          "utmTracking": {
            "description": "Enable UTM parameters on links",
            "example": false,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ScheduleDto": {
        "properties": {
          "__v": {
            "type": "number"
          },
          "_id": {
            "type": "string"
          },
          "archived": {
            "type": "boolean"
          },
          "bulkActionVersion": {
            "type": "string"
          },
          "campaignType": {
            "type": "string"
          },
          "child": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "childCount": {
            "type": "number"
          },
          "createdAt": {
            "type": "string"
          },
          "deleted": {
            "type": "boolean"
          },
          "documentId": {
            "type": "string"
          },
          "downloadUrl": {
            "type": "string"
          },
          "enableResendToUnopened": {
            "type": "boolean"
          },
          "hasTracking": {
            "type": "boolean"
          },
          "hasUtmTracking": {
            "type": "boolean"
          },
          "id": {
            "type": "string"
          },
          "isPlainText": {
            "type": "boolean"
          },
          "locationId": {
            "type": "string"
          },
          "migrated": {
            "type": "boolean"
          },
          "name": {
            "example": "Untitled new campaign",
            "type": "string"
          },
          "parentId": {
            "type": "string"
          },
          "repeatAfter": {
            "type": "string"
          },
          "sendDays": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "status": {
            "type": "string"
          },
          "templateDataDownloadUrl": {
            "type": "string"
          },
          "templateId": {
            "type": "string"
          },
          "templateType": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "repeatAfter",
          "id",
          "parentId",
          "childCount",
          "campaignType",
          "bulkActionVersion",
          "_id",
          "status",
          "sendDays",
          "deleted",
          "migrated",
          "archived",
          "hasTracking",
          "isPlainText",
          "hasUtmTracking",
          "enableResendToUnopened",
          "locationId",
          "templateId",
          "templateType",
          "createdAt",
          "updatedAt",
          "__v",
          "documentId",
          "downloadUrl",
          "templateDataDownloadUrl",
          "child"
        ],
        "type": "object"
      },
      "ScheduleFetchSuccessfulDTO": {
        "properties": {
          "schedules": {
            "description": "The list of campaigns",
            "items": {
              "$ref": "#/components/schemas/ScheduleDto"
            },
            "type": "array"
          },
          "total": {
            "description": "The total number of campaigns",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "traceId": {
            "description": "Trace Id",
            "type": "string"
          }
        },
        "required": [
          "schedules",
          "total",
          "traceId"
        ],
        "type": "object"
      },
      "ScheduleIntervalDTO": {
        "properties": {
          "from": {
            "description": "Start time in HH:MM format (24-hour format)",
            "example": "09:00",
            "pattern": "^([01]?[0-9]|2[0-3]):[0-5][0-9]$",
            "type": "string"
          },
          "to": {
            "description": "End time in HH:MM format (24-hour format)",
            "example": "17:00",
            "pattern": "^([01]?[0-9]|2[0-3]):[0-5][0-9]$",
            "type": "string"
          }
        },
        "required": [
          "from",
          "to"
        ],
        "type": "object"
      },
      "ScheduleInvoiceScheduleDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "autoPayment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoPaymentDetailsDto"
              }
            ],
            "description": "auto-payment configuration"
          },
          "liveMode": {
            "type": "boolean"
          }
        },
        "required": [
          "altId",
          "altType",
          "liveMode"
        ],
        "type": "object"
      },
      "ScheduleInvoiceScheduleResponseDto": {
        "properties": {
          "_id": {
            "description": "Schedule Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "compiledTermsNotes": {
            "description": "Compiled terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoices": {
            "description": "List of invoices",
            "items": {
              "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
            },
            "type": "array"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "status": {
            "description": "Schedule Status",
            "example": "draft",
            "type": "object"
          },
          "termsNotes": {
            "description": "Terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "altId",
          "altType",
          "name",
          "invoices",
          "businessDetails",
          "currency",
          "contactDetails",
          "items",
          "total",
          "title",
          "termsNotes",
          "compiledTermsNotes",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "ScheduleObjectResponseDTO": {
        "properties": {
          "calendarIds": {
            "description": "Calendar IDs associated with the schedule",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "dateAdded": {
            "description": "ISO date string when the schedule was created",
            "example": "2023-01-15T10:30:00.000Z",
            "type": "string"
          },
          "dateUpdated": {
            "description": "ISO date string when the schedule was last updated",
            "example": "2023-01-20T14:45:00.000Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the schedule has been deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Unique identifier for the schedule",
            "example": "IkqiJlXJ7o9h61tCHHod",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID where this schedule applies",
            "example": "IkqiJlXJ7o9h61tCHHod",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for the schedule",
            "example": "Business Hours Schedule",
            "type": "string"
          },
          "rules": {
            "description": "Schedule rules defining when the schedule is active",
            "items": {
              "$ref": "#/components/schemas/ScheduleRuleDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone for the schedule (IANA timezone identifier)",
            "example": "America/New_York",
            "type": "string"
          },
          "userId": {
            "description": "User ID associated with the schedule",
            "example": "IkqiJlXJ7o9h61tCHHod",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "locationId",
          "rules",
          "timezone",
          "dateAdded",
          "dateUpdated",
          "userId",
          "deleted"
        ],
        "type": "object"
      },
      "ScheduleResponseDTO": {
        "properties": {
          "schedule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ScheduleObjectResponseDTO"
              }
            ],
            "description": "Schedule"
          }
        },
        "required": [
          "schedule"
        ],
        "type": "object"
      },
      "ScheduleRuleDTO": {
        "properties": {
          "date": {
            "description": "Specific date in YYYY-MM-DD format (only for date-type rules)",
            "example": "2023-04-15",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "day": {
            "description": "Day of week (only for weekday-type rules)",
            "enum": [
              "sunday",
              "monday",
              "tuesday",
              "wednesday",
              "thursday",
              "friday",
              "saturday"
            ],
            "example": "monday",
            "type": "string"
          },
          "intervals": {
            "description": "Time intervals for the rule (e.g., 9 AM to 5 PM)",
            "example": [
              {
                "from": "09:00",
                "to": "17:00"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ScheduleIntervalDTO"
            },
            "type": "array"
          },
          "type": {
            "description": "Type of schedule rule - weekday (recurring) or date (specific date)",
            "enum": [
              "wday",
              "date"
            ],
            "example": "wday",
            "type": "string"
          }
        },
        "required": [
          "type",
          "intervals"
        ],
        "type": "object"
      },
      "ScheduledPostDTO": {
        "properties": {
          "category": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CategoryInfoDTO"
              }
            ],
            "description": "The category associated with this post",
            "nullable": true
          },
          "currentVariation": {
            "description": "The index of the current variation being used for this post",
            "example": 0,
            "type": "number"
          },
          "errors": {
            "description": "List of errors associated with the queue item. Possible values: INVALID_USER_ID, PIXABAY_MEDIA.",
            "example": [
              "INVALID_USER_ID",
              "PIXABAY_MEDIA"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "order": {
            "description": "The order of the item in the queue.",
            "example": 1000,
            "type": "number"
          },
          "post": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPostFormattedSchema"
              }
            ],
            "description": "The formatted post data."
          },
          "primaryImage": {
            "description": "The primary image URL for the post.",
            "example": "https://example.com/images/post-image.png",
            "type": "string"
          },
          "queueId": {
            "description": "The ID of the queue this post belongs to",
            "example": "60af88475f1b2c001f5d5f4a",
            "type": "string"
          },
          "queueItemId": {
            "description": "The unique identifier of the queue item.",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "scheduledDateTime": {
            "description": "The date and time the post is scheduled to be published",
            "example": "2023-10-15T10:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "timezone": {
            "description": "The timezone in which the post is scheduled",
            "example": "America/New_York",
            "type": "string"
          },
          "variations": {
            "description": "A list of content variations for the post.",
            "items": {
              "$ref": "#/components/schemas/VariationDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "SchedulesDTO": {
        "properties": {
          "timeOffset": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "SearchBodyV2DTO": {
        "properties": {},
        "type": "object"
      },
      "SearchEmployeeResponseDTO": {
        "properties": {
          "agents": {
            "description": "List of agents matching the search criteria.",
            "items": {
              "$ref": "#/components/schemas/EmployeeListItemDTO"
            },
            "type": "array"
          },
          "count": {
            "description": "Number of agents in the current response (filtered/paginated count).",
            "example": 25,
            "type": "number"
          },
          "totalCount": {
            "description": "Total number of agents in the location (unfiltered count).",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "agents",
          "totalCount",
          "count"
        ],
        "type": "object"
      },
      "SearchMetaResponseSchema": {
        "properties": {
          "currentPage": {
            "description": "Current page number",
            "example": 2,
            "type": "number"
          },
          "nextPage": {
            "description": "Next page number",
            "example": 3,
            "type": "number"
          },
          "nextPageUrl": {
            "description": "URL to retrieve the next page of results",
            "example": "http://localhost:5066/opportunities/search?q=&location_id=ve9EPM428h8vShlRW1KT&pipeline_id=&pipeline_stage_id=&status=&assigned_to+=&campaignId=&id=&order=&endDate=&startAfter=1625203104328&startAfterId=yWQobCRIhRguQtD2llvk&date=&limit=1&country=&page=1",
            "type": "string"
          },
          "prevPage": {
            "description": "Previous page number",
            "example": 1,
            "type": "number"
          },
          "startAfter": {
            "description": "Cursor timestamp to use for pagination (startAfter param)",
            "example": 1625203104328,
            "type": "number"
          },
          "startAfterId": {
            "description": "Cursor id to use for pagination (startAfterId param)",
            "example": "yWQobCRIhRguQtD2llvk",
            "type": "string"
          },
          "total": {
            "description": "Total number of opportunities matching the query",
            "example": 1,
            "type": "number"
          }
        },
        "type": "object"
      },
      "SearchOpportunitiesContactResponseSchema": {
        "properties": {
          "companyName": {
            "description": "Company name associated with the contact",
            "example": "Tesla Inc",
            "type": "string"
          },
          "email": {
            "description": "Email address of the contact",
            "example": "john@example.com",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the contact",
            "example": "byMEV0NQinDhq8ZfiOi2",
            "type": "string"
          },
          "name": {
            "description": "Full name of the contact",
            "example": "John Deo",
            "type": "string"
          },
          "phone": {
            "description": "Phone number of the contact",
            "example": "+1202-555-0107",
            "type": "string"
          },
          "tags": {
            "description": "Tags associated with the contact",
            "example": [
              "lead",
              "vip"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "SearchOpportunitiesResponseSchema": {
        "properties": {
          "assignedTo": {
            "description": "Identifier of the user the opportunity is assigned to",
            "example": "zT46WSCPbudrq4zhWMk6",
            "type": "string"
          },
          "calendarEvents": {
            "description": "Calendar events attached to the opportunity",
            "example": [],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "contact": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SearchOpportunitiesContactResponseSchema"
              }
            ],
            "description": "Contact details associated with the opportunity",
            "example": {}
          },
          "contactId": {
            "description": "Identifier of the contact linked to the opportunity",
            "example": "zT46WSCPbudrq4zhWMk6",
            "type": "string"
          },
          "createdAt": {
            "description": "ISO 8601 timestamp when the opportunity was created",
            "example": "2021-08-03T04:55:17.355Z",
            "type": "string"
          },
          "customFields": {
            "description": "Custom fields associated with the opportunity",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/CustomFieldResponseSchema"
            },
            "type": "array"
          },
          "effectiveProbability": {
            "description": "Effective win probability after stage and forecast adjustments (0–100)",
            "example": 40,
            "type": "number"
          },
          "externalObjectId": {
            "description": "External object identifier for integrations",
            "example": "ext_obj_12345",
            "type": "string"
          },
          "followers": {
            "description": "User IDs following this opportunity",
            "example": [
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "forecastDaysSlipped": {
            "description": "Total days the close date has slipped",
            "example": 19,
            "type": "number"
          },
          "forecastExpectedCloseDate": {
            "description": "Expected close date for the forecast (YYYY-MM-DD)",
            "example": "2026-05-20",
            "type": "string"
          },
          "forecastLastSlippedAt": {
            "description": "ISO 8601 timestamp of the last close-date slip",
            "example": "2026-05-22T10:30:00.000Z",
            "type": "string"
          },
          "forecastOriginalCloseDate": {
            "description": "Original forecast close date before any slippage (YYYY-MM-DD)",
            "example": "2026-05-01",
            "type": "string"
          },
          "forecastProbability": {
            "description": "Forecast win probability percentage (0–100)",
            "example": 20,
            "type": "number"
          },
          "forecastSlippageCount": {
            "description": "Number of times the close date has slipped",
            "example": 2,
            "type": "number"
          },
          "id": {
            "description": "Unique identifier of the opportunity",
            "example": "yWQobCRIhRguQtD2llvk",
            "type": "string"
          },
          "indexVersion": {
            "description": "Index version of the opportunity record",
            "example": 1,
            "type": "string"
          },
          "lastActionDate": {
            "description": "ISO 8601 timestamp of the last action on the opportunity",
            "example": "2021-08-03T04:55:17.355Z",
            "type": "string"
          },
          "lastStageChangeAt": {
            "description": "ISO 8601 timestamp of the last stage change",
            "example": "2021-08-03T04:55:17.355Z",
            "type": "string"
          },
          "lastStatusChangeAt": {
            "description": "ISO 8601 timestamp of the last status change",
            "example": "2021-08-03T04:55:17.355Z",
            "type": "string"
          },
          "locationId": {
            "description": "Identifier of the location (sub-account) the opportunity belongs to",
            "example": "zT46WSCPbudrq4zhW",
            "type": "string"
          },
          "lostReasonId": {
            "description": "Identifier of the lost reason if the opportunity was marked lost",
            "example": "zT46WSCPbudrq4zhWMk6",
            "type": "string"
          },
          "monetaryValue": {
            "description": "Monetary value of the opportunity",
            "example": 500,
            "type": "number"
          },
          "name": {
            "description": "Name of the opportunity",
            "example": "testing",
            "type": "string"
          },
          "notes": {
            "description": "Notes attached to the opportunity",
            "example": [],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "pipelineId": {
            "description": "Identifier of the pipeline the opportunity belongs to",
            "example": "VDm7RPYC2GLUvdpKmBfC",
            "type": "string"
          },
          "pipelineStageId": {
            "description": "Identifier of the pipeline stage the opportunity is in",
            "example": "e93ba61a-53b3-45e7-985a-c7732dbcdb69",
            "type": "string"
          },
          "source": {
            "description": "Source of the opportunity",
            "example": "",
            "type": "string"
          },
          "status": {
            "description": "Current status of the opportunity",
            "example": "open",
            "type": "string"
          },
          "tasks": {
            "description": "Tasks attached to the opportunity",
            "example": [],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "ISO 8601 timestamp when the opportunity was last updated",
            "example": "2021-08-03T04:55:17.355Z",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SearchPostDTO": {
        "properties": {
          "accounts": {
            "description": "List of account Ids separated by comma as a string",
            "example": "660a83fc29deacac50033e2b_omaDY3RbWtTP511e808O_17841465964543589, 38bF83fc29deacac50033e2b_omaDY3RbWtr3P11e808O_17841465964543998",
            "type": "string"
          },
          "fromDate": {
            "description": "From Date",
            "example": "2024-01-22T05:32:49.463Z",
            "type": "string"
          },
          "includeUsers": {
            "description": "Include User Data",
            "example": "true",
            "type": "string"
          },
          "limit": {
            "default": "10",
            "description": "Maximum number of records to return",
            "example": "10",
            "type": "string"
          },
          "postType": {
            "description": "Post Type must be one of the following values: - post, story, reel",
            "example": "post",
            "type": "object"
          },
          "skip": {
            "default": "0",
            "description": "Number of records to skip for pagination",
            "example": "0",
            "type": "string"
          },
          "toDate": {
            "description": "To Date",
            "example": "2024-03-20T05:32:49.463Z",
            "type": "string"
          },
          "type": {
            "default": "all",
            "description": "type must be one of the following values: recent, all, scheduled, draft, failed, in_review, published, in_progress, pending and deleted",
            "example": "all",
            "type": "string"
          }
        },
        "required": [
          "skip",
          "limit",
          "fromDate",
          "toDate",
          "includeUsers"
        ],
        "type": "object"
      },
      "SearchRecordResponseDTO": {
        "properties": {
          "records": {
            "description": "Records",
            "items": {
              "$ref": "#/components/schemas/RecordResponseDTO"
            },
            "type": "array"
          },
          "total": {
            "description": "Total Number of records",
            "example": 20,
            "type": "number"
          }
        },
        "required": [
          "total"
        ],
        "type": "object"
      },
      "SearchRecordsBody": {
        "properties": {
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "page": {
            "description": "Page",
            "example": 1,
            "type": "number"
          },
          "pageLimit": {
            "description": "Page Limit",
            "example": 10,
            "type": "number"
          },
          "query": {
            "description": "Pass this query parameter to search using your searchable properties. For example, if you have a custom object called “Pets” and have configured “name” as a searchable property, you can pass name:Buddy to search for pets with the name “Buddy.”",
            "example": "Buddy",
            "type": "string"
          },
          "searchAfter": {
            "example": [
              "sx6wyHhbFdRXh302Lunr",
              "sx6wyHhbFdRXh302Lunr"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId",
          "page",
          "pageLimit",
          "query",
          "searchAfter"
        ],
        "type": "object"
      },
      "SearchUserSuccessfulResponseDto": {
        "properties": {
          "count": {
            "description": "Total number of users matching the search criteria",
            "example": 1231,
            "type": "number"
          },
          "users": {
            "description": "List of users matching the search criteria",
            "example": [
              {
                "email": "john@example.com",
                "firstName": "John",
                "id": "0IHuJvc2ofPAAA8GzTRi",
                "lastName": "Deo"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/UserSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "SelectedAttributeDTO": {
        "properties": {
          "categoryName": {
            "description": "Category name",
            "example": "Location",
            "type": "string"
          },
          "facet": {
            "description": "Facet identifier",
            "example": "urn:li:adTargetingFacet:locations",
            "type": "string"
          },
          "name": {
            "description": "Display name",
            "example": "United States",
            "type": "string"
          },
          "urn": {
            "description": "Targeting attribute URN",
            "example": "urn:li:geo:103644278",
            "type": "string"
          }
        },
        "required": [
          "urn",
          "name",
          "categoryName",
          "facet"
        ],
        "type": "object"
      },
      "SendConversationResponseDto": {
        "properties": {
          "conversations": {
            "description": "The list of all conversations found for the given query",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/ConversationSchema"
            },
            "type": "array"
          },
          "total": {
            "description": "Total Number of results found for the given query",
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "conversations",
          "total"
        ],
        "type": "object"
      },
      "SendDocumentDto": {
        "properties": {
          "ccRecipients": {
            "description": "CC Recipient",
            "example": [
              {
                "contactName": "Jim Anton",
                "email": "jim@example.com",
                "firstName": "Jim",
                "id": "u240JcS0E5qE0ziHnwMm",
                "imageUrl": "",
                "lastName": "Anton"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/CCRecipientItem"
            },
            "type": "array"
          },
          "documentId": {
            "description": "Document Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "documentName": {
            "description": "Document Name",
            "example": "new Document",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "medium": {
            "description": "Medium to be used for sending the document",
            "enum": [
              "link",
              "email"
            ],
            "example": "email",
            "type": "string"
          },
          "notificationSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationSettingsDto"
              }
            ],
            "example": {
              "receive": {
                "subject": "",
                "templateId": ""
              },
              "sender": {
                "fromEmail": "",
                "fromName": ""
              }
            }
          },
          "sentBy": {
            "description": "Sent ByUser Id",
            "example": "1234567890",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "documentId",
          "sentBy"
        ],
        "type": "object"
      },
      "SendDocumentFromPublicApiBodyDto": {
        "properties": {
          "contactId": {
            "description": "Contact Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "opportunityId": {
            "description": "Opportunity Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "sendDocument": {
            "description": "Send Document",
            "example": true,
            "type": "boolean"
          },
          "templateId": {
            "description": "Template Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          },
          "userId": {
            "description": "User Id",
            "example": "hTlkh7t8gujsahgg93",
            "type": "string"
          }
        },
        "required": [
          "templateId",
          "userId",
          "locationId",
          "contactId"
        ],
        "type": "object"
      },
      "SendDocumentResponseDto": {
        "properties": {
          "links": {
            "description": "Links for all recipients",
            "items": {
              "$ref": "#/components/schemas/ProposalEstimateLinksDto"
            },
            "type": "array"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "links"
        ],
        "type": "object"
      },
      "SendEstimateDto": {
        "properties": {
          "action": {
            "enum": [
              "sms_and_email",
              "send_manually",
              "email",
              "sms"
            ],
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "estimateName": {
            "description": "estimate name",
            "example": "Estimate",
            "type": "string"
          },
          "liveMode": {
            "description": "livemode for estimate",
            "example": true,
            "type": "boolean"
          },
          "sentFrom": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoiceSettingsSenderConfigurationDto"
              }
            ],
            "description": "sender details for invoice, valid only if invoice is not sent manually"
          },
          "userId": {
            "description": "Please ensure that the UserId corresponds to an authorized personnel, either by an employee ID or agency ID, to access this location. This account will serve as the primary channel for all future communications and updates.",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "action",
          "liveMode",
          "userId"
        ],
        "type": "object"
      },
      "SendInvoiceDto": {
        "properties": {
          "action": {
            "enum": [
              "sms_and_email",
              "send_manually",
              "email",
              "sms"
            ],
            "type": "string"
          },
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "autoPayment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoPaymentDetailsDto"
              }
            ],
            "description": "auto-payment configuration"
          },
          "liveMode": {
            "type": "boolean"
          },
          "sentFrom": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoiceSettingsSenderConfigurationDto"
              }
            ],
            "description": "sender details for invoice, valid only if invoice is not sent manually"
          },
          "userId": {
            "description": "Please ensure that the UserId corresponds to an authorized personnel, either by an employee ID or agency ID, to access this location. This account will serve as the primary channel for all future communications and updates.",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "userId",
          "action",
          "liveMode"
        ],
        "type": "object"
      },
      "SendInvoicesResponseDto": {
        "properties": {
          "emailData": {
            "type": "object"
          },
          "invoice": {
            "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
          },
          "smsData": {
            "type": "object"
          }
        },
        "required": [
          "invoice",
          "smsData",
          "emailData"
        ],
        "type": "object"
      },
      "SendMessageBodyDto": {
        "properties": {
          "appointmentId": {
            "description": "ID of the associated appointment",
            "example": "appt123",
            "type": "string"
          },
          "attachments": {
            "description": "Array of attachment URLs",
            "example": [
              "https://storage.com/file1.pdf",
              "https://storage.com/file2.jpg"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "contactId": {
            "description": "ID of the contact receiving the message",
            "example": "abc123def456",
            "type": "string"
          },
          "conversationProviderId": {
            "description": "ID of conversation provider",
            "example": "provider123",
            "type": "string"
          },
          "customSubtypeId": {
            "description": "Custom subtype ID for email unsubscription preferences. Only applies to email messages.",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "emailBcc": {
            "description": "Array of BCC email addresses",
            "example": [
              "bcc1@example.com",
              "bcc2@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "emailCc": {
            "description": "Array of CC email addresses",
            "example": [
              "cc1@example.com",
              "cc2@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "emailFrom": {
            "description": "Email address to send from",
            "example": "sender@example.com",
            "type": "string"
          },
          "emailReplyMode": {
            "description": "Mode for email replies",
            "enum": [
              "reply",
              "reply_all"
            ],
            "example": "reply_all",
            "type": "string"
          },
          "emailTo": {
            "description": "Email address to send to, if different from contact's primary email. This should be a valid email address associated with the contact.",
            "example": "recipient@example.com",
            "type": "string"
          },
          "forward": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ForwardConfigDto"
              }
            ],
            "description": "Forwarding configuration for emails",
            "example": {
              "emailMessageId": "rnGyqh2F6uBrIkfhFo9A",
              "forwardWholeThread": false,
              "isForwarded": true,
              "messageId": "t22c6DQcTDf3MjRhwf77",
              "recipientContactId": "DEF56h2F6uBrIkfXYacd",
              "toEmail": "forward@example.com"
            }
          },
          "fromNumber": {
            "description": "Phone number used as the sender number for outbound messages",
            "example": "+1499499299",
            "type": "string"
          },
          "html": {
            "description": "HTML content of the message",
            "example": "<p>Hello World</p>",
            "type": "string"
          },
          "message": {
            "description": "Text content of the message",
            "example": "Hello, how can I help you today?",
            "type": "string"
          },
          "optimizationPeriod": {
            "description": "Optimization period in hours (24h, 48h, or 72h)",
            "enum": [
              "24h",
              "48h",
              "72h"
            ],
            "example": "24h",
            "type": "string"
          },
          "replyMessageId": {
            "description": "ID of message being replied to",
            "example": "msg123",
            "type": "string"
          },
          "scheduledTimestamp": {
            "description": "UTC Timestamp (in seconds) at which the message should be scheduled",
            "example": 1669287863,
            "type": "number"
          },
          "status": {
            "description": "Message status",
            "enum": [
              "delivered",
              "failed",
              "pending",
              "read"
            ],
            "example": "delivered",
            "type": "string"
          },
          "subType": {
            "description": "Type of message being sent",
            "example": "Email",
            "type": "object"
          },
          "subject": {
            "description": "Subject line for email messages",
            "example": "Important Update",
            "type": "string"
          },
          "templateId": {
            "description": "ID of message template",
            "example": "template123",
            "type": "string"
          },
          "threadId": {
            "description": "ID of message thread. For email messages, this is the message ID that contains multiple email messages in the thread",
            "example": "thread123",
            "type": "string"
          },
          "toNumber": {
            "description": "Recipient phone number for outbound messages",
            "example": "+1439499299",
            "type": "string"
          },
          "type": {
            "description": "Type of message being sent",
            "enum": [
              "SMS",
              "RCS",
              "Email",
              "WhatsApp",
              "IG",
              "FB",
              "Custom",
              "Live_Chat",
              "TIKTOK"
            ],
            "example": "Email",
            "type": "string"
          },
          "usesNativeSchedulingAi": {
            "description": "Whether the scheduled email uses native AI for the email scheduling ",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "type",
          "subType",
          "contactId",
          "status"
        ],
        "type": "object"
      },
      "SendMessageResponseDto": {
        "properties": {
          "conversationId": {
            "description": "Conversation ID.",
            "example": "ABC12h2F6uBrIkfXYazb",
            "type": "string"
          },
          "emailMessageId": {
            "description": "This contains the email message ID (only for Email type). Use this ID to send inbound replies through this API to create a threaded email.",
            "example": "rnGyqh2F6uBrIkfhFo9A",
            "type": "string"
          },
          "forwardData": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ForwardResponseDto"
              }
            ],
            "description": "Optional metadata for forwarded email",
            "example": {
              "emailMessageId": "rnGyqh2F6uBrIkfhFo9A",
              "forwardToEmail": "recipient@example.com",
              "forwardWholeThread": false,
              "messageId": "t22c6DQcTDf3MjRhwf77",
              "recipientContactId": "DEF56h2F6uBrIkfXYacd"
            }
          },
          "messageId": {
            "description": "This is the main Message ID",
            "example": "t22c6DQcTDf3MjRhwf77",
            "type": "string"
          },
          "messageIds": {
            "description": "When sending via the GMB channel, we will be returning list of `messageIds` instead of single `messageId`.",
            "example": [
              "t22c6DQcTDf3MjRhwf77"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "msg": {
            "description": "Additional response message when sending a workflow message",
            "example": "Message queued successfully.",
            "type": "string"
          },
          "status": {
            "description": "Message status",
            "enum": [
              "delivered",
              "failed",
              "pending",
              "read"
            ],
            "example": "delivered",
            "type": "string"
          }
        },
        "required": [
          "conversationId",
          "messageId",
          "status"
        ],
        "type": "object"
      },
      "SendPostCallNotificationDTO": {
        "properties": {
          "admins": {
            "description": "Enables post-call notifications to all admin users in the location. Default: true",
            "example": true,
            "type": "boolean"
          },
          "allUsers": {
            "description": "Enables post-call notifications to all users in the location. Default: false",
            "example": false,
            "type": "boolean"
          },
          "contactAssignedUser": {
            "description": "Enables post-call notifications to the user assigned to the contact. Default: false",
            "example": false,
            "type": "boolean"
          },
          "customEmails": {
            "description": "Array of custom email addresses to receive post-call notifications. Default: []",
            "example": [
              "manager@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "specificUsers": {
            "description": "Array of specific user IDs to receive post-call notifications. Default: []",
            "example": [
              "user_507f1f77bcf86cd799439011"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "admins",
          "allUsers",
          "contactAssignedUser",
          "specificUsers",
          "customEmails"
        ],
        "type": "object"
      },
      "SendPostCallNotificationSchema": {
        "properties": {
          "admins": {
            "description": "Send notifications to admins",
            "example": true,
            "type": "boolean"
          },
          "allUsers": {
            "description": "Send notifications to all users",
            "example": false,
            "type": "boolean"
          },
          "contactAssignedUser": {
            "description": "Send notifications to contact assigned user",
            "example": false,
            "type": "boolean"
          },
          "customEmails": {
            "description": "Custom email addresses to notify",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "specificUsers": {
            "description": "Specific user IDs to notify",
            "example": [],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "SendReviewReplyDto": {
        "properties": {
          "conversationId": {
            "description": "Conversation ID (must have reviewId)",
            "example": "conv123",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "loc123",
            "type": "string"
          },
          "message": {
            "description": "Review reply message text",
            "example": "Thank you for your review!",
            "type": "string"
          }
        },
        "required": [
          "conversationId",
          "locationId",
          "message"
        ],
        "type": "object"
      },
      "SendTemplateResponseDto": {
        "properties": {
          "links": {
            "description": "Links for all recipients",
            "items": {
              "$ref": "#/components/schemas/ProposalEstimateLinksDto"
            },
            "type": "array"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "links"
        ],
        "type": "object"
      },
      "SentTo": {
        "properties": {},
        "type": "object"
      },
      "SentToDto": {
        "properties": {
          "email": {
            "description": "Email Address",
            "example": [
              "alex@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "emailBcc": {
            "description": "bcc to be kept in any sent out emails",
            "example": [
              "alex@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "emailCc": {
            "description": "cc to be kept in any sent out emails",
            "example": [
              "alex@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "phoneNo": {
            "description": "Contact Phone Number",
            "example": [
              "+1-214-559-6993"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "email"
        ],
        "type": "object"
      },
      "SepaDirectDebitDTO": {
        "properties": {
          "bank_code": {
            "type": "string"
          },
          "branch_code": {
            "type": "string"
          },
          "last4": {
            "type": "string"
          }
        },
        "required": [
          "bank_code",
          "last4",
          "branch_code"
        ],
        "type": "object"
      },
      "ServiceAddOnDTO": {
        "properties": {
          "duration": {
            "description": "Add-on duration (in minutes)",
            "example": 30,
            "type": "number"
          },
          "id": {
            "description": "Add-on ID",
            "example": "6985f6dfacf123513228d384",
            "type": "string"
          },
          "quantity": {
            "description": "Add-on quantity",
            "example": 2,
            "type": "number"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "ServiceAddOnResponseDTO": {
        "properties": {
          "id": {
            "description": "Add-on ID",
            "example": "6985f6dfacf123513228d384",
            "type": "string"
          },
          "quantity": {
            "description": "Add-on quantity",
            "example": 2,
            "type": "number"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "ServiceBookingQueryDTO": {
        "properties": {
          "overrideAvailability": {
            "default": false,
            "description": "If true the time slot validation would be avoided for any booking creation/update (even the skipSchedulingNotice)",
            "example": false,
            "type": "boolean"
          },
          "skipSchedulingNotice": {
            "default": false,
            "description": "If set to true, the minimum scheduling notice and date range would be ignored",
            "example": false,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ServiceBookingResponseDTO": {
        "properties": {
          "bookingId": {
            "description": "Booking ID",
            "example": "7NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "contactId": {
            "description": "Contact ID",
            "example": "9NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "createdBy": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedOrUpdatedBy"
              }
            ],
            "description": "Booking booked by metadata"
          },
          "dateAdded": {
            "description": "Date Added",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "string"
          },
          "dateUpdated": {
            "description": "Date Updated",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "string"
          },
          "deleted": {
            "description": "Tells if the booking is deleted",
            "example": false,
            "type": "boolean"
          },
          "endTime": {
            "description": "End Time",
            "example": "2023-09-25T16:30:00+05:30",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "meetingLocation": {
            "description": "Meeting Location (If service location is an ask the booker, then the meeting location is used for the booking)",
            "example": "123 Main St, Anytown, USA",
            "type": "string"
          },
          "serviceLocationId": {
            "description": "Service Location ID",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          },
          "services": {
            "description": "Services",
            "items": {
              "$ref": "#/components/schemas/ServiceDTO"
            },
            "type": "array"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "string"
          },
          "status": {
            "description": "Status",
            "example": "confirmed",
            "type": "string"
          },
          "timezone": {
            "description": "Timezone",
            "example": "America/New_York",
            "type": "string"
          },
          "title": {
            "description": "Service Booking Title",
            "example": "John Doe - Hair Styling",
            "type": "string"
          }
        },
        "required": [
          "bookingId",
          "locationId",
          "contactId",
          "serviceLocationId",
          "title",
          "startTime",
          "endTime",
          "services",
          "timezone",
          "status",
          "deleted",
          "dateAdded",
          "dateUpdated",
          "createdBy"
        ],
        "type": "object"
      },
      "ServiceBookingsListResponseDTO": {
        "properties": {
          "bookings": {
            "description": "Service Bookings",
            "items": {
              "$ref": "#/components/schemas/ServiceBookingResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "bookings"
        ],
        "type": "object"
      },
      "ServiceDTO": {
        "properties": {
          "id": {
            "description": "Service ID",
            "example": "68e5f6dfacf123513228d384",
            "type": "string"
          },
          "serviceAddOns": {
            "description": "Service Add-ons",
            "items": {
              "$ref": "#/components/schemas/ServiceAddOnResponseDTO"
            },
            "type": "array"
          },
          "serviceCategoryId": {
            "description": "Service Category ID",
            "example": "3c4d5e6f7890123456789abc",
            "type": "string"
          },
          "serviceEndTime": {
            "description": "Service End Time",
            "example": "2023-09-25T16:30:00+05:30",
            "type": "string"
          },
          "serviceResources": {
            "description": "Service Resources",
            "items": {
              "$ref": "#/components/schemas/ServiceResourceDTO"
            },
            "type": "array"
          },
          "serviceStaffId": {
            "description": "Service Staff ID",
            "example": "7NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "serviceStartTime": {
            "description": "Service Start Time",
            "example": "2023-09-25T16:00:00+05:30",
            "type": "string"
          }
        },
        "required": [
          "id",
          "serviceCategoryId",
          "serviceStaffId",
          "serviceStartTime",
          "serviceEndTime"
        ],
        "type": "object"
      },
      "ServiceLocationListResponseDTO": {
        "properties": {
          "serviceLocations": {
            "description": "List of service locations",
            "items": {
              "$ref": "#/components/schemas/ServiceLocationResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "serviceLocations"
        ],
        "type": "object"
      },
      "ServiceLocationResponseDTO": {
        "properties": {
          "address": {
            "description": "Use a full street address when locationType is offline. Use a user-facing label when locationType is ask_booker.",
            "example": "456 Market Street, Suite 200, San Francisco, CA 94105",
            "type": "string"
          },
          "coverImage": {
            "description": "URL of the cover image displayed for this location",
            "example": "https://storage.example.com/locations/downtown-wellness-center/cover.jpg",
            "type": "string"
          },
          "id": {
            "description": "Service Location ID",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          },
          "isActive": {
            "default": true,
            "description": "Whether location is active",
            "example": true,
            "type": "boolean"
          },
          "isPrivate": {
            "default": false,
            "description": "Whether location is private (not shown publicly)",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "locationType": {
            "description": "Location type",
            "enum": [
              "offline",
              "ask_booker"
            ],
            "example": "offline",
            "type": "string"
          },
          "name": {
            "description": "Location name",
            "example": "Downtown Wellness Center",
            "type": "string"
          },
          "phone": {
            "description": "Contact phone number for the service location",
            "example": "+1-415-555-0198",
            "type": "string"
          },
          "slug": {
            "description": "Unique URL-friendly identifier for the service location",
            "example": "downtown-wellness-center",
            "type": "string"
          }
        },
        "required": [
          "id",
          "locationId",
          "name",
          "slug"
        ],
        "type": "object"
      },
      "ServiceResourceDTO": {
        "properties": {
          "id": {
            "description": "Resource ID",
            "example": "6985f6dfacf123513228d384",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "ServiceResponseDTO": {
        "properties": {
          "coverImage": {
            "description": "Service cover image URL",
            "example": "https://example.com/cover.jpg",
            "type": "string"
          },
          "description": {
            "description": "Service description",
            "example": "Full hair styling session",
            "type": "string"
          },
          "eventColor": {
            "description": "Service event color (hex)",
            "example": "#66C61C",
            "type": "string"
          },
          "formId": {
            "description": "Custom form ID (will be used to display the custom form on the booking page, if only one service is selected)",
            "example": "65e5f6dfacf123513228d390",
            "type": "string"
          },
          "id": {
            "description": "Service ID",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          },
          "isPrivate": {
            "default": false,
            "description": "Whether service is private (not shown publicly)",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "0007BWpSzSwfiuSl0tR2",
            "type": "string"
          },
          "name": {
            "description": "Service name",
            "example": "Hair Styling",
            "type": "string"
          },
          "payment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentDTO"
              }
            ],
            "description": "Payment details"
          },
          "postBuffer": {
            "description": "Post-buffer: Additional time that can be added after an appointment, allowing for extra time to wrap up",
            "example": 15,
            "type": "number"
          },
          "postBufferUnit": {
            "description": "Post-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "example": 10,
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Pre-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "serviceCategoryId": {
            "description": "Service category ID",
            "example": "65e5f6dfacf123513228d381",
            "type": "string"
          },
          "serviceDuration": {
            "description": "This controls the duration of the appointment",
            "example": 60,
            "type": "number"
          },
          "serviceDurationUnit": {
            "description": "Duration unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "slug": {
            "description": "Unique URL-friendly identifier",
            "example": "hair-styling",
            "type": "string"
          },
          "staff": {
            "description": "Assigned staff members",
            "items": {
              "$ref": "#/components/schemas/StaffDTO"
            },
            "type": "array"
          },
          "variations": {
            "description": "Service variations",
            "items": {
              "$ref": "#/components/schemas/ServiceVariationDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "locationId",
          "name"
        ],
        "type": "object"
      },
      "ServiceResponseWrapperDTO": {
        "properties": {
          "service": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ServiceResponseDTO"
              }
            ],
            "description": "Service details"
          }
        },
        "required": [
          "service"
        ],
        "type": "object"
      },
      "ServiceVariationDTO": {
        "properties": {
          "id": {
            "description": "Variation ID",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          },
          "name": {
            "description": "Variation name",
            "example": "Standard Haircut",
            "type": "string"
          },
          "payment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentDTO"
              }
            ],
            "description": "Payment details"
          },
          "postBuffer": {
            "description": "Post-buffer: Additional time that can be added after an appointment, allowing for extra time to wrap up",
            "example": 15,
            "type": "number"
          },
          "postBufferUnit": {
            "description": "Post-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "example": 10,
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Pre-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "serviceDuration": {
            "description": "This controls the duration of the appointment",
            "example": 30,
            "type": "number"
          },
          "serviceDurationUnit": {
            "description": "Duration unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name"
        ],
        "type": "object"
      },
      "ServicesListResponseDTO": {
        "properties": {
          "services": {
            "description": "List of services",
            "items": {
              "$ref": "#/components/schemas/ServiceResponseDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "services"
        ],
        "type": "object"
      },
      "SetAccountsDTO": {
        "properties": {
          "accountIds": {
            "description": "Account Ids",
            "example": [
              "aF3KhyL8JIuBwzK3m7Ly_iVrVJ2uoXNF0wzcBzgl5_12554616564525983496"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "approver": {
            "description": "Approver User Id",
            "example": "o6241QsiRwUIJHyjuhos",
            "type": "string"
          },
          "csvFileType": {
            "description": "CSV file type - determines the format of the CSV file being imported",
            "enum": [
              "basic",
              "advance"
            ],
            "example": "basic",
            "type": "string"
          },
          "fileName": {
            "description": "Name of file",
            "example": "test.csv",
            "type": "string"
          },
          "filePath": {
            "description": "File path",
            "example": "omaDY3RbWtTP511e/social-import/d23d68c2-82c0-1db6e2.csv",
            "type": "string"
          },
          "rowsCount": {
            "description": "Entries Count. rowsCount must be between 1 and number of posts in CSV",
            "example": 1,
            "type": "number"
          },
          "userId": {
            "description": "User ID",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          }
        },
        "required": [
          "accountIds",
          "filePath",
          "rowsCount",
          "fileName",
          "userId"
        ],
        "type": "object"
      },
      "SetAccountsResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Accounts Set Successfully",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SetAccountsResultSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "SetAccountsResultSchema": {
        "properties": {
          "csvId": {
            "description": "CSV Id",
            "example": "6953a0be84b7ff10f6025d53",
            "type": "string"
          }
        },
        "required": [
          "csvId"
        ],
        "type": "object"
      },
      "SetAccountsUnprocessableDTO": {
        "properties": {
          "error": {
            "description": "Error type",
            "example": "Unprocessable Entity",
            "type": "string"
          },
          "message": {
            "description": "Validation error messages",
            "example": [
              "accountIds should not be null or undefined",
              "accountIds should not be empty",
              "accountIds must be an array",
              "Invalid account id in accountIds list"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "description": "Exception name",
            "example": "UnprocessableEntityException",
            "type": "string"
          },
          "options": {
            "description": "Options",
            "example": {},
            "type": "object"
          },
          "status": {
            "description": "HTTP Status",
            "example": 422,
            "type": "number"
          },
          "statusCode": {
            "description": "HTTP Status Code",
            "example": 422,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID for debugging",
            "example": "22b1c520-258a-4473-b378-a97ddfd9d1bc",
            "type": "string"
          }
        },
        "required": [
          "status",
          "message",
          "name",
          "error",
          "statusCode"
        ],
        "type": "object"
      },
      "SetDefaultBrandVoicePublicV1ResponseDto": {
        "properties": {
          "brandVoiceId": {
            "description": "Brand voice ID that was set as default",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "success": {
            "description": "Whether the operation was successful",
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          }
        },
        "required": [
          "success",
          "brandVoiceId"
        ],
        "type": "object"
      },
      "SettingsSchema": {
        "properties": {
          "allowDuplicateContact": {
            "example": false,
            "type": "boolean"
          },
          "allowDuplicateOpportunity": {
            "example": false,
            "type": "boolean"
          },
          "allowFacebookNameMerge": {
            "example": false,
            "type": "boolean"
          },
          "disableContactTimezone": {
            "example": false,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "ShippingCarrierSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "allowsMultipleServiceSelection": {
            "description": "The seller can choose multiple services while creating shipping rates if this is true.",
            "example": true,
            "type": "boolean"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "callbackUrl": {
            "description": "The URL endpoint that CRM needs to retrieve shipping rates. This must be a public URL.",
            "example": "https://example.com/get-shipping-rates",
            "type": "string"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "marketplaceAppId": {
            "description": "The unique identifier for the marketplace app.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "name": {
            "description": "Name of the shipping carrier",
            "example": "FedEx",
            "type": "string"
          },
          "services": {
            "description": "An array of available shipping carrier services",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierServiceDto"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "callbackUrl",
          "_id",
          "marketplaceAppId",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "ShippingCarrierServiceDto": {
        "properties": {
          "name": {
            "description": "Name of the shipping carrier service",
            "example": "Priority Mail Express International",
            "type": "string"
          },
          "value": {
            "description": "Value of the shipping carrier service",
            "example": "PriorityMailExpressInternational",
            "type": "string"
          }
        },
        "required": [
          "name",
          "value"
        ],
        "type": "object"
      },
      "ShippingOptionsDto": {
        "properties": {
          "dimensions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PriceDimensionsDto"
              }
            ],
            "description": "Dimensions of the product"
          },
          "weight": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WeightOptionsDto"
              }
            ],
            "description": "Weight options of the product"
          }
        },
        "type": "object"
      },
      "ShippingRateSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amount": {
            "description": "The amount of the shipping rate if it is normal rate (0 means free ). Fixed Handling fee if it is a carrier rate (it will add to the carrier rate).",
            "example": 99.99,
            "type": "number"
          },
          "conditionType": {
            "description": "Type of condition to provide the conditional pricing",
            "enum": [
              "none",
              "price",
              "weight"
            ],
            "example": "price",
            "type": "string"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "The currency of the amount of the rate / handling fee",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "Delivery description",
            "example": "Ships next day",
            "type": "string"
          },
          "isCarrierRate": {
            "description": "is this a carrier rate",
            "example": true,
            "type": "boolean"
          },
          "maxCondition": {
            "description": "Maximum condition for applying this price. set 0 or null if there is no maximum",
            "example": 99.99,
            "type": "number"
          },
          "minCondition": {
            "description": "Minimum condition for applying this price. set 0 or null if there is no minimum",
            "example": 99.99,
            "type": "number"
          },
          "name": {
            "description": "Name of the shipping zone",
            "example": "North zone",
            "type": "string"
          },
          "percentageOfRateFee": {
            "description": "Percentage of rate fee if it is a carrier rate.",
            "example": 10.99,
            "type": "number"
          },
          "shippingCarrierId": {
            "description": "Shipping carrier id",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "shippingCarrierServices": {
            "description": "An array of items",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierServiceDto"
            },
            "type": "array"
          },
          "shippingZoneId": {
            "description": "The unique identifier for the shipping zone.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "currency",
          "amount",
          "conditionType",
          "minCondition",
          "maxCondition",
          "shippingCarrierId",
          "_id",
          "shippingZoneId",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "ShippingZoneCountryDto": {
        "properties": {
          "code": {
            "description": "Country code",
            "enum": [
              "US",
              "CA",
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "KR",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "UA",
              "AE",
              "GB",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "states": {
            "description": "List of states that are available. If states is empty, then all states are available",
            "items": {
              "$ref": "#/components/schemas/ShippingZoneCountryStateDto"
            },
            "type": "array"
          }
        },
        "required": [
          "code"
        ],
        "type": "object"
      },
      "ShippingZoneCountryStateDto": {
        "properties": {
          "code": {
            "description": "State code",
            "enum": [
              "AL",
              "AK",
              "AS",
              "AZ",
              "AR",
              "AA",
              "AE",
              "AP",
              "CA",
              "CO",
              "CT",
              "DE",
              "DC",
              "FM",
              "FL",
              "GA",
              "GU",
              "HI",
              "ID",
              "IL",
              "IN",
              "IA",
              "KS",
              "KY",
              "LA",
              "ME",
              "MH",
              "MD",
              "MA",
              "MI",
              "MN",
              "MS",
              "MO",
              "MT",
              "NE",
              "NV",
              "NH",
              "NJ",
              "NM",
              "NY",
              "NC",
              "ND",
              "MP",
              "OH",
              "OK",
              "OR",
              "PW",
              "PA",
              "PR",
              "RI",
              "SC",
              "SD",
              "TN",
              "TX",
              "UT",
              "VT",
              "VI",
              "VA",
              "WA",
              "WV",
              "WI",
              "WY",
              "AB",
              "BC",
              "MB",
              "NB",
              "NL",
              "NT",
              "NS",
              "NU",
              "ON",
              "PE",
              "QC",
              "SK",
              "YT",
              "BA",
              "CT",
              "CC",
              "CH",
              "CB",
              "CN",
              "ER",
              "FO",
              "JY",
              "LP",
              "LR",
              "MZ",
              "MN",
              "NQ",
              "RN",
              "SA",
              "SJ",
              "SL",
              "SC",
              "SF",
              "SE",
              "TF",
              "TU",
              "ACT",
              "NSW",
              "NT",
              "QLD",
              "SA",
              "TAS",
              "VIC",
              "WA",
              "AC",
              "AL",
              "AM",
              "AP",
              "BA",
              "CE",
              "DF",
              "ES",
              "GO",
              "MA",
              "MG",
              "MS",
              "MT",
              "PA",
              "PB",
              "PE",
              "PI",
              "PR",
              "RJ",
              "RN",
              "RO",
              "RR",
              "RS",
              "SC",
              "SE",
              "SP",
              "TO",
              "AI",
              "AN",
              "AP",
              "AT",
              "BI",
              "CO",
              "AR",
              "LI",
              "LL",
              "LR",
              "MA",
              "ML",
              "RM",
              "TA",
              "VS",
              "NB",
              "AMA",
              "ANT",
              "ARA",
              "ATL",
              "BOL",
              "BOY",
              "CAL",
              "CAQ",
              "CAS",
              "CAU",
              "CES",
              "CHO",
              "CUN",
              "COR",
              "GUA",
              "GUV",
              "HUI",
              "LAG",
              "MAG",
              "MET",
              "NAR",
              "NSA",
              "PUT",
              "QUI",
              "RIS",
              "SAP",
              "SAN",
              "SUC",
              "TOL",
              "VAC",
              "VAU",
              "VID",
              "CR-A",
              "CR-C",
              "CR-G",
              "CR-H",
              "CR-L",
              "CR-P",
              "CR-SJ",
              "GT-16",
              "GT-15",
              "GT-04",
              "GT-20",
              "GT-02",
              "GT-05",
              "GT-01",
              "GT-13",
              "GT-18",
              "GT-21",
              "GT-22",
              "GT-17",
              "GT-09",
              "GT-14",
              "GT-11",
              "GT-03",
              "GT-12",
              "GT-06",
              "GT-07",
              "GT-10",
              "GT-08",
              "GT-19",
              "HK",
              "KL",
              "NT",
              "AN",
              "AP",
              "AR",
              "AS",
              "BR",
              "CH",
              "CG",
              "DN",
              "DD",
              "DL",
              "GA",
              "GJ",
              "HR",
              "HP",
              "JK",
              "JH",
              "KA",
              "KL",
              "LA",
              "LD",
              "MP",
              "MH",
              "MN",
              "ML",
              "MZ",
              "NL",
              "OR",
              "PY",
              "PB",
              "RJ",
              "SK",
              "TN",
              "TS",
              "TR",
              "UP",
              "UK",
              "WB",
              "CW",
              "CN",
              "CE",
              "CO",
              "DL",
              "D",
              "G",
              "KY",
              "KE",
              "KK",
              "LS",
              "LM",
              "LK",
              "LD",
              "LH",
              "MO",
              "MH",
              "MN",
              "OY",
              "RN",
              "SO",
              "TA",
              "WD",
              "WH",
              "WX",
              "WW",
              "AG",
              "AL",
              "AN",
              "AO",
              "AR",
              "AP",
              "AT",
              "AV",
              "BA",
              "BT",
              "BL",
              "BN",
              "BG",
              "BI",
              "BO",
              "BZ",
              "BS",
              "BR",
              "CA",
              "CL",
              "CB",
              "CI",
              "CE",
              "CT",
              "CZ",
              "CH",
              "CO",
              "CS",
              "CR",
              "KR",
              "CN",
              "EN",
              "FM",
              "FE",
              "FI",
              "FG",
              "FC",
              "FR",
              "GE",
              "GO",
              "GR",
              "IM",
              "IS",
              "AQ",
              "SP",
              "LT",
              "LE",
              "LC",
              "LI",
              "LO",
              "LU",
              "MC",
              "MN",
              "MS",
              "MT",
              "VS",
              "ME",
              "MI",
              "MO",
              "MB",
              "NA",
              "NO",
              "NU",
              "OG",
              "OT",
              "OR",
              "PD",
              "PA",
              "PR",
              "PV",
              "PG",
              "PU",
              "PE",
              "PC",
              "PI",
              "PT",
              "PN",
              "PZ",
              "PO",
              "RG",
              "RA",
              "RC",
              "RE",
              "RI",
              "RN",
              "RM",
              "RO",
              "SA",
              "SS",
              "SV",
              "SI",
              "SR",
              "SO",
              "TA",
              "TE",
              "TR",
              "TO",
              "TP",
              "TN",
              "TV",
              "TS",
              "UD",
              "VA",
              "VE",
              "VB",
              "VC",
              "VR",
              "VV",
              "VI",
              "VT",
              "JP-23",
              "JP-05",
              "JP-02",
              "JP-12",
              "JP-38",
              "JP-18",
              "JP-40",
              "JP-07",
              "JP-21",
              "JP-10",
              "JP-34",
              "JP-01",
              "JP-28",
              "JP-08",
              "JP-17",
              "JP-03",
              "JP-37",
              "JP-46",
              "JP-14",
              "JP-39",
              "JP-43",
              "JP-26",
              "JP-24",
              "JP-04",
              "JP-45",
              "JP-20",
              "JP-42",
              "JP-29",
              "JP-15",
              "JP-44",
              "JP-33",
              "JP-47",
              "JP-27",
              "JP-41",
              "JP-11",
              "JP-25",
              "JP-32",
              "JP-22",
              "JP-09",
              "JP-36",
              "JP-13",
              "JP-31",
              "JP-16",
              "JP-30",
              "JP-06",
              "JP-35",
              "JP-19",
              "JHR",
              "KDH",
              "KTN",
              "KUL",
              "LBN",
              "MLK",
              "NSN",
              "PHG",
              "PNG",
              "PRK",
              "PLS",
              "PJY",
              "SBH",
              "SWK",
              "SGR",
              "TRG",
              "AGU",
              "BCN",
              "BCS",
              "CAM",
              "CHP",
              "CHH",
              "CMX",
              "COA",
              "COL",
              "DUR",
              "GUA",
              "GRO",
              "HID",
              "JAL",
              "MIC",
              "MOR",
              "MEX",
              "NAY",
              "NLE",
              "OAX",
              "PUE",
              "QUE",
              "ROO",
              "SLP",
              "SIN",
              "SON",
              "TAB",
              "TAM",
              "TLA",
              "VER",
              "YUC",
              "ZAC",
              "AUK",
              "BOP",
              "CAN",
              "CIT",
              "GIS",
              "HKB",
              "MWT",
              "MBH",
              "NSN",
              "NTL",
              "OTA",
              "STL",
              "TKI",
              "TAS",
              "WKO",
              "WGN",
              "WTC",
              "JK",
              "BA",
              "GB",
              "IS",
              "KP",
              "PB",
              "SD",
              "AMA",
              "ANC",
              "APU",
              "ARE",
              "AYA",
              "CAJ",
              "CAL",
              "CUS",
              "HUV",
              "HUC",
              "ICA",
              "JUN",
              "LAL",
              "LAM",
              "LIM",
              "LOR",
              "MDD",
              "MOQ",
              "PAS",
              "PIU",
              "PUN",
              "SAM",
              "TAC",
              "TUM",
              "UCA",
              "PH-ABR",
              "PH-AGN",
              "PH-AGS",
              "PH-AKL",
              "PH-ALB",
              "PH-ANT",
              "PH-APA",
              "PH-AUR",
              "PH-BAS",
              "PH-BAN",
              "PH-BTN",
              "PH-BTG",
              "PH-BEN",
              "PH-BIL",
              "PH-BOH",
              "PH-BUK",
              "PH-BUL",
              "PH-CAG",
              "PH-CAN",
              "PH-CAS",
              "PH-CAM",
              "PH-CAP",
              "PH-CAT",
              "PH-CAV",
              "PH-CEB",
              "PH-NCO",
              "PH-DAO",
              "PH-DAV",
              "PH-DAS",
              "PH-EAS",
              "PH-GUI",
              "PH-IFU",
              "PH-ILN",
              "PH-ILS",
              "PH-ILI",
              "PH-ISA",
              "PH-KAL",
              "PH-LUN",
              "PH-LAG",
              "PH-LAN",
              "PH-LAS",
              "PH-LEY",
              "PH-MAG",
              "PH-MAD",
              "PH-MAS",
              "PH-00",
              "PH-MSC",
              "PH-MSR",
              "PH-MOU",
              "PH-NEC",
              "PH-NER",
              "PH-NSA",
              "PH-NUE",
              "PH-NUV",
              "PH-MDC",
              "PH-MDR",
              "PH-PLW",
              "PH-PAM",
              "PH-PAN",
              "PH-QUE",
              "PH-QUI",
              "PH-RIZ",
              "PH-ROM",
              "PH-WSA",
              "PH-SAR",
              "PH-SIG",
              "PH-SOR",
              "PH-SCO",
              "PH-SLE",
              "PH-SUK",
              "PH-SLU",
              "PH-SUN",
              "PH-SUR",
              "PH-TAR",
              "PH-TAW",
              "PH-ZMB",
              "PH-ZAN",
              "PH-ZAS",
              "PH-ZSI",
              "PT-20",
              "PT-01",
              "PT-02",
              "PT-03",
              "PT-04",
              "PT-05",
              "PT-06",
              "PT-07",
              "PT-08",
              "PT-09",
              "PT-10",
              "PT-11",
              "PT-30",
              "PT-12",
              "PT-13",
              "PT-14",
              "PT-15",
              "PT-16",
              "PT-17",
              "PT-18",
              "AB",
              "AR",
              "AG",
              "BC",
              "BH",
              "BN",
              "BT",
              "BR",
              "BV",
              "B",
              "BZ",
              "CL",
              "CS",
              "CJ",
              "CT",
              "CV",
              "DB",
              "DJ",
              "GL",
              "GR",
              "GJ",
              "HR",
              "HD",
              "IL",
              "IS",
              "IF",
              "MM",
              "MH",
              "MS",
              "NT",
              "OT",
              "PH",
              "SJ",
              "SM",
              "SB",
              "SV",
              "TR",
              "TM",
              "TL",
              "VL",
              "VS",
              "VN",
              "KR-26",
              "KR-43",
              "KR-44",
              "KR-27",
              "KR-30",
              "KR-42",
              "KR-29",
              "KR-47",
              "KR-41",
              "KR-48",
              "KR-28",
              "KR-49",
              "KR-45",
              "KR-46",
              "KR-50",
              "KR-11",
              "KR-31",
              "C",
              "VI",
              "AB",
              "A",
              "AL",
              "O",
              "AV",
              "BA",
              "PM",
              "B",
              "BU",
              "CC",
              "CA",
              "S",
              "CS",
              "CE",
              "CR",
              "CO",
              "CU",
              "GI",
              "GR",
              "GU",
              "SS",
              "H",
              "HU",
              "J",
              "LO",
              "GC",
              "LE",
              "L",
              "LU",
              "M",
              "MA",
              "ML",
              "MU",
              "NA",
              "OR",
              "P",
              "PO",
              "SA",
              "TF",
              "SG",
              "SE",
              "SO",
              "T",
              "TE",
              "TO",
              "V",
              "VA",
              "BI",
              "ZA",
              "Z",
              "AZ",
              "AJ",
              "DU",
              "FU",
              "RK",
              "SH",
              "UQ",
              "BFP",
              "ENG",
              "NIR",
              "SCT",
              "WLS",
              "AR",
              "CA",
              "CL",
              "CO",
              "DU",
              "FS",
              "FD",
              "LA",
              "MA",
              "MO",
              "PA",
              "RN",
              "RV",
              "RO",
              "SA",
              "SJ",
              "SO",
              "TA",
              "TT"
            ],
            "example": "VA",
            "type": "string"
          }
        },
        "required": [
          "code"
        ],
        "type": "object"
      },
      "ShippingZoneSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "countries": {
            "description": "List of countries that are available",
            "items": {
              "$ref": "#/components/schemas/ShippingZoneCountryDto"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "name": {
            "description": "Name of the shipping zone",
            "example": "North zone",
            "type": "string"
          },
          "shippingRates": {
            "description": "Array of shipping rates under this shipping zone",
            "items": {
              "$ref": "#/components/schemas/ShippingRateSchema"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "countries",
          "_id",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "SingleSelectField": {
        "properties": {
          "fieldValue": {
            "description": "Selected option value for the custom field (preferred).",
            "example": "My Selected Option",
            "type": "string"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": "My Selected Option",
            "type": "string"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "SitelinkAssetPayloadDTO": {
        "properties": {
          "adScheduleTargets": {
            "description": "Ad schedule targets restricting when the sitelink is shown",
            "example": [
              {
                "dayOfWeek": "MONDAY",
                "endHour": 17,
                "endMinute": "ZERO",
                "startHour": 9,
                "startMinute": "ZERO"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AdScheduleTargetDTO"
            },
            "type": "array"
          },
          "description1": {
            "description": "First description line",
            "example": "See our plans and pricing",
            "type": "string"
          },
          "description2": {
            "description": "Second description line",
            "example": "Starting at $9/month",
            "type": "string"
          },
          "endDate": {
            "description": "End date for the sitelink (YYYY-MM-DD)",
            "example": "2024-12-31",
            "type": "string"
          },
          "finalUrls": {
            "description": "Final landing page URL",
            "example": "https://example.com/pricing",
            "type": "string"
          },
          "linkText": {
            "description": "Sitelink display text",
            "example": "Pricing",
            "type": "string"
          },
          "resourceName": {
            "description": "Google Ads resource name for an existing sitelink asset",
            "example": "customers/123/assets/456",
            "type": "string"
          },
          "startDate": {
            "description": "Start date for the sitelink (YYYY-MM-DD)",
            "example": "2024-01-01",
            "type": "string"
          }
        },
        "required": [
          "linkText",
          "finalUrls"
        ],
        "type": "object"
      },
      "SlotsSchema": {
        "properties": {
          "slots": {
            "example": [
              "2024-10-28T10:00:00-05:00",
              "2024-10-28T11:00:00-05:00"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "slots"
        ],
        "type": "object"
      },
      "SmsTemplateSchema": {
        "properties": {
          "attachments": {
            "example": [],
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "body": {
            "example": "sms body",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SnapshotPutSchema": {
        "properties": {
          "id": {
            "description": "Snaptshot ID",
            "example": "XXXXXXXXXXX",
            "type": "string"
          },
          "override": {
            "default": false,
            "description": "If you want override all conflicted assets then pass true. Default value is false.",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "SnapshotStatusSchema": {
        "properties": {
          "dateAdded": {
            "description": "Timestamp of when snapshot processing starts for sub-account ",
            "example": "10/28/2022, 6:24:54 PM",
            "format": "date-time",
            "type": "string"
          },
          "id": {
            "description": "Document id",
            "example": "1eM2UgkfaECOYyUdCo9Pa",
            "type": "string"
          },
          "locationId": {
            "description": "Sub-account id",
            "example": "BrKClvyvdxhJ9Mxz2pzQ",
            "type": "string"
          },
          "status": {
            "description": "Status of snapshot push",
            "example": "processing",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SnapshotStatusSchemaWithAssets": {
        "properties": {
          "completed": {
            "description": "List of completed assets",
            "example": "['forms', 'surveys', 'funnels', 'workflows']",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Document id",
            "example": "1eM2UgkfaECOYyUdCo9Pa",
            "type": "string"
          },
          "locationId": {
            "description": "Sub-account id",
            "example": "BrKClvyvdxhJ9Mxz2pzQ",
            "type": "string"
          },
          "pending": {
            "description": "List of pending assets",
            "example": "['custom_fields','custom_values','tags']",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "status": {
            "description": "Status of snapshot push",
            "example": "processing",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SnapshotsSchema": {
        "properties": {
          "id": {
            "description": "Snapshot Id.",
            "example": "1eM2UgkfaECOYyUdCo9Pa",
            "type": "string"
          },
          "name": {
            "description": "Name of the snapshot",
            "example": "Martial Arts Snapshot",
            "type": "string"
          },
          "type": {
            "description": "Type of snapshot - own or imported.",
            "example": "own",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialGoogleMediaAccountSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the social media account",
            "example": "65f2d989a4f2f1e5322c3856",
            "type": "string"
          },
          "active": {
            "description": "Indicates if the account is currently active",
            "example": true,
            "type": "boolean"
          },
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "createdAt": {
            "description": "created date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if the account has been deleted",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID associated with this account",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "meta": {
            "description": "Additional metadata for the account",
            "example": {
              "accountId": "u37swmmLbA02zgqKPpxITe2",
              "isVerified": "true",
              "locationId": "u37swmmLbA02zgqKPpxITe2",
              "openId": "u37swmmLbA02zgqKPpxITe2",
              "page": {
                "avatar": "u37swmmLbA02zgqKPpxITe2",
                "id": "u37swmmLbA02zgqKPpxITe2",
                "name": "Account Name"
              },
              "pageId": "u37swmmLbA02zgqKPpxITe2",
              "protected": true,
              "storeCode": "122",
              "storefrontAddress": {
                "addressLines": [
                  "207",
                  "county"
                ],
                "administrativeArea": "Down Town",
                "languageCode": "E001",
                "locality": "Louis Street",
                "postalCode": "1221",
                "regionCode": "30021"
              },
              "urn": "u37swmmLbA02zgqKPpxITe2",
              "username": "testUser",
              "verified": true
            },
            "type": "object"
          },
          "name": {
            "description": "Display name of the account",
            "example": "Account Name",
            "type": "string"
          },
          "oAuthId": {
            "description": "OAuth provider account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "oldId": {
            "description": "Legacy account identifier for backward compatibility",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "platform": {
            "description": "Social media platform name",
            "example": "google",
            "type": "object"
          },
          "type": {
            "description": "Type of account (e.g., location, page, profile)",
            "example": "location",
            "type": "object"
          },
          "updatedAt": {
            "description": "updated date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialMediaFBAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added Facebook Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialMediaFacebookAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Facebook",
        "type": "object"
      },
      "SocialMediaFacebookAccountSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the social media account",
            "example": "65f2d989a4f2f1e5322c3856",
            "type": "string"
          },
          "active": {
            "description": "Indicates if the account is currently active",
            "example": true,
            "type": "boolean"
          },
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "createdAt": {
            "description": "created date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if the account has been deleted",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID associated with this account",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "meta": {
            "description": "Additional metadata for the account",
            "example": {
              "accountId": "u37swmmLbA02zgqKPpxITe2",
              "isVerified": "true",
              "locationId": "u37swmmLbA02zgqKPpxITe2",
              "openId": "u37swmmLbA02zgqKPpxITe2",
              "page": {
                "avatar": "u37swmmLbA02zgqKPpxITe2",
                "id": "u37swmmLbA02zgqKPpxITe2",
                "name": "Account Name"
              },
              "pageId": "u37swmmLbA02zgqKPpxITe2",
              "protected": true,
              "storeCode": "122",
              "storefrontAddress": {
                "addressLines": [
                  "207",
                  "county"
                ],
                "administrativeArea": "Down Town",
                "languageCode": "E001",
                "locality": "Louis Street",
                "postalCode": "1221",
                "regionCode": "30021"
              },
              "urn": "u37swmmLbA02zgqKPpxITe2",
              "username": "testUser",
              "verified": true
            },
            "type": "object"
          },
          "name": {
            "description": "Display name of the account",
            "example": "Account Name",
            "type": "string"
          },
          "oAuthId": {
            "description": "OAuth provider account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "oldId": {
            "description": "Legacy account identifier for backward compatibility",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "platform": {
            "description": "Social media platform name",
            "example": "facebook",
            "type": "object"
          },
          "type": {
            "description": "type value must be page",
            "example": "page",
            "type": "object"
          },
          "updatedAt": {
            "description": "updated date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialMediaGmbAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added Google Business Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialGoogleMediaAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "_id": "65f2d989a4f2f1e5322c3856",
              "active": true,
              "locationId": "u37swmmLbA02zgqKPpxITe2",
              "name": "Account Name",
              "oAuthId": "u37swmmLbA02zgqKPpxITe2",
              "platform": "google",
              "type": "location"
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Google Business Account",
        "type": "object"
      },
      "SocialMediaInstagramAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added Instagram Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialMediaInstagramAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Instagram",
        "type": "object"
      },
      "SocialMediaInstagramAccountSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the social media account",
            "example": "65f2d989a4f2f1e5322c3856",
            "type": "string"
          },
          "active": {
            "description": "Indicates if the account is currently active",
            "example": true,
            "type": "boolean"
          },
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "createdAt": {
            "description": "created date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if the account has been deleted",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID associated with this account",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "meta": {
            "description": "Additional metadata for the account",
            "example": {
              "accountId": "u37swmmLbA02zgqKPpxITe2",
              "isVerified": "true",
              "locationId": "u37swmmLbA02zgqKPpxITe2",
              "openId": "u37swmmLbA02zgqKPpxITe2",
              "page": {
                "avatar": "u37swmmLbA02zgqKPpxITe2",
                "id": "u37swmmLbA02zgqKPpxITe2",
                "name": "Account Name"
              },
              "pageId": "u37swmmLbA02zgqKPpxITe2",
              "protected": true,
              "storeCode": "122",
              "storefrontAddress": {
                "addressLines": [
                  "207",
                  "county"
                ],
                "administrativeArea": "Down Town",
                "languageCode": "E001",
                "locality": "Louis Street",
                "postalCode": "1221",
                "regionCode": "30021"
              },
              "urn": "u37swmmLbA02zgqKPpxITe2",
              "username": "testUser",
              "verified": true
            },
            "type": "object"
          },
          "name": {
            "description": "Display name of the account",
            "example": "Profile Name",
            "type": "string"
          },
          "oAuthId": {
            "description": "OAuth provider account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "oldId": {
            "description": "Legacy account identifier for backward compatibility",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "platform": {
            "description": "Social media platform name",
            "example": "instagram",
            "type": "object"
          },
          "type": {
            "description": "Type of account (e.g., location, page, profile)",
            "example": "profile",
            "type": "object"
          },
          "updatedAt": {
            "description": "updated date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialMediaLinkedInAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added LinkedIn Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialMediaLinkedInAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Linkedin",
        "type": "object"
      },
      "SocialMediaLinkedInAccountSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the social media account",
            "example": "65f2d989a4f2f1e5322c3856",
            "type": "string"
          },
          "active": {
            "description": "Indicates if the account is currently active",
            "example": true,
            "type": "boolean"
          },
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "createdAt": {
            "description": "created date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if the account has been deleted",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID associated with this account",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "meta": {
            "description": "Additional metadata for the account",
            "example": {
              "accountId": "u37swmmLbA02zgqKPpxITe2",
              "isVerified": "true",
              "locationId": "u37swmmLbA02zgqKPpxITe2",
              "openId": "u37swmmLbA02zgqKPpxITe2",
              "page": {
                "avatar": "u37swmmLbA02zgqKPpxITe2",
                "id": "u37swmmLbA02zgqKPpxITe2",
                "name": "Account Name"
              },
              "pageId": "u37swmmLbA02zgqKPpxITe2",
              "protected": true,
              "storeCode": "122",
              "storefrontAddress": {
                "addressLines": [
                  "207",
                  "county"
                ],
                "administrativeArea": "Down Town",
                "languageCode": "E001",
                "locality": "Louis Street",
                "postalCode": "1221",
                "regionCode": "30021"
              },
              "urn": "u37swmmLbA02zgqKPpxITe2",
              "username": "testUser",
              "verified": true
            },
            "type": "object"
          },
          "name": {
            "description": "Display name of the account",
            "example": "Profile Name",
            "type": "string"
          },
          "oAuthId": {
            "description": "OAuth provider account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "oldId": {
            "description": "Legacy account identifier for backward compatibility",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "platform": {
            "description": "Social media platform name",
            "example": "linkedin",
            "type": "object"
          },
          "type": {
            "description": "type must be one of the following values: page, profile",
            "example": "profile",
            "type": "object"
          },
          "updatedAt": {
            "description": "updated date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialMediaPinterestAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added Pinterest Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PinterestOAuthAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "platform",
          "success",
          "statusCode",
          "message"
        ],
        "title": "Pinterest",
        "type": "object"
      },
      "SocialMediaTagSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "createdAt": {
            "description": "Date when the record was created",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "Created By User Id",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "deleted": {
            "description": "Deleted boolean value",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location Id",
            "example": "Lx1EI6YIgQYMQi0ytFXv",
            "type": "string"
          },
          "tag": {
            "description": "Tag Name",
            "example": "Primary Tag",
            "type": "string"
          },
          "updatedAt": {
            "description": "Date when the record was last updated",
            "example": "2023-08-02T00:00:00.000Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialMediaThreadsAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added Threads Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialMediaThreadsAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "platform",
          "success",
          "statusCode",
          "message"
        ],
        "title": "Threads",
        "type": "object"
      },
      "SocialMediaThreadsAccountSchema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseOAuthAccountSchema"
          },
          {
            "properties": {
              "platform": {
                "enum": [
                  "threads"
                ],
                "example": "threads",
                "type": "string"
              }
            },
            "type": "object"
          }
        ]
      },
      "SocialMediaTiktokAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added Tiktok Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialMediaTiktokAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Tiktok",
        "type": "object"
      },
      "SocialMediaTiktokAccountSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the social media account",
            "example": "65f2d989a4f2f1e5322c3856",
            "type": "string"
          },
          "active": {
            "description": "Indicates if the account is currently active",
            "example": true,
            "type": "boolean"
          },
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "createdAt": {
            "description": "created date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if the account has been deleted",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID associated with this account",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "meta": {
            "description": "Additional metadata for the account",
            "example": {
              "accountId": "u37swmmLbA02zgqKPpxITe2",
              "isVerified": "true",
              "locationId": "u37swmmLbA02zgqKPpxITe2",
              "openId": "u37swmmLbA02zgqKPpxITe2",
              "page": {
                "avatar": "u37swmmLbA02zgqKPpxITe2",
                "id": "u37swmmLbA02zgqKPpxITe2",
                "name": "Account Name"
              },
              "pageId": "u37swmmLbA02zgqKPpxITe2",
              "protected": true,
              "storeCode": "122",
              "storefrontAddress": {
                "addressLines": [
                  "207",
                  "county"
                ],
                "administrativeArea": "Down Town",
                "languageCode": "E001",
                "locality": "Louis Street",
                "postalCode": "1221",
                "regionCode": "30021"
              },
              "urn": "u37swmmLbA02zgqKPpxITe2",
              "username": "testUser",
              "verified": true
            },
            "type": "object"
          },
          "name": {
            "description": "Display name of the account",
            "example": "Account Name",
            "type": "string"
          },
          "oAuthId": {
            "description": "OAuth provider account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "oldId": {
            "description": "Legacy account identifier for backward compatibility",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "platform": {
            "description": "Social media platform name",
            "example": "tiktok",
            "type": "object"
          },
          "type": {
            "description": "type must be one of the following values: profile, business",
            "example": "profile",
            "type": "object"
          },
          "updatedAt": {
            "description": "updated date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialMediaTiktokBusinessAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added TikTok Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TikTokOAuthAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "title": "Tiktok Business",
        "type": "object"
      },
      "SocialMediaTwitterAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added Twitter Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialMediaTwitterAccountSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "_id": "65f2d989a4f2f1e5322c3856",
              "active": true,
              "avatar": "https://storage.googleapis.com/2ad21ebc23/test",
              "createdAt": "2024-03-14T11:03:37.015Z",
              "deleted": false,
              "locationId": "w37swmmLbA02zgqKPpxITe2",
              "meta": {},
              "name": "Twitter Account Name",
              "oAuthId": "u37swmmLbA02zgqKPpxITe2",
              "oldId": "u37swmmLbA02zgqKPpxITe2",
              "originId": "244405****11687",
              "platform": "twitter",
              "type": "profile",
              "updatedAt": "2024-03-14T11:03:37.015Z"
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "SocialMediaTwitterAccountSchema": {
        "properties": {
          "_id": {
            "description": "MongoDB document ID of the social media account",
            "example": "65f2d989a4f2f1e5322c3856",
            "type": "string"
          },
          "active": {
            "description": "Indicates if the account is currently active",
            "example": true,
            "type": "boolean"
          },
          "avatar": {
            "description": "Avatar or profile picture URL",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "createdAt": {
            "description": "created date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          },
          "deleted": {
            "description": "Indicates if the account has been deleted",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID associated with this account",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "meta": {
            "description": "Additional metadata for the account",
            "example": {
              "accountId": "u37swmmLbA02zgqKPpxITe2",
              "isVerified": "true",
              "locationId": "u37swmmLbA02zgqKPpxITe2",
              "openId": "u37swmmLbA02zgqKPpxITe2",
              "page": {
                "avatar": "u37swmmLbA02zgqKPpxITe2",
                "id": "u37swmmLbA02zgqKPpxITe2",
                "name": "Account Name"
              },
              "pageId": "u37swmmLbA02zgqKPpxITe2",
              "protected": true,
              "storeCode": "122",
              "storefrontAddress": {
                "addressLines": [
                  "207",
                  "county"
                ],
                "administrativeArea": "Down Town",
                "languageCode": "E001",
                "locality": "Louis Street",
                "postalCode": "1221",
                "regionCode": "30021"
              },
              "urn": "u37swmmLbA02zgqKPpxITe2",
              "username": "testUser",
              "verified": true
            },
            "type": "object"
          },
          "name": {
            "description": "Display name of the account",
            "example": "Profile Name",
            "type": "string"
          },
          "oAuthId": {
            "description": "OAuth provider account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "oldId": {
            "description": "Legacy account identifier for backward compatibility",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "originId": {
            "description": "Original platform-specific account identifier",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "type": "string"
          },
          "platform": {
            "description": "Social media platform name",
            "example": "twitter",
            "type": "object"
          },
          "type": {
            "description": "Type of account (e.g., location, page, profile)",
            "example": "profile",
            "type": "object"
          },
          "updatedAt": {
            "description": "updated date",
            "example": "2024-03-14T11:03:37.015Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SocialMediaYouTubeAccountResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Added YouTube Account",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/YouTubeOAuthAccountSchema"
              }
            ],
            "description": "Requested Results"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "platform",
          "success",
          "statusCode",
          "message"
        ],
        "title": "YouTube",
        "type": "object"
      },
      "SocialPlannerGetPostSuccessfulResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Fetched Post",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetPostSuccessfulResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "post": {
                "_id": "61bb16833b3f2791f9715be2",
                "insights": {
                  "comment": 5,
                  "like": 12,
                  "share": 3
                },
                "locationId": "ve9EPM428h8vShlRW1KT",
                "status": "published"
              }
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "SocialPlannerUploadFileResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Uploaded CSV",
            "type": "string"
          },
          "results": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UploadFileResponseSchema"
              }
            ],
            "description": "Requested Results",
            "example": {
              "csvFileType": "basic",
              "fileName": "sample.csv",
              "filePath": "omaDY3RbWtTP511e/social-import/d23d68c2-82c0-1db6e2.csv",
              "fileSize": 1024,
              "rowsCount": 6
            }
          },
          "statusCode": {
            "description": "Status Code",
            "example": 201,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "SocialSchema": {
        "properties": {
          "blogRss": {
            "description": "Instagram URL",
            "example": "https://www.blogRss.com/",
            "type": "string"
          },
          "facebookUrl": {
            "description": "Facebook URL",
            "example": "https://www.facebook.com/",
            "type": "string"
          },
          "foursquare": {
            "description": "Foursquare URL",
            "example": "https://www.foursquare.com/",
            "type": "string"
          },
          "googlePlacesId": {
            "description": "Google Business Places ID",
            "example": "ChIJJGPdVbQTrjsRGUkefteUeFk",
            "type": "string"
          },
          "googlePlus": {
            "description": "Googleplus URL",
            "example": "https://www.googleplus.com/",
            "type": "string"
          },
          "instagram": {
            "description": "Instagram URL",
            "example": "https://www.instagram.com/",
            "type": "string"
          },
          "linkedIn": {
            "description": "LinkedIn URL",
            "example": "https://www.linkedIn.com/",
            "type": "string"
          },
          "pinterest": {
            "description": "Instagram URL",
            "example": "https://www.pinterest.com/",
            "type": "string"
          },
          "twitter": {
            "description": "Twitter URL",
            "example": "https://www.foutwitterrsquare.com/",
            "type": "string"
          },
          "yelp": {
            "description": "Yelp URL",
            "example": "https://www.yelp.com/",
            "type": "string"
          },
          "youtube": {
            "description": "Instagram URL",
            "example": "https://www.youtube.com/",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SponsoredAccountOwnerDTO": {
        "properties": {
          "sponsoredAccount": {
            "description": "Sponsored account URN",
            "example": "urn:li:sponsoredAccount:123456",
            "type": "string"
          }
        },
        "required": [
          "sponsoredAccount"
        ],
        "type": "object"
      },
      "StaffDTO": {
        "properties": {
          "id": {
            "description": "Staff ID",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "StageAggregationResponseDto": {
        "properties": {
          "openValue": {
            "description": "Total value of open opportunities in this stage",
            "example": 18000,
            "type": "number"
          },
          "openWeightedValue": {
            "description": "Probability-weighted value of open opportunities in this stage",
            "example": 10800,
            "type": "number"
          },
          "pipelineStageId": {
            "description": "Identifier of the pipeline stage being aggregated",
            "example": "e93ba61a-53b3-45e7-985a-c7732dbcdb69",
            "type": "string"
          },
          "totalCount": {
            "description": "Total number of opportunities in this stage",
            "example": 12,
            "type": "number"
          },
          "totalValue": {
            "description": "Total monetary value of all opportunities in this stage",
            "example": 24500,
            "type": "number"
          },
          "weightedValue": {
            "description": "Probability-weighted total value of opportunities in this stage",
            "example": 14700,
            "type": "number"
          },
          "wonValue": {
            "description": "Total value of won opportunities in this stage",
            "example": 6500,
            "type": "number"
          }
        },
        "required": [
          "pipelineStageId",
          "totalCount",
          "totalValue",
          "weightedValue",
          "openValue",
          "openWeightedValue",
          "wonValue"
        ],
        "type": "object"
      },
      "StartAfterArrayNumberSchema": {
        "properties": {
          "startAfterDate": {
            "description": "Search to begin after the specified date - should contain the sort value of the last document",
            "example": [
              1600854,
              1600851
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "StartAfterNumberSchema": {
        "properties": {
          "startAfterDate": {
            "description": "Search to begin after the specified date - should contain the sort value of the last document",
            "example": 1600854,
            "type": "number"
          }
        },
        "type": "object"
      },
      "StartDateSchema": {
        "properties": {
          "startDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DateSchema"
              }
            ],
            "description": "Start Date",
            "example": {
              "day": 15,
              "month": 1,
              "year": 2024
            }
          },
          "startTime": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TimeSchema"
              }
            ],
            "description": "Start Time",
            "example": {
              "hours": 10,
              "minutes": 30,
              "seconds": 0
            }
          }
        },
        "type": "object"
      },
      "StartEditSessionDTO": {
        "properties": {
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "StartEditSessionResponseDTO": {
        "properties": {
          "itemCount": {
            "description": "Number of items staged for editing.",
            "example": 25,
            "type": "number"
          },
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Edit session started successfully",
            "type": "string"
          },
          "sessionId": {
            "description": "The ID of the edit session.",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          }
        },
        "type": "object"
      },
      "StoreOrderFulfillmentNotificationDto": {
        "properties": {
          "defaultEmailTemplateId": {
            "description": "Default Email Template Id",
            "example": "6788d542f0462ffd6bc29bb9",
            "type": "string"
          },
          "emailTemplateId": {
            "description": "Email Template Id",
            "example": "6788d542f0462ffd6bc29bb9",
            "type": "string"
          },
          "enabled": {
            "description": "Store order fulfillment notification enabled",
            "example": true,
            "type": "boolean"
          },
          "subject": {
            "description": "Store order fulfillment email subject",
            "example": "Order fulfilled",
            "type": "string"
          }
        },
        "required": [
          "enabled",
          "subject",
          "emailTemplateId",
          "defaultEmailTemplateId"
        ],
        "type": "object"
      },
      "StoreOrderNotificationDto": {
        "properties": {
          "defaultEmailTemplateId": {
            "description": "Default Email Template Id",
            "example": "6788d542f0462ffd6bc29bb9",
            "type": "string"
          },
          "emailTemplateId": {
            "description": "Email Template Id",
            "example": "6788d542f0462ffd6bc29bb9",
            "type": "string"
          },
          "enabled": {
            "description": "Store order notification enabled",
            "example": true,
            "type": "boolean"
          },
          "subject": {
            "description": "Store order email subject",
            "example": "Your order is placed !",
            "type": "string"
          }
        },
        "required": [
          "enabled",
          "subject",
          "emailTemplateId",
          "defaultEmailTemplateId"
        ],
        "type": "object"
      },
      "StoreOrderSource": {
        "properties": {
          "subType": {
            "description": "Source subtype of order",
            "enum": [
              "one_step_order_form",
              "two_step_order_form",
              "upsell",
              "tap_to_pay",
              "card_payment",
              "store",
              "contact_view",
              "email_campaign",
              "payments_dashboard",
              "shopify",
              "subscription_view",
              "store_upsell",
              "woocommerce",
              "service",
              "meeting",
              "imported_csv",
              "qr_code"
            ],
            "example": "store",
            "type": "string"
          },
          "type": {
            "description": "Source of order",
            "enum": [
              "funnel",
              "website",
              "invoice",
              "calendar",
              "text2Pay",
              "document_contracts",
              "membership",
              "mobile_app",
              "communities",
              "point_of_sale",
              "manual",
              "form",
              "survey",
              "payment_link",
              "external"
            ],
            "example": "website",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "StoreSettingSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the settings.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "shippingOrigin": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreShippingOriginDto"
              }
            ],
            "description": "Shipping origin address"
          },
          "storeOrderFulfillmentNotification": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreOrderFulfillmentNotificationDto"
              }
            ],
            "description": "Store order fulfillment notification email"
          },
          "storeOrderNotification": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StoreOrderNotificationDto"
              }
            ],
            "description": "Store order notification email"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "shippingOrigin",
          "_id",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "StoreShippingOriginDto": {
        "properties": {
          "city": {
            "description": "City name",
            "example": "Tokyo",
            "type": "string"
          },
          "country": {
            "description": "Country code",
            "enum": [
              "US",
              "CA",
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "KR",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "UA",
              "AE",
              "GB",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "email": {
            "description": "Email",
            "example": "john@example.com",
            "type": "string"
          },
          "name": {
            "description": "Name of the store / company",
            "example": "ABC Store",
            "type": "string"
          },
          "phone": {
            "description": "Business Phone Number",
            "example": "+1-214-559-6993",
            "type": "string"
          },
          "state": {
            "description": "State code",
            "enum": [
              "AL",
              "AK",
              "AS",
              "AZ",
              "AR",
              "AA",
              "AE",
              "AP",
              "CA",
              "CO",
              "CT",
              "DE",
              "DC",
              "FM",
              "FL",
              "GA",
              "GU",
              "HI",
              "ID",
              "IL",
              "IN",
              "IA",
              "KS",
              "KY",
              "LA",
              "ME",
              "MH",
              "MD",
              "MA",
              "MI",
              "MN",
              "MS",
              "MO",
              "MT",
              "NE",
              "NV",
              "NH",
              "NJ",
              "NM",
              "NY",
              "NC",
              "ND",
              "MP",
              "OH",
              "OK",
              "OR",
              "PW",
              "PA",
              "PR",
              "RI",
              "SC",
              "SD",
              "TN",
              "TX",
              "UT",
              "VT",
              "VI",
              "VA",
              "WA",
              "WV",
              "WI",
              "WY",
              "AB",
              "BC",
              "MB",
              "NB",
              "NL",
              "NT",
              "NS",
              "NU",
              "ON",
              "PE",
              "QC",
              "SK",
              "YT",
              "BA",
              "CT",
              "CC",
              "CH",
              "CB",
              "CN",
              "ER",
              "FO",
              "JY",
              "LP",
              "LR",
              "MZ",
              "MN",
              "NQ",
              "RN",
              "SA",
              "SJ",
              "SL",
              "SC",
              "SF",
              "SE",
              "TF",
              "TU",
              "ACT",
              "NSW",
              "NT",
              "QLD",
              "SA",
              "TAS",
              "VIC",
              "WA",
              "AC",
              "AL",
              "AM",
              "AP",
              "BA",
              "CE",
              "DF",
              "ES",
              "GO",
              "MA",
              "MG",
              "MS",
              "MT",
              "PA",
              "PB",
              "PE",
              "PI",
              "PR",
              "RJ",
              "RN",
              "RO",
              "RR",
              "RS",
              "SC",
              "SE",
              "SP",
              "TO",
              "AI",
              "AN",
              "AP",
              "AT",
              "BI",
              "CO",
              "AR",
              "LI",
              "LL",
              "LR",
              "MA",
              "ML",
              "RM",
              "TA",
              "VS",
              "NB",
              "AMA",
              "ANT",
              "ARA",
              "ATL",
              "BOL",
              "BOY",
              "CAL",
              "CAQ",
              "CAS",
              "CAU",
              "CES",
              "CHO",
              "CUN",
              "COR",
              "GUA",
              "GUV",
              "HUI",
              "LAG",
              "MAG",
              "MET",
              "NAR",
              "NSA",
              "PUT",
              "QUI",
              "RIS",
              "SAP",
              "SAN",
              "SUC",
              "TOL",
              "VAC",
              "VAU",
              "VID",
              "CR-A",
              "CR-C",
              "CR-G",
              "CR-H",
              "CR-L",
              "CR-P",
              "CR-SJ",
              "GT-16",
              "GT-15",
              "GT-04",
              "GT-20",
              "GT-02",
              "GT-05",
              "GT-01",
              "GT-13",
              "GT-18",
              "GT-21",
              "GT-22",
              "GT-17",
              "GT-09",
              "GT-14",
              "GT-11",
              "GT-03",
              "GT-12",
              "GT-06",
              "GT-07",
              "GT-10",
              "GT-08",
              "GT-19",
              "HK",
              "KL",
              "NT",
              "AN",
              "AP",
              "AR",
              "AS",
              "BR",
              "CH",
              "CG",
              "DN",
              "DD",
              "DL",
              "GA",
              "GJ",
              "HR",
              "HP",
              "JK",
              "JH",
              "KA",
              "KL",
              "LA",
              "LD",
              "MP",
              "MH",
              "MN",
              "ML",
              "MZ",
              "NL",
              "OR",
              "PY",
              "PB",
              "RJ",
              "SK",
              "TN",
              "TS",
              "TR",
              "UP",
              "UK",
              "WB",
              "CW",
              "CN",
              "CE",
              "CO",
              "DL",
              "D",
              "G",
              "KY",
              "KE",
              "KK",
              "LS",
              "LM",
              "LK",
              "LD",
              "LH",
              "MO",
              "MH",
              "MN",
              "OY",
              "RN",
              "SO",
              "TA",
              "WD",
              "WH",
              "WX",
              "WW",
              "AG",
              "AL",
              "AN",
              "AO",
              "AR",
              "AP",
              "AT",
              "AV",
              "BA",
              "BT",
              "BL",
              "BN",
              "BG",
              "BI",
              "BO",
              "BZ",
              "BS",
              "BR",
              "CA",
              "CL",
              "CB",
              "CI",
              "CE",
              "CT",
              "CZ",
              "CH",
              "CO",
              "CS",
              "CR",
              "KR",
              "CN",
              "EN",
              "FM",
              "FE",
              "FI",
              "FG",
              "FC",
              "FR",
              "GE",
              "GO",
              "GR",
              "IM",
              "IS",
              "AQ",
              "SP",
              "LT",
              "LE",
              "LC",
              "LI",
              "LO",
              "LU",
              "MC",
              "MN",
              "MS",
              "MT",
              "VS",
              "ME",
              "MI",
              "MO",
              "MB",
              "NA",
              "NO",
              "NU",
              "OG",
              "OT",
              "OR",
              "PD",
              "PA",
              "PR",
              "PV",
              "PG",
              "PU",
              "PE",
              "PC",
              "PI",
              "PT",
              "PN",
              "PZ",
              "PO",
              "RG",
              "RA",
              "RC",
              "RE",
              "RI",
              "RN",
              "RM",
              "RO",
              "SA",
              "SS",
              "SV",
              "SI",
              "SR",
              "SO",
              "TA",
              "TE",
              "TR",
              "TO",
              "TP",
              "TN",
              "TV",
              "TS",
              "UD",
              "VA",
              "VE",
              "VB",
              "VC",
              "VR",
              "VV",
              "VI",
              "VT",
              "JP-23",
              "JP-05",
              "JP-02",
              "JP-12",
              "JP-38",
              "JP-18",
              "JP-40",
              "JP-07",
              "JP-21",
              "JP-10",
              "JP-34",
              "JP-01",
              "JP-28",
              "JP-08",
              "JP-17",
              "JP-03",
              "JP-37",
              "JP-46",
              "JP-14",
              "JP-39",
              "JP-43",
              "JP-26",
              "JP-24",
              "JP-04",
              "JP-45",
              "JP-20",
              "JP-42",
              "JP-29",
              "JP-15",
              "JP-44",
              "JP-33",
              "JP-47",
              "JP-27",
              "JP-41",
              "JP-11",
              "JP-25",
              "JP-32",
              "JP-22",
              "JP-09",
              "JP-36",
              "JP-13",
              "JP-31",
              "JP-16",
              "JP-30",
              "JP-06",
              "JP-35",
              "JP-19",
              "JHR",
              "KDH",
              "KTN",
              "KUL",
              "LBN",
              "MLK",
              "NSN",
              "PHG",
              "PNG",
              "PRK",
              "PLS",
              "PJY",
              "SBH",
              "SWK",
              "SGR",
              "TRG",
              "AGU",
              "BCN",
              "BCS",
              "CAM",
              "CHP",
              "CHH",
              "CMX",
              "COA",
              "COL",
              "DUR",
              "GUA",
              "GRO",
              "HID",
              "JAL",
              "MIC",
              "MOR",
              "MEX",
              "NAY",
              "NLE",
              "OAX",
              "PUE",
              "QUE",
              "ROO",
              "SLP",
              "SIN",
              "SON",
              "TAB",
              "TAM",
              "TLA",
              "VER",
              "YUC",
              "ZAC",
              "AUK",
              "BOP",
              "CAN",
              "CIT",
              "GIS",
              "HKB",
              "MWT",
              "MBH",
              "NSN",
              "NTL",
              "OTA",
              "STL",
              "TKI",
              "TAS",
              "WKO",
              "WGN",
              "WTC",
              "JK",
              "BA",
              "GB",
              "IS",
              "KP",
              "PB",
              "SD",
              "AMA",
              "ANC",
              "APU",
              "ARE",
              "AYA",
              "CAJ",
              "CAL",
              "CUS",
              "HUV",
              "HUC",
              "ICA",
              "JUN",
              "LAL",
              "LAM",
              "LIM",
              "LOR",
              "MDD",
              "MOQ",
              "PAS",
              "PIU",
              "PUN",
              "SAM",
              "TAC",
              "TUM",
              "UCA",
              "PH-ABR",
              "PH-AGN",
              "PH-AGS",
              "PH-AKL",
              "PH-ALB",
              "PH-ANT",
              "PH-APA",
              "PH-AUR",
              "PH-BAS",
              "PH-BAN",
              "PH-BTN",
              "PH-BTG",
              "PH-BEN",
              "PH-BIL",
              "PH-BOH",
              "PH-BUK",
              "PH-BUL",
              "PH-CAG",
              "PH-CAN",
              "PH-CAS",
              "PH-CAM",
              "PH-CAP",
              "PH-CAT",
              "PH-CAV",
              "PH-CEB",
              "PH-NCO",
              "PH-DAO",
              "PH-DAV",
              "PH-DAS",
              "PH-EAS",
              "PH-GUI",
              "PH-IFU",
              "PH-ILN",
              "PH-ILS",
              "PH-ILI",
              "PH-ISA",
              "PH-KAL",
              "PH-LUN",
              "PH-LAG",
              "PH-LAN",
              "PH-LAS",
              "PH-LEY",
              "PH-MAG",
              "PH-MAD",
              "PH-MAS",
              "PH-00",
              "PH-MSC",
              "PH-MSR",
              "PH-MOU",
              "PH-NEC",
              "PH-NER",
              "PH-NSA",
              "PH-NUE",
              "PH-NUV",
              "PH-MDC",
              "PH-MDR",
              "PH-PLW",
              "PH-PAM",
              "PH-PAN",
              "PH-QUE",
              "PH-QUI",
              "PH-RIZ",
              "PH-ROM",
              "PH-WSA",
              "PH-SAR",
              "PH-SIG",
              "PH-SOR",
              "PH-SCO",
              "PH-SLE",
              "PH-SUK",
              "PH-SLU",
              "PH-SUN",
              "PH-SUR",
              "PH-TAR",
              "PH-TAW",
              "PH-ZMB",
              "PH-ZAN",
              "PH-ZAS",
              "PH-ZSI",
              "PT-20",
              "PT-01",
              "PT-02",
              "PT-03",
              "PT-04",
              "PT-05",
              "PT-06",
              "PT-07",
              "PT-08",
              "PT-09",
              "PT-10",
              "PT-11",
              "PT-30",
              "PT-12",
              "PT-13",
              "PT-14",
              "PT-15",
              "PT-16",
              "PT-17",
              "PT-18",
              "AB",
              "AR",
              "AG",
              "BC",
              "BH",
              "BN",
              "BT",
              "BR",
              "BV",
              "B",
              "BZ",
              "CL",
              "CS",
              "CJ",
              "CT",
              "CV",
              "DB",
              "DJ",
              "GL",
              "GR",
              "GJ",
              "HR",
              "HD",
              "IL",
              "IS",
              "IF",
              "MM",
              "MH",
              "MS",
              "NT",
              "OT",
              "PH",
              "SJ",
              "SM",
              "SB",
              "SV",
              "TR",
              "TM",
              "TL",
              "VL",
              "VS",
              "VN",
              "KR-26",
              "KR-43",
              "KR-44",
              "KR-27",
              "KR-30",
              "KR-42",
              "KR-29",
              "KR-47",
              "KR-41",
              "KR-48",
              "KR-28",
              "KR-49",
              "KR-45",
              "KR-46",
              "KR-50",
              "KR-11",
              "KR-31",
              "C",
              "VI",
              "AB",
              "A",
              "AL",
              "O",
              "AV",
              "BA",
              "PM",
              "B",
              "BU",
              "CC",
              "CA",
              "S",
              "CS",
              "CE",
              "CR",
              "CO",
              "CU",
              "GI",
              "GR",
              "GU",
              "SS",
              "H",
              "HU",
              "J",
              "LO",
              "GC",
              "LE",
              "L",
              "LU",
              "M",
              "MA",
              "ML",
              "MU",
              "NA",
              "OR",
              "P",
              "PO",
              "SA",
              "TF",
              "SG",
              "SE",
              "SO",
              "T",
              "TE",
              "TO",
              "V",
              "VA",
              "BI",
              "ZA",
              "Z",
              "AZ",
              "AJ",
              "DU",
              "FU",
              "RK",
              "SH",
              "UQ",
              "BFP",
              "ENG",
              "NIR",
              "SCT",
              "WLS",
              "AR",
              "CA",
              "CL",
              "CO",
              "DU",
              "FS",
              "FD",
              "LA",
              "MA",
              "MO",
              "PA",
              "RN",
              "RV",
              "RO",
              "SA",
              "SJ",
              "SO",
              "TA",
              "TT"
            ],
            "example": "VA",
            "type": "string"
          },
          "street1": {
            "description": "Street address line 1",
            "example": "Street 1",
            "type": "string"
          },
          "street2": {
            "description": "Street address line 2",
            "example": "Street 2",
            "type": "string"
          },
          "zip": {
            "description": "Zip code",
            "example": "674561",
            "type": "string"
          }
        },
        "required": [
          "name",
          "country",
          "city",
          "street1",
          "zip"
        ],
        "type": "object"
      },
      "StringRuleItemDTO": {
        "properties": {
          "operator": {
            "description": "Rule operator",
            "example": "CONTAINS",
            "type": "string"
          },
          "value": {
            "description": "Rule value",
            "example": "/products",
            "type": "string"
          }
        },
        "required": [
          "operator",
          "value"
        ],
        "type": "object"
      },
      "StripePaymentMethodDto": {
        "properties": {
          "enableBankDebitOnly": {
            "description": "Enable Bank Debit Only",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "enableBankDebitOnly"
        ],
        "type": "object"
      },
      "SubCategoryInterface": {
        "properties": {
          "posts": {
            "items": {
              "$ref": "#/components/schemas/PostInterface"
            },
            "type": "array"
          },
          "thumbnailUrl": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "visibility": {
            "$ref": "#/components/schemas/visibility"
          }
        },
        "required": [
          "title",
          "visibility"
        ],
        "type": "object"
      },
      "SubmissionSchema": {
        "properties": {
          "contactId": {
            "example": "9NkT25Vor1v4aQatFsv2",
            "type": "string"
          },
          "createdAt": {
            "example": "2020-11-01T18:02:21.000Z",
            "type": "string"
          },
          "email": {
            "example": "test@example.com",
            "type": "string"
          },
          "id": {
            "example": "be759b9a-c3ec-4b29-ba07-fc3c89c77673",
            "type": "string"
          },
          "name": {
            "example": "test",
            "type": "string"
          },
          "others": {
            "$ref": "#/components/schemas/SurveysothersSchema"
          },
          "surveyId": {
            "example": "jjusM6EOngDExnbo2DbU",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SubscriptionPlanDTO": {
        "properties": {
          "baseAmount": {
            "description": "The base amount",
            "example": 0,
            "type": "number"
          },
          "features": {
            "description": "The features",
            "example": [
              "feature1",
              "feature2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "description": "The plan name",
            "example": "Monthly Plan - 999",
            "type": "string"
          },
          "paymentTime": {
            "description": "The payment time",
            "example": "month",
            "type": "string"
          },
          "paymentType": {
            "description": "The payment time",
            "example": "month",
            "type": "string"
          },
          "planId": {
            "description": "The plan id",
            "example": "5ae000000000000000000000",
            "type": "string"
          },
          "resellingAmount": {
            "description": "The reselling amount",
            "example": 0,
            "type": "number"
          }
        },
        "required": [
          "resellingAmount",
          "baseAmount",
          "planId",
          "features",
          "paymentType",
          "name",
          "paymentTime"
        ],
        "type": "object"
      },
      "SubscriptionResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the subscription.",
            "example": "64bf78af39118e4011926cba",
            "type": "string"
          },
          "altId": {
            "description": "AltId is the unique identifier eg: location id.",
            "example": "3SwdhCu3svxI8AKsPJt6",
            "type": "string"
          },
          "altType": {
            "description": "AltType is the type of identifier.",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "amount": {
            "description": "Subscription value.",
            "example": "100",
            "type": "number"
          },
          "contactEmail": {
            "description": "Contact email corresponding to the subscription.",
            "example": "james.bond@example.com",
            "type": "string"
          },
          "contactId": {
            "description": "Contact id corresponding to the subscription.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "contactName": {
            "description": "Contact name corresponding to the subscription.",
            "example": "James Bond",
            "type": "string"
          },
          "createdAt": {
            "description": "The creation timestamp of the subscription.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the subscription.",
            "example": "user123",
            "type": "string"
          },
          "currency": {
            "description": "Currency in which subscription occurred.",
            "example": "USD",
            "type": "string"
          },
          "entityId": {
            "description": "Entity id for the subscription. e.g: order id",
            "example": "62f4db0f3059ecee61379012",
            "type": "string"
          },
          "entitySourceId": {
            "description": "Entity source id for the subscription.",
            "example": "bevrkPbLaDNXFaqfLKMm",
            "type": "string"
          },
          "entitySourceMeta": {
            "description": "Meta content for the entity source of subscription.",
            "example": "{ domain: \"app.gohighlevel.com\", pageId:  \"sxC4lNhFIavEnLZh5KhC\", pageUrl:  \"/v2/preview/sxC4lNhFIavEnLZh5KhC\", stepId: \"7d303d1f-cb85-403d-b548-bf01de5c7bb0\" }",
            "type": "object"
          },
          "entitySourceName": {
            "description": "Entity source name for the subscription.",
            "example": "Attribution Funnel",
            "type": "string"
          },
          "entitySourceType": {
            "description": "Entity source type of subscription (eg: funnel).",
            "example": "funnel",
            "type": "string"
          },
          "entityType": {
            "description": "Entity type of subscription (eg: order).",
            "example": "order",
            "type": "string"
          },
          "ipAddress": {
            "description": "Ip address from where subscription was initiated.",
            "example": "103.100.16.82",
            "type": "string"
          },
          "liveMode": {
            "description": "Subscription is in live / test mode.",
            "example": "false",
            "type": "boolean"
          },
          "paymentProviderConnectedAccount": {
            "description": "Payment provider connected account id for subscription.",
            "example": "ATn0CqrzrWS5ak185Bsb1xCpyzBDOZ8WdRxyFotppLYePTDhiuQ49H5QXO_L-4HKk1GBn7f9_QhbNK2s",
            "type": "string"
          },
          "paymentProviderType": {
            "description": "Payment provider for subscription.",
            "example": "stripe",
            "type": "string"
          },
          "status": {
            "description": "The status of the subscription (e.g., succeeded).",
            "example": "active",
            "type": "object"
          },
          "subscriptionId": {
            "description": "Subscription id for subscription.",
            "example": "I-0UE609H8E43P",
            "type": "string"
          },
          "subscriptionSnapshot": {
            "description": "Snapshot of subscription.",
            "example": "{ status: \"ACTIVE\", status_update_time: \"2022-08-16T11:06:53Z\", id: \"I-0UE609H8E43P\", plan_id: \"P-82K11750F0313430KMLRGE6Y\", start_time: \"2022-08-16T11:05:31Z\", quantity: 1 }",
            "type": "object"
          },
          "updatedAt": {
            "description": "The update timestamp of the subscription.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "status",
          "entitySourceType",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "SurveysEventDataSchema": {
        "properties": {
          "adSource": {
            "example": "example-ad-source",
            "type": "string"
          },
          "contactSessionIds": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactSessionIds"
              }
            ],
            "nullable": true
          },
          "domain": {
            "example": "example.com",
            "type": "string"
          },
          "fbEventId": {
            "example": "event-id-789",
            "type": "string"
          },
          "fbc": {
            "example": "fb.1.123456789.987654321",
            "type": "string"
          },
          "fbp": {
            "example": "fbp.1.987654321.123456789",
            "type": "string"
          },
          "fingerprint": {
            "example": "example-fingerprint",
            "type": "string"
          },
          "medium": {
            "example": "survey",
            "type": "string"
          },
          "mediumId": {
            "example": "medium-id-123",
            "type": "string"
          },
          "page": {
            "$ref": "#/components/schemas/PageDetailsSchema"
          },
          "pageVisitType": {
            "example": "survey",
            "type": "string"
          },
          "parentId": {
            "example": "parent-id-456",
            "type": "string"
          },
          "parentName": {
            "example": "Parent Survey",
            "type": "string"
          },
          "referrer": {
            "example": "https://staging.gohighlevel.com",
            "type": "string"
          },
          "source": {
            "example": "Direct traffic",
            "type": "string"
          },
          "timestamp": {
            "example": 1234567890,
            "type": "number"
          },
          "type": {
            "example": "page-visit",
            "type": "string"
          },
          "version": {
            "example": "v3",
            "type": "string"
          }
        },
        "type": "object"
      },
      "SurveysothersSchema": {
        "properties": {
          "__custom_field_id__": {
            "example": "20",
            "type": "string"
          },
          "__submissions_other_field__": {
            "example": "john@example.com",
            "type": "string"
          },
          "eventData": {
            "$ref": "#/components/schemas/SurveysEventDataSchema"
          },
          "fieldsOriSequance": {
            "example": [
              "full_name",
              "first_name",
              "last_name",
              "phone",
              "email"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "TagsDTO": {
        "properties": {
          "tags": {
            "description": "List of tags to add or remove",
            "example": [
              "minim",
              "velit magna"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "tags"
        ],
        "type": "object"
      },
      "TargetAudienceDTO": {
        "properties": {
          "exclude": {
            "description": "Excluded targeting attributes",
            "example": [],
            "items": {
              "items": {
                "$ref": "#/components/schemas/SelectedAttributeDTO"
              },
              "type": "array"
            },
            "type": "array"
          },
          "include": {
            "description": "Included targeting attributes (groups of ANDed attributes, ORed together)",
            "example": [
              [
                {
                  "categoryName": "Location",
                  "facet": "urn:li:adTargetingFacet:locations",
                  "name": "United States",
                  "urn": "urn:li:geo:103644278"
                }
              ]
            ],
            "items": {
              "items": {
                "$ref": "#/components/schemas/SelectedAttributeDTO"
              },
              "type": "array"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "TaskByIsSuccessfulResponseDto": {
        "properties": {
          "task": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TaskSchema"
              }
            ],
            "description": "Task details",
            "example": {
              "assignedTo": "tesTUcmRxWrjqzJS8EjkxNK",
              "body": "testing",
              "completed": true,
              "contactId": "lJpzYrWdpkC2hX6t2yue",
              "dueDate": "2021-07-08T02:30:00.000Z",
              "id": "lJpzYrWdpkC2hX6t2yue",
              "title": "test"
            }
          }
        },
        "type": "object"
      },
      "TaskSchema": {
        "properties": {
          "assignedTo": {
            "description": "User Id to whom the task is assigned",
            "example": "tesTUcmRxWrjqzJS8EjkxNKting",
            "type": "string"
          },
          "body": {
            "description": "Body or description of the task",
            "example": "testing",
            "type": "string"
          },
          "completed": {
            "description": "Whether the task is completed",
            "example": true,
            "type": "boolean"
          },
          "contactId": {
            "description": "Contact Id associated with the task",
            "example": "lJpzYrWdpkC2hX6t2yue",
            "type": "string"
          },
          "dueDate": {
            "description": "Due date of the task (ISO 8601 format)",
            "example": "2021-07-08T02:30:00.000Z",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the task",
            "example": "lJpzYrWdpkC2hX6t2yue",
            "type": "string"
          },
          "title": {
            "description": "Title of the task",
            "example": "test",
            "type": "string"
          }
        },
        "type": "object"
      },
      "TaskSearchParamsDto": {
        "properties": {
          "assignedTo": {
            "description": "Assigned User Ids",
            "example": [
              "0004Mtfsd11SBU1mBPgd"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "businessId": {
            "description": "Bussiness Id",
            "example": "6348240b98722079e5417332",
            "type": "string"
          },
          "completed": {
            "description": "Task Completed Or Pending",
            "example": true,
            "type": "boolean"
          },
          "contactId": {
            "description": "Contact Ids",
            "example": [
              "dSMo5jnqkJyh8YeGXM7k",
              "j5WESpmRj816VtyUuWwh"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "limit": {
            "default": 25,
            "description": "Limit To Api",
            "example": 10,
            "type": "number"
          },
          "query": {
            "description": "Search Value",
            "example": "Task Name",
            "type": "string"
          },
          "skip": {
            "default": 0,
            "description": "Number Of Tasks To Skip",
            "example": 10,
            "type": "number"
          }
        },
        "type": "object"
      },
      "TasksListSuccessfulResponseDto": {
        "properties": {
          "tasks": {
            "description": "List of tasks",
            "example": [
              {
                "assignedTo": "tesTUcmRxWrjqzJS8EjkxNK",
                "body": "testing",
                "completed": true,
                "contactId": "lJpzYrWdpkC2hX6t2yue",
                "dueDate": "2021-07-08T02:30:00.000Z",
                "id": "lJpzYrWdpkC2hX6t2yue",
                "title": "test"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/TaskSchema"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "TeamMember": {
        "properties": {
          "isPrimary": {
            "description": "Marks a user as primary. This property is required in case of collective booking calendars. Only one user can be primary.",
            "type": "boolean"
          },
          "locationConfigurations": {
            "description": "Meeting location configuration for event calendar.\n- *Multiple locations are allowed only when one team member is selected.*\n- *For **Class booking** and **Collective** calendars, only one location configuration is allowed for each team member.*",
            "items": {
              "$ref": "#/components/schemas/LocationConfiguration"
            },
            "type": "array"
          },
          "meetingLocation": {
            "deprecated": true,
            "description": "🚨 Deprecated! Use `locationConfigurations.location` instead.",
            "readOnly": true,
            "type": "string"
          },
          "meetingLocationType": {
            "default": "custom",
            "deprecated": true,
            "description": "🚨 Deprecated! Use `locationConfigurations.kind` instead.",
            "enum": [
              "custom",
              "zoom",
              "gmeet",
              "phone",
              "address",
              "teams",
              "booker"
            ],
            "example": "custom",
            "readOnly": true,
            "type": "string"
          },
          "priority": {
            "default": 0.5,
            "enum": [
              0,
              0.5,
              1
            ],
            "type": "number"
          },
          "userId": {
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          }
        },
        "required": [
          "userId"
        ],
        "type": "object"
      },
      "TeamMemberResponse": {
        "properties": {
          "isPrimary": {
            "description": "Marks a user as primary. This property is required in case of collective booking calendars. Only one user can be primary.",
            "type": "boolean"
          },
          "locationConfigurations": {
            "description": "Meeting location configurations",
            "items": {
              "$ref": "#/components/schemas/LocationConfigurationResponse"
            },
            "type": "array"
          },
          "meetingLocation": {
            "deprecated": true,
            "description": "🚨 Deprecated! Use `locationConfigurations.location` instead.",
            "readOnly": true,
            "type": "string"
          },
          "meetingLocationType": {
            "default": "custom",
            "deprecated": true,
            "description": "🚨 Deprecated! Use `locationConfigurations.kind` instead.",
            "enum": [
              "custom",
              "zoom",
              "gmeet",
              "phone",
              "address",
              "teams",
              "booker"
            ],
            "example": "custom",
            "readOnly": true,
            "type": "string"
          },
          "priority": {
            "default": 0.5,
            "enum": [
              0,
              0.5,
              1
            ],
            "type": "number"
          },
          "userId": {
            "example": "ocQHyuzHvysMo5N5VsXc",
            "type": "string"
          }
        },
        "required": [
          "userId"
        ],
        "type": "object"
      },
      "TemplateListItemPublicV2Dto": {
        "properties": {
          "childCount": {
            "description": "Children count for folder resources",
            "example": 3,
            "type": "number"
          },
          "createdAt": {
            "description": "Created timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type for template resources",
            "enum": [
              "html",
              "builder",
              "text"
            ],
            "example": "builder",
            "type": "string"
          },
          "hasChildren": {
            "description": "Whether folder has child resources",
            "example": true,
            "type": "boolean"
          },
          "id": {
            "description": "Resource ID",
            "example": "67f15c2ae99226d5bcccb8f3",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether template is plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Resource name",
            "example": "February Newsletter",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "previewUrl": {
            "description": "Preview URL",
            "example": "https://example.com/preview",
            "type": "string"
          },
          "type": {
            "description": "Resource type",
            "enum": [
              "template",
              "folder"
            ],
            "example": "template",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "type"
        ],
        "type": "object"
      },
      "TemplateListPaginationResponseDTO": {
        "properties": {
          "data": {
            "description": "Array of templates",
            "items": {
              "$ref": "#/components/schemas/TemplateListResponseDTO"
            },
            "type": "array"
          },
          "total": {
            "description": "Total number of templates",
            "example": 2,
            "type": "number"
          },
          "traceId": {
            "description": "Trace ID for request tracking",
            "example": "d5656876-86a5-46fb-84df-788f1da7937a",
            "type": "string"
          }
        },
        "required": [
          "data",
          "total"
        ],
        "type": "object"
      },
      "TemplateListResponseDTO": {
        "properties": {
          "_id": {
            "description": "Template ID",
            "example": "685d11c371c22e636e9c04b2",
            "type": "string"
          },
          "createdAt": {
            "description": "Template creation date",
            "example": "2025-06-26T09:24:19.305Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the template is deleted",
            "example": false,
            "type": "boolean"
          },
          "docFormUrl": {
            "description": "Document form URL (only present when isPublicDocument is true)",
            "example": "https://staging.sendlink.co/documents/doc-form/685d11c371c22e636e9c04b2?locale=en_US",
            "type": "string"
          },
          "documentCount": {
            "description": "Document count (only present when isPublicDocument is true)",
            "example": 0,
            "type": "number"
          },
          "id": {
            "description": "Template ID (alias for _id)",
            "example": "685d11c371c22e636e9c04b2",
            "type": "string"
          },
          "isPublicDocument": {
            "description": "Whether the template is a public document",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "5rORm9p7RtxWQPzBIbTG",
            "type": "string"
          },
          "name": {
            "description": "Template name",
            "example": "New Template",
            "type": "string"
          },
          "type": {
            "description": "Template type",
            "enum": [
              "proposal",
              "estimate",
              "contentLibrary"
            ],
            "example": "proposal",
            "type": "string"
          },
          "updatedAt": {
            "description": "Template last update date",
            "example": "2025-06-26T09:27:32.119Z",
            "type": "string"
          },
          "updatedBy": {
            "description": "User ID who last updated the template",
            "example": "K9PSPnWjfNoE8DCf5LJZ",
            "type": "string"
          },
          "version": {
            "description": "Template version",
            "example": 2,
            "type": "number"
          }
        },
        "required": [
          "_id",
          "deleted",
          "version",
          "name",
          "locationId",
          "type",
          "updatedBy",
          "isPublicDocument",
          "createdAt",
          "updatedAt",
          "id"
        ],
        "type": "object"
      },
      "TemplateSettings": {
        "properties": {},
        "type": "object"
      },
      "Text2PayDto": {
        "properties": {
          "action": {
            "description": "create invoice in draft mode or send mode",
            "enum": [
              "draft",
              "send"
            ],
            "example": "draft",
            "type": "string"
          },
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact information to send the invoice to"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-14",
            "type": "string"
          },
          "id": {
            "description": "id of invoice to update. If skipped, a new invoice will be created",
            "type": "string"
          },
          "includeTermsNote": {
            "description": "include terms & notes with receipts",
            "example": true,
            "type": "boolean"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "1001",
            "type": "string"
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "items": {
            "description": "An array of items for the invoice.",
            "items": {
              "$ref": "#/components/schemas/InvoiceItemDto"
            },
            "type": "array"
          },
          "lateFeesConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesConfigurationDto"
              }
            ],
            "description": "late fees configuration"
          },
          "liveMode": {
            "type": "boolean"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the invoice"
          },
          "name": {
            "description": "Invoice Name",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentMethods": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentMethodDto"
              }
            ],
            "description": "Payment Methods for Invoices"
          },
          "paymentSchedule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentScheduleDto"
              }
            ],
            "description": "split invoice into payment schedule summing up to full invoice amount"
          },
          "sentTo": {
            "$ref": "#/components/schemas/SentToDto"
          },
          "termsNotes": {
            "description": "Terms notes, Also supports HTML markups",
            "example": "<p>This is a default terms.</p>",
            "type": "string"
          },
          "tipsConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TipsConfigurationDto"
              }
            ],
            "description": "tips configuration for the invoice"
          },
          "title": {
            "description": "Title for the invoice",
            "example": "INVOICE",
            "type": "string"
          },
          "userId": {
            "description": "id of user generating invoice",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "currency",
          "items",
          "contactDetails",
          "issueDate",
          "sentTo",
          "liveMode",
          "action",
          "userId"
        ],
        "type": "object"
      },
      "Text2PayInvoiceResponseDto": {
        "properties": {
          "invoice": {
            "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
          },
          "invoiceUrl": {
            "description": "preview url of generated invoice",
            "type": "string"
          }
        },
        "required": [
          "invoice",
          "invoiceUrl"
        ],
        "type": "object"
      },
      "TextField": {
        "properties": {
          "fieldValue": {
            "description": "Text value for the custom field (preferred).",
            "example": "My Text",
            "type": "string"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": "My Text",
            "type": "string"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "ThankYouPage": {
        "properties": {
          "body": {
            "description": "Thank you page body",
            "example": "We will contact you soon",
            "type": "string"
          },
          "businessPhone": {
            "description": "Business phone number",
            "example": "+1234567890",
            "type": "string"
          },
          "buttonLink": {
            "description": "Button destination link",
            "example": "https://example.com",
            "type": "string"
          },
          "buttonText": {
            "description": "Button text label",
            "example": "Visit Website",
            "type": "string"
          },
          "buttonType": {
            "description": "Button action type",
            "example": "VIEW_WEBSITE",
            "type": "string"
          },
          "countryCode": {
            "description": "Phone country code",
            "example": "US",
            "type": "string"
          },
          "title": {
            "description": "Thank you page title",
            "example": "Thank You!",
            "type": "string"
          }
        },
        "required": [
          "title",
          "body",
          "buttonText",
          "buttonType"
        ],
        "type": "object"
      },
      "TikTokOAuthAccountSchema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseOAuthAccountSchema"
          },
          {
            "properties": {
              "platform": {
                "enum": [
                  "tiktok"
                ],
                "example": "tiktok",
                "type": "string"
              }
            },
            "type": "object"
          }
        ]
      },
      "TiktokPostSchema": {
        "properties": {
          "enableComment": {
            "description": "Allow users to comment on the video. Default is determined by account settings.",
            "example": true,
            "type": "boolean"
          },
          "enableDuet": {
            "description": "Allow users to create Duet videos with your content.\n\n**Duet:** Side-by-side video featuring your content and the creator's reaction/addition.",
            "example": true,
            "type": "boolean"
          },
          "enableStitch": {
            "description": "Allow users to create Stitch videos with your content.\n\n**Stitch:** Clips up to 5 seconds of your video that creators can use in their own videos.",
            "example": true,
            "type": "boolean"
          },
          "privacyLevel": {
            "description": "Privacy level controlling who can view the video.\n\n**Available Values:**\n- `PUBLIC_TO_EVERYONE` - Anyone can view (default)\n- `MUTUAL_FOLLOW_FRIENDS` - Only mutual followers can view\n- `SELF_ONLY` - Only you can view (private)\n\n**Note:** If set to `SELF_ONLY`, `videoDisclosure` must be `false`.",
            "enum": [
              "PUBLIC_TO_EVERYONE",
              "MUTUAL_FOLLOW_FRIENDS",
              "SELF_ONLY"
            ],
            "example": "PUBLIC_TO_EVERYONE",
            "type": "string"
          },
          "promoteOtherBrand": {
            "description": "Indicates if the video promotes a third-party brand or product.\n\n**Required:** Must be `true` if `videoDisclosure` is enabled and you're promoting another brand.",
            "example": false,
            "type": "boolean"
          },
          "promoteYourBrand": {
            "description": "Indicates if the video promotes your own brand or product.\n\n**Required:** Must be `true` if `videoDisclosure` is enabled and you're promoting your own brand.",
            "example": false,
            "type": "boolean"
          },
          "videoDisclosure": {
            "description": "Enable branded content disclosure. Required when video is promotional content.\n\n**Validations:**\n- Cannot be `true` if `privacyLevel` is `SELF_ONLY`\n- If enabled, at least one of `promoteYourBrand` or `promoteOtherBrand` must be `true`",
            "example": false,
            "type": "boolean"
          }
        },
        "required": [
          "privacyLevel"
        ],
        "type": "object"
      },
      "TiktokProfileSchema": {
        "properties": {
          "avatar": {
            "description": "Avatar of profile account",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "id": {
            "description": "Id",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "isConnected": {
            "description": "Is connected",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of account",
            "example": "Account Name",
            "type": "string"
          },
          "type": {
            "description": "Tiktok Account Type must be one of the following values: business, profile",
            "example": "BUSINESS",
            "type": "object"
          },
          "username": {
            "description": "Username of account",
            "example": "User_name",
            "type": "string"
          },
          "verified": {
            "description": "Is verified",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "TimeSchema": {
        "properties": {
          "hours": {
            "description": "Hour component of the time (0-23)",
            "example": 23,
            "type": "number"
          },
          "minutes": {
            "description": "Minute component of the time (0-59)",
            "example": 56,
            "type": "number"
          },
          "seconds": {
            "description": "Second component of the time (0-59)",
            "example": 34,
            "type": "number"
          }
        },
        "required": [
          "hours",
          "minutes",
          "seconds"
        ],
        "type": "object"
      },
      "TimeSlotDTO": {
        "properties": {
          "dayOfWeek": {
            "description": "Day of the week (0-6)",
            "example": 0,
            "type": "number"
          },
          "time": {
            "description": "Time in HH:mm format",
            "example": "09:00",
            "type": "string"
          }
        },
        "required": [
          "dayOfWeek",
          "time"
        ],
        "type": "object"
      },
      "TipsConfigurationDto": {
        "properties": {
          "tipsEnabled": {
            "description": "Tips enabled status",
            "example": true,
            "type": "boolean"
          },
          "tipsPercentage": {
            "description": "Percentage of tips allowed",
            "example": [
              5,
              10,
              15
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "tipsPercentage",
          "tipsEnabled"
        ],
        "type": "object"
      },
      "TotalSummaryDto": {
        "properties": {
          "discount": {
            "description": "discount",
            "example": 0,
            "type": "number"
          },
          "subTotal": {
            "description": "subTotal",
            "example": 999,
            "type": "number"
          },
          "tax": {
            "description": "tax",
            "example": 0,
            "type": "number"
          }
        },
        "required": [
          "subTotal",
          "discount",
          "tax"
        ],
        "type": "object"
      },
      "TrainDiscoveredUrlsDTO": {
        "properties": {
          "knowledgeBaseId": {
            "description": "knowledge base id",
            "example": "jjkkxftgvbhjmn,",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "operationId": {
            "description": "operation id as string",
            "example": "688b640bcb02d498102a13f0,",
            "type": "string"
          },
          "urlIds": {
            "description": "List of Object ids of the discovered urls",
            "example": [
              "688b640bcb02d498102a13ec",
              "688b640bcb02d498102a13ea"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId",
          "urlIds",
          "knowledgeBaseId",
          "operationId"
        ],
        "type": "object"
      },
      "TrainDiscoveredUrlsResponseDTO": {
        "properties": {
          "success": {
            "description": "Indicates if the operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "TranslationDTO": {
        "properties": {
          "enabled": {
            "description": "Enables language translation for agent conversations. Default: false",
            "example": false,
            "type": "boolean"
          },
          "language": {
            "description": "Target language code for translation (e.g., \"es\" for Spanish, \"fr\" for French).",
            "example": "es",
            "type": "string"
          }
        },
        "required": [
          "enabled"
        ],
        "type": "object"
      },
      "TranslationSchema": {
        "properties": {
          "enabled": {
            "description": "Whether translation is enabled",
            "example": false,
            "type": "boolean"
          },
          "language": {
            "description": "Translation language code",
            "example": "es",
            "type": "string"
          }
        },
        "type": "object"
      },
      "TwilioSchema": {
        "properties": {
          "authToken": {
            "description": "Auth token provided by Twilio",
            "example": "77_XXXXXXXXXXX",
            "type": "string"
          },
          "sid": {
            "description": "SID provided by Twilio",
            "example": "AC_XXXXXXXXXXX",
            "type": "string"
          }
        },
        "required": [
          "sid",
          "authToken"
        ],
        "type": "object"
      },
      "TwitterProfileSchema": {
        "properties": {
          "avatar": {
            "description": "Avatar of profile",
            "example": "ZHl1OWpfZEMyeWc5UjJOOU51RVNOal",
            "type": "string"
          },
          "id": {
            "description": "ID of profile",
            "example": "ZHl1OWpfZEMyeWc5UjJOOU51RVNOal",
            "type": "string"
          },
          "isConnected": {
            "description": "Is connected",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of profile",
            "example": "Twitter Account name",
            "type": "string"
          },
          "protected": {
            "description": "Is protected",
            "example": true,
            "type": "boolean"
          },
          "username": {
            "description": "Username of profile",
            "example": "sample_user",
            "type": "string"
          },
          "verified": {
            "description": "Is verified",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "TxnResponseSchema": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the transaction.",
            "example": "61dd0feac077f72010f78804",
            "type": "string"
          },
          "altId": {
            "description": "AltId is the unique identifier eg: location id.",
            "example": "3SwdhCu3svxI8AKsPJt6",
            "type": "string"
          },
          "altType": {
            "description": "AltType is the type of identifier.",
            "example": "location",
            "type": "string"
          },
          "amount": {
            "description": "Transaction value.",
            "example": "100",
            "type": "number"
          },
          "amountRefunded": {
            "description": "Transaction amount refunded.",
            "example": "10",
            "type": "number"
          },
          "chargeId": {
            "description": "Charge id for transaction.",
            "example": "in_1KGcXDCScnf89tZohCsmImwE",
            "type": "string"
          },
          "chargeSnapshot": {
            "description": "Charge snapshot of transaction.",
            "example": "{ id: \"in_1KGcXDCScnf89tZohCsmImwE\", object: \"invoice\", account_country: \"US\",  account_name:  \"GHL-Testing\" }",
            "type": "object"
          },
          "contactEmail": {
            "description": "Contact email corresponding to the transaction.",
            "example": "james.bond@example.com",
            "type": "string"
          },
          "contactId": {
            "description": "Contact id corresponding to the transaction.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "contactName": {
            "description": "Contact name corresponding to the transaction.",
            "example": "James Bond",
            "type": "string"
          },
          "createdAt": {
            "description": "The creation timestamp of the transaction.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "createdBy": {
            "description": "User ID who created the transaction.",
            "example": "user123",
            "type": "string"
          },
          "currency": {
            "description": "Currency in which transaction occurred.",
            "example": "USD",
            "type": "string"
          },
          "entityId": {
            "description": "Entity id for the transaction. e.g: order id",
            "example": "61dd0fe9c077f73e67f78803",
            "type": "string"
          },
          "entitySourceId": {
            "description": "Entity source id for the transaction.",
            "example": "BDBMEghdIUaqMPEsK349",
            "type": "string"
          },
          "entitySourceMeta": {
            "description": "Meta content for the entity source of transaction.",
            "example": "{ domain: \"app.gohighlevel.com\", pageId:  \"rBVhyYhMsbxbO8ZqOcei\", pageUrl:  \"/v2/preview/rBVhyYhMsbxbO8ZqOcei\", stepId:   \"5a772f62-3fbc-418b-af1b-be8929dd64c2\"}",
            "type": "object"
          },
          "entitySourceName": {
            "description": "Entity source name for the transaction.",
            "example": "new funnel",
            "type": "string"
          },
          "entitySourceSubType": {
            "description": "Entity source sub-type of the transactions.",
            "example": "two_step_order_form",
            "type": "string"
          },
          "entitySourceType": {
            "description": "Entity source type of transaction (eg: funnel).",
            "example": "funnel",
            "type": "string"
          },
          "entityType": {
            "description": "Entity type of transaction (eg: order).",
            "example": "order",
            "type": "string"
          },
          "fulfilledAt": {
            "description": "The charged timestamp of the transaction.",
            "example": "2023-11-20T10:27:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "ipAddress": {
            "description": "Ip address from where transaction was initiated.",
            "example": "107.178.194.224",
            "type": "string"
          },
          "liveMode": {
            "description": "Transaction is in live / test mode.",
            "example": "false",
            "type": "boolean"
          },
          "mergedFromContactId": {
            "description": "ID of the contact that was merged from.",
            "example": "XPLSw2SVagl12LMDeTmQ",
            "type": "string"
          },
          "paymentMethod": {
            "description": "Transaction payment method details.",
            "example": "{ card: { \"brand\": \"discover\", \"last4\": \"0012\" } }",
            "type": "object"
          },
          "paymentProviderConnectedAccount": {
            "description": "Payment provider  account id for transaction.",
            "example": "612ca676b484b241fef9d962",
            "type": "string"
          },
          "paymentProviderType": {
            "description": "Payment provider for transaction.",
            "example": "stripe",
            "type": "string"
          },
          "status": {
            "description": "The status of the transaction (e.g., succeeded).",
            "example": "succeeded",
            "type": "object"
          },
          "subscriptionId": {
            "description": "Subscription id for transaction.",
            "example": "sub_1KGcXDCScnf89tZoVkoEMCEL",
            "type": "string"
          },
          "updatedAt": {
            "description": "The update timestamp of the transaction.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "status",
          "entitySourceType",
          "createdAt",
          "updatedAt",
          "fulfilledAt"
        ],
        "type": "object"
      },
      "USBankAccountDto": {
        "properties": {
          "bank_name": {
            "type": "string"
          },
          "last4": {
            "type": "string"
          }
        },
        "required": [
          "bank_name",
          "last4"
        ],
        "type": "object"
      },
      "UnitCostDTO": {
        "properties": {
          "amount": {
            "description": "Bid amount in currency minor units",
            "example": 500,
            "type": "number"
          }
        },
        "required": [
          "amount"
        ],
        "type": "object"
      },
      "UnprocessableDTO": {
        "properties": {
          "error": {
            "example": "Unprocessable Entity",
            "type": "string"
          },
          "message": {
            "example": [
              "Unprocessable Entity"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "statusCode": {
            "example": 422,
            "type": "number"
          }
        },
        "type": "object"
      },
      "UpdateAndScheduleInvoiceScheduleResponseDto": {
        "properties": {
          "_id": {
            "description": "Schedule Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "compiledTermsNotes": {
            "description": "Compiled terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoices": {
            "description": "List of invoices",
            "items": {
              "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
            },
            "type": "array"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "status": {
            "description": "Schedule Status",
            "example": "draft",
            "type": "object"
          },
          "termsNotes": {
            "description": "Terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "altId",
          "altType",
          "name",
          "invoices",
          "businessDetails",
          "currency",
          "contactDetails",
          "items",
          "total",
          "title",
          "termsNotes",
          "compiledTermsNotes",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "UpdateAssociationReqDto": {
        "properties": {
          "firstObjectLabel": {
            "example": "student",
            "type": "object"
          },
          "secondObjectLabel": {
            "example": "tutor",
            "type": "object"
          }
        },
        "required": [
          "firstObjectLabel",
          "secondObjectLabel"
        ],
        "type": "object"
      },
      "UpdateAvailability": {
        "properties": {
          "date": {
            "description": "Formulate the date string in the format of `<YYYY-MM-DD in local timezone>T00:00:00.000Z`.",
            "example": "2023-09-24T00:00:00.000Z",
            "type": "string"
          },
          "deleted": {
            "default": false,
            "type": "boolean"
          },
          "hours": {
            "items": {
              "$ref": "#/components/schemas/Hour"
            },
            "type": "array"
          },
          "id": {
            "description": "The ID of the custom availability object. It is required while updating or deleting the existing custom date availability",
            "type": "string"
          }
        },
        "required": [
          "date",
          "hours"
        ],
        "type": "object"
      },
      "UpdateBlogPostParams": {
        "properties": {
          "author": {
            "description": "This needs to be author id, which you can get from the author get api call.",
            "example": "6683abde331c041f32c07aea",
            "type": "string"
          },
          "blogId": {
            "description": "You can find the blog id from blog site dashboard link",
            "example": "Blog ID",
            "type": "string"
          },
          "canonicalLink": {
            "example": "https://tryghl.blog/post/testing-unsplash",
            "type": "string"
          },
          "categories": {
            "description": "This needs to be array of category ids, which you can get from the category get api call.",
            "example": [
              "9c48df2694a849b6089f9d0d3513efe",
              "6683abde331c041f32c07aee"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "example": "A short description",
            "type": "string"
          },
          "imageAltText": {
            "example": "Alt text for your blog image",
            "type": "string"
          },
          "imageUrl": {
            "example": "Image URl",
            "type": "string"
          },
          "locationId": {
            "example": "Location ID",
            "type": "string"
          },
          "publishedAt": {
            "description": "Provide ISO timestamp",
            "example": "2025-02-05T18:30:47.000Z",
            "type": "string"
          },
          "rawHTML": {
            "example": "<h1>Your blog content</h1>",
            "type": "string"
          },
          "status": {
            "enum": [
              "DRAFT",
              "PUBLISHED",
              "SCHEDULED",
              "ARCHIVED"
            ],
            "example": "PUBLISHED",
            "schema": {
              "type": "string"
            },
            "type": "string"
          },
          "tags": {
            "example": [
              "blog",
              "seo"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "title": {
            "example": "Your blog title",
            "type": "string"
          },
          "urlSlug": {
            "example": "any-blog-post-url",
            "type": "string"
          },
          "wordCount": {
            "example": 100,
            "type": "number"
          }
        },
        "required": [
          "title",
          "locationId",
          "blogId",
          "imageUrl",
          "description",
          "rawHTML",
          "status",
          "imageAltText",
          "categories",
          "author",
          "urlSlug",
          "publishedAt",
          "wordCount"
        ],
        "type": "object"
      },
      "UpdateBrandBoardBody": {
        "properties": {
          "colors": {
            "description": "Array of colors for the brand board",
            "example": [
              {
                "hex": "#FF5733",
                "hexa": "#FF5733FF",
                "label": "Brand Orange",
                "rgb": "rgb(255, 87, 51)",
                "rgba": "rgba(255, 87, 51, 1)"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Color"
            },
            "type": "array"
          },
          "default": {
            "description": "Set as the default brand board for this location",
            "example": true,
            "type": "boolean"
          },
          "fonts": {
            "description": "Array of fonts for the brand board",
            "example": [
              {
                "fallback": "sans-serif",
                "font": "Montserrat",
                "label": "Heading Font"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Font"
            },
            "type": "array"
          },
          "logos": {
            "description": "Array of logos for the brand board",
            "example": [
              {
                "label": "Primary Logo",
                "path": "/locations/ve9EPM428h8vShlRW1KT/logos/my-logo.png",
                "url": "https://storage.googleapis.com/bucket/logos/my-logo.png"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Logo"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the brand board",
            "example": "My Brandboard 2",
            "type": "string"
          },
          "parentId": {
            "description": "Parent folder ID in media library (reserved for future use)",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateBrandVoiceAnswersDto": {
        "properties": {
          "brandName": {
            "description": "Brand Name",
            "example": "Acme Inc",
            "type": "string"
          },
          "brandPromise": {
            "description": "Brand Promise",
            "example": "We deliver on time, every time",
            "type": "string"
          },
          "brandPurpose": {
            "description": "Brand Purpose",
            "example": "To empower small businesses with technology",
            "type": "string"
          },
          "brandValues": {
            "description": "Brand Values",
            "example": "Integrity, Excellence, Innovation",
            "type": "string"
          },
          "businessHours": {
            "description": "Business Hours",
            "example": "Mon-Fri 9am-5pm",
            "type": "string"
          },
          "businessType": {
            "description": "Business Type",
            "example": "Software Development",
            "type": "string"
          },
          "callToAction": {
            "description": "Call to Action",
            "example": "Schedule a demo today",
            "type": "string"
          },
          "companyAddress": {
            "description": "Company Address",
            "example": "123 Main St, Anytown, CA",
            "type": "string"
          },
          "companyEmail": {
            "description": "Company Email",
            "example": "contact@example.com",
            "type": "string"
          },
          "companyWebsite": {
            "description": "Company Website",
            "example": "https://example.com",
            "type": "string"
          },
          "competitiveAdvantage": {
            "description": "Competitive Advantage",
            "example": "Proprietary AI technology",
            "type": "string"
          },
          "customerPainPoints": {
            "description": "Customer Pain Points",
            "example": "Difficulty with time management",
            "type": "string"
          },
          "phone": {
            "description": "Phone Information",
            "example": {
              "countryCode": "US",
              "phoneNumber": "5551234567"
            },
            "type": "object"
          },
          "risksOfInaction": {
            "description": "Risks of Inaction",
            "example": "Falling behind competitors",
            "type": "string"
          },
          "targetAudience": {
            "description": "Target Audience",
            "example": "Small business owners",
            "type": "string"
          },
          "toneOfVoice": {
            "description": "Tone of Voice",
            "example": "Professional and friendly",
            "type": "string"
          },
          "uniqueSellingProposition": {
            "description": "Unique Selling Proposition",
            "example": "The only solution that integrates with all major platforms",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateBrandVoicePublicV1BodyDto": {
        "properties": {
          "answers": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UpdateBrandVoiceAnswersDto"
              }
            ],
            "description": "Updated answers",
            "example": {
              "brandName": "Brand Name",
              "toneOfVoice": "Friendly"
            }
          },
          "name": {
            "description": "Name",
            "example": "My Brand Voice",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateBrandVoicePublicV1ResponseDto": {
        "properties": {
          "answers": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BrandVoiceAnswersPublicV1Dto"
              }
            ],
            "description": "Brand voice answers"
          },
          "createdAt": {
            "description": "Creation timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the brand voice has been soft deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Brand voice ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isDefault": {
            "description": "Whether this is the default brand voice",
            "example": false,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "oHJiAh0wDG3BzmzACVD6",
            "type": "string"
          },
          "name": {
            "description": "Brand voice name",
            "example": "My Brand Voice",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last update timestamp",
            "example": "2024-01-05T12:00:00.000Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "isDefault",
          "createdAt",
          "updatedAt",
          "locationId",
          "deleted"
        ],
        "type": "object"
      },
      "UpdateBusinessDto": {
        "properties": {
          "address": {
            "example": "street adress",
            "type": "string"
          },
          "city": {
            "example": "new york",
            "type": "string"
          },
          "country": {
            "example": "us",
            "type": "string"
          },
          "description": {
            "example": "business description",
            "type": "string"
          },
          "email": {
            "example": "john@example.com",
            "type": "string"
          },
          "name": {
            "example": "Microsoft",
            "type": "string"
          },
          "phone": {
            "example": "+18832327657",
            "type": "string"
          },
          "postalCode": {
            "example": "12312312",
            "type": "string"
          },
          "state": {
            "example": "new york",
            "type": "string"
          },
          "website": {
            "example": "www.xyz.com",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateBusinessResponseDto": {
        "properties": {
          "buiseness": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDto"
              }
            ],
            "description": "Business Response"
          },
          "success": {
            "description": "Success Value",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "buiseness"
        ],
        "type": "object"
      },
      "UpdateCalendarNotificationsDTO": {
        "properties": {
          "additionalEmailIds": {
            "description": "Additional email addresses to receive notifications.",
            "example": [
              "example1@example.com",
              "example2@example.com"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "additionalPhoneNumbers": {
            "description": "Additional phone numbers to receive notifications.",
            "example": [
              "+919876744444",
              "+919876744445"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "afterTime": {
            "description": "Specifies the time after which the follow-up notification should be sent. This is not required for other notification types.",
            "example": [
              {
                "timeOffset": 1,
                "unit": "hours"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SchedulesDTO"
            },
            "type": "array"
          },
          "beforeTime": {
            "description": "Specifies the time before which the reminder notification should be sent. This is not required for other notification types.",
            "example": [
              {
                "timeOffset": 1,
                "unit": "hours"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/SchedulesDTO"
            },
            "type": "array"
          },
          "body": {
            "description": "Body  for email notification. Not necessary for in-App notification",
            "type": "string"
          },
          "channel": {
            "description": "Notification channel",
            "enum": [
              "email",
              "inApp",
              "sms",
              "whatsapp"
            ],
            "type": "string"
          },
          "deleted": {
            "default": false,
            "description": "Marks the notification as deleted (soft delete)",
            "type": "boolean"
          },
          "fromAddress": {
            "description": "From address for email notification",
            "type": "string"
          },
          "fromName": {
            "description": "From name for email/sms notification",
            "type": "string"
          },
          "fromNumber": {
            "description": "from number for sms notification",
            "type": "string"
          },
          "isActive": {
            "default": true,
            "description": "Is the notification active",
            "type": "boolean"
          },
          "notificationType": {
            "description": "Notification type",
            "enum": [
              "booked",
              "confirmation",
              "cancellation",
              "reminder",
              "followup",
              "reschedule"
            ],
            "type": "string"
          },
          "receiverType": {
            "description": "Notification recipient type",
            "enum": [
              "contact",
              "guest",
              "assignedUser",
              "emails",
              "phoneNumbers",
              "business"
            ],
            "type": "string"
          },
          "selectedUsers": {
            "description": "Selected users for in-App and business email notifications. Supports user IDs and special keyword \"sub_account_admin\"",
            "example": [
              "userId1",
              "userId2",
              "sub_account_admin"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "subject": {
            "description": "Subject  for email notification. Not necessary for in-App notification",
            "type": "string"
          },
          "templateId": {
            "description": "Template ID for email notification",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateCalendarResourceDTO": {
        "properties": {
          "calendarIds": {
            "description": "Service calendar IDs to be mapped with the resource.\n\n    One equipment can only be mapped with one service calendar.\n    \nOne room can be mapped with multiple service calendars.",
            "items": {
              "type": "string"
            },
            "maxItems": 100,
            "type": "array"
          },
          "capacity": {
            "description": "Capacity of the room.",
            "type": "number"
          },
          "description": {
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          },
          "locationId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "outOfService": {
            "description": "Quantity of the out of service equipment.",
            "type": "number"
          },
          "quantity": {
            "description": "Quantity of the equipment.",
            "type": "number"
          }
        },
        "type": "object"
      },
      "UpdateCategoryQueueDTO": {
        "properties": {
          "enableFuturePosts": {
            "description": "Enable posting future content. Automatically Queue any New Posts Created in this Category.",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "prioritizeNewContent": {
            "description": "Prioritize new content over older content. When true, new items added via directToQueue will be placed at the top of the queue.",
            "example": false,
            "type": "boolean"
          },
          "skipDateTime": {
            "description": "Skip Date Time in ISO format",
            "example": "2023-10-05T14:48:00.000Z",
            "type": "string"
          },
          "skipLegacyWatermark": {
            "description": "Skip legacy watermark cleanup when rescheduling posts",
            "example": false,
            "type": "boolean"
          },
          "status": {
            "description": "Status of the Queue",
            "example": "paused",
            "type": "object"
          },
          "timeSlots": {
            "items": {
              "$ref": "#/components/schemas/TimeSlotDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpdateCategoryQueueResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation. Examples: \"Queue updated successfully.\", \"Queue paused successfully.\", \"Queue activated successfully.\", \"Queue deleted successfully.\"",
            "example": "Queue paused successfully.",
            "type": "string"
          },
          "queue": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CategoryQueueDTO"
              }
            ],
            "description": "The updated queue."
          }
        },
        "type": "object"
      },
      "UpdateContactDtoV3": {
        "properties": {
          "address1": {
            "description": "Street address of the contact",
            "example": "3535 1st St N",
            "nullable": true,
            "type": "string"
          },
          "assignedTo": {
            "description": "User's Id",
            "example": "y0BeYjuRIlDwsDcOHOJo",
            "nullable": true,
            "type": "string"
          },
          "city": {
            "description": "City of the contact",
            "example": "Dolomite",
            "nullable": true,
            "type": "string"
          },
          "country": {
            "description": "Country code of the contact (ISO 3166-1 alpha-2), Refer country list from documentaion, documentation has list of all countries",
            "example": "US",
            "type": "string"
          },
          "customFields": {
            "description": "List of custom field values to assign to the contact",
            "example": [
              {
                "fieldValue": "My Text",
                "id": "6dvNaf7VhkQ9snc5vnjJ",
                "key": "my_custom_field"
              }
            ],
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/TextField"
                },
                {
                  "$ref": "#/components/schemas/LargeTextField"
                },
                {
                  "$ref": "#/components/schemas/SingleSelectField"
                },
                {
                  "$ref": "#/components/schemas/RadioField"
                },
                {
                  "$ref": "#/components/schemas/NumericField"
                },
                {
                  "$ref": "#/components/schemas/MonetoryField"
                },
                {
                  "$ref": "#/components/schemas/CheckboxField"
                },
                {
                  "$ref": "#/components/schemas/MultiSelectField"
                },
                {
                  "$ref": "#/components/schemas/FileField"
                }
              ]
            },
            "type": "array"
          },
          "dateOfBirth": {
            "description": "The birth date of the contact. Supported formats: YYYY/MM/DD, MM/DD/YYYY, YYYY-MM-DD, MM-DD-YYYY, YYYY.MM.DD, MM.DD.YYYY, YYYY_MM_DD, MM_DD_YYYY",
            "example": "1990-09-25",
            "nullable": true,
            "type": "object"
          },
          "dnd": {
            "description": "Whether Do Not Disturb is enabled for the contact",
            "example": true,
            "type": "boolean"
          },
          "dndSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingsSchemaV3"
              }
            ],
            "description": "Per-channel DND settings for the contact",
            "example": {
              "call": {
                "message": "Do not call",
                "status": "active"
              },
              "email": {
                "status": "inactive"
              }
            }
          },
          "email": {
            "description": "Email address of the contact",
            "example": "rosan@example.com",
            "nullable": true,
            "type": "string"
          },
          "firstName": {
            "description": "First name of the contact",
            "example": "rosan",
            "nullable": true,
            "type": "string"
          },
          "inboundDndSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InboundDndSettingsSchema"
              }
            ],
            "description": "Inbound DND settings per channel for the contact",
            "example": {
              "all": {
                "message": "Do not contact me",
                "status": "active"
              }
            }
          },
          "lastName": {
            "description": "Last name of the contact",
            "example": "Deo",
            "nullable": true,
            "type": "string"
          },
          "name": {
            "description": "Full name of the contact",
            "example": "rosan Deo",
            "nullable": true,
            "type": "string"
          },
          "phone": {
            "description": "Phone number of the contact",
            "example": "+1 888-888-8888",
            "nullable": true,
            "type": "string"
          },
          "postalCode": {
            "description": "Postal code of the contact",
            "example": "35061",
            "type": "string"
          },
          "source": {
            "description": "Source from which the contact was updated",
            "example": "public api",
            "nullable": true,
            "type": "string"
          },
          "state": {
            "description": "State of the contact",
            "example": "AL",
            "nullable": true,
            "type": "string"
          },
          "tags": {
            "description": "This field will overwrite all current tags associated with the contact. To update a tags, it is recommended to use the Add Tag or Remove Tag API instead.",
            "example": [
              "nisi sint commodo amet",
              "consequat"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone of the contact",
            "example": "America/Chihuahua",
            "nullable": true,
            "type": "string"
          },
          "website": {
            "description": "Website URL of the contact",
            "example": "https://www.tesla.com",
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateContactsSuccessfulResponseDtoV3": {
        "properties": {
          "contact": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetContactByIdSchemaV3"
              }
            ],
            "description": "Contact details",
            "example": {
              "email": "rubika@example.com",
              "id": "seD4PfOuKoVMLkEZqohJ",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "name": "rubika deo"
            }
          },
          "succeeded": {
            "description": "Whether the update operation succeeded",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "UpdateConversationDto": {
        "properties": {
          "feedback": {
            "description": "Live chat feedback value for the conversation",
            "enum": [
              "positive",
              "negative"
            ],
            "example": "positive",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID as string",
            "example": "tDtDnQdgm2LXpyiqYvZ6",
            "type": "string"
          },
          "starred": {
            "description": "Starred status of the conversation.",
            "example": true,
            "type": "boolean"
          },
          "unreadCount": {
            "description": "Count of unread messages in the conversation",
            "example": 1,
            "type": "number"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpdateCouponParams": {
        "properties": {
          "altId": {
            "description": "Location Id",
            "example": "BQdAwxa0ky1iK2sstLGJ",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "applyToFuturePayments": {
            "default": true,
            "description": "Is Coupon applicable on upcoming subscription transactions",
            "example": true,
            "type": "boolean"
          },
          "applyToFuturePaymentsConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ApplyToFuturePaymentsConfig"
              }
            ],
            "default": {
              "type": "forever"
            },
            "description": "If coupon is applicable on upcoming subscription transactions, how many months should it be applicable for a subscription",
            "example": [
              {
                "duration": 5,
                "durationType": "months",
                "type": "fixed"
              },
              {
                "type": "forever"
              }
            ]
          },
          "code": {
            "description": "Coupon Code",
            "example": "LEVELUPDAY2022",
            "type": "string"
          },
          "discountType": {
            "description": "Discount Type",
            "enum": [
              "percentage",
              "amount"
            ],
            "example": "amount",
            "type": "string"
          },
          "discountValue": {
            "description": "Discount Value",
            "example": 10,
            "type": "number"
          },
          "endDate": {
            "description": "End date in YYYY-MM-DDTHH:mm:ssZ format",
            "example": "2023-01-31T22:45:00.000Z",
            "type": "string"
          },
          "id": {
            "description": "Coupon Id",
            "example": "6241712be68f7a98102ba272",
            "type": "string"
          },
          "limitPerCustomer": {
            "default": false,
            "description": "Limits whether a coupon can be redeemed only once per customer.",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Coupon Name",
            "example": "New Year Sale",
            "type": "string"
          },
          "priceIds": {
            "description": "Price Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "productIds": {
            "description": "Product Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "startDate": {
            "description": "Start date in YYYY-MM-DDTHH:mm:ssZ format",
            "example": "2023-01-01T22:45:00.000Z",
            "type": "string"
          },
          "usageLimit": {
            "description": "Max number of times coupon can be used",
            "example": 10,
            "type": "number"
          },
          "variantIds": {
            "description": "Variant Ids",
            "example": [
              "6241712be68f7a98102ba272"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "code",
          "discountType",
          "discountValue",
          "startDate",
          "id"
        ],
        "type": "object"
      },
      "UpdateCustomAudienceBatchDTO": {
        "properties": {
          "csvPath": {
            "description": "CSV file path",
            "example": "/uploads/audience.csv",
            "type": "string"
          },
          "dynamicAudience": {
            "description": "Dynamic audience flag",
            "example": "true",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "operationType": {
            "description": "Batch operation type",
            "example": "ADD",
            "type": "string"
          },
          "smartlistIds": {
            "description": "Smartlist IDs array",
            "example": [
              "list_1",
              "list_2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId",
          "operationType"
        ],
        "type": "object"
      },
      "UpdateCustomAudienceDTO": {
        "properties": {
          "contactId": {
            "description": "Contact identifier",
            "example": "contact_123",
            "type": "string"
          },
          "fbAdAccountId": {
            "description": "Facebook ad account ID",
            "example": "act_123456",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "contactId"
        ],
        "type": "object"
      },
      "UpdateCustomMenuDTO": {
        "properties": {
          "allowCamera": {
            "description": "Whether to allow camera access (only for iframe mode)",
            "example": false,
            "type": "boolean"
          },
          "allowMicrophone": {
            "description": "Whether to allow microphone access (only for iframe mode)",
            "example": false,
            "type": "boolean"
          },
          "icon": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IconSchemaOptional"
              }
            ],
            "description": "Icon information for the custom menu"
          },
          "locations": {
            "description": "List of sub-account IDs where the menu should be shown. This list is applicable only when showOnLocation is true and showToAllLocations is false",
            "example": [
              "gfWreTIHL8pDbggBb7af",
              "67WreTIHL8pDbggBb7ty"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "openMode": {
            "description": "Mode for opening the menu link",
            "enum": [
              "iframe",
              "new_tab",
              "current_tab"
            ],
            "type": "string"
          },
          "showOnCompany": {
            "default": true,
            "description": "Whether the menu must be displayed on the agency's level",
            "example": true,
            "type": "boolean"
          },
          "showOnLocation": {
            "default": true,
            "description": "Whether the menu must be displayed for sub-accounts level",
            "example": true,
            "type": "boolean"
          },
          "showToAllLocations": {
            "default": true,
            "description": "Whether the menu must be displayed to all sub-accounts",
            "example": true,
            "type": "boolean"
          },
          "title": {
            "description": "Title of the custom menu",
            "example": "Custom Menu",
            "type": "string"
          },
          "url": {
            "description": "URL of the custom menu",
            "example": "https://custom-menus.com/",
            "type": "string"
          },
          "userRole": {
            "description": "Which user-roles should the menu be accessible to?",
            "enum": [
              "all",
              "admin",
              "user"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateCustomMenuLinkResponseDTO": {
        "properties": {
          "customMenu": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomMenuSchema"
              }
            ],
            "description": "Updated custom menu link"
          },
          "success": {
            "description": "Status of update",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "UpdateCustomObjectRecordDto": {
        "properties": {},
        "type": "object"
      },
      "UpdateCustomObjectSchemaDTO": {
        "properties": {
          "description": {
            "description": "Pet Object`s description",
            "example": "These are non vaccinated pets",
            "nullable": true,
            "type": "string"
          },
          "labels": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomObjectLabelUpdateDto"
              }
            ],
            "description": "This is how your custom object will  be  displayed",
            "example": {
              "plural": "Pets",
              "singular": "Pet"
            }
          },
          "locationId": {
            "description": "location id",
            "example": "632c34b4c9b7da3358ac9891",
            "type": "string"
          },
          "searchableProperties": {
            "description": "Searchable Fields: Provide the field key of your object that you want to search on, using the format (custom_object.<object_name>.<field_key>).",
            "example": [
              "custom_objects.mad.mad",
              "custom_objects.mad.record_1",
              "custom_objects.mad.nn"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId",
          "searchableProperties"
        ],
        "type": "object"
      },
      "UpdateCustomProviderCapabilitiesDto": {
        "properties": {
          "companyId": {
            "description": "Company id. Mandatory if locationId is not provided",
            "example": "Yjnwuduw83e8x30sm0",
            "type": "string"
          },
          "locationId": {
            "description": "Location / Sub-account id. Mandatory if companyId is not provided",
            "example": "Yjnwuduw83e8x30sm0",
            "type": "string"
          },
          "supportsSubscriptionSchedules": {
            "description": "Whether the marketplace app supports subscription schedules or not",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "supportsSubscriptionSchedules"
        ],
        "type": "object"
      },
      "UpdateCustomProviderCapabilitiesResponseSchema": {
        "properties": {
          "success": {
            "description": "Whether the custom provider capabilities are updated or not. true represents capabilities are updated",
            "example": "true",
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "UpdateDisplayPriorityBodyDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "products": {
            "description": "Array of products with their display priorities",
            "items": {
              "type": "array"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "products"
        ],
        "type": "object"
      },
      "UpdateEmailCampaignPublicV2BodyDto": {
        "properties": {
          "editorContent": {
            "description": "Editor content to update. Required only when updating campaign content, and must be provided together with editorType. Provide HTML or plain-text string content.",
            "example": "<html><body>Hello World</body></html>",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type for campaign content. Required only when updating campaign content, and must be provided together with editorContent.",
            "enum": [
              "html",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "Untitled campaign name",
            "type": "string"
          },
          "userId": {
            "description": "ID of the user performing this action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateEmailCampaignPublicV2ResponseDto": {
        "properties": {
          "campaignCategory": {
            "description": "Campaign category",
            "example": "email-campaign",
            "type": "string"
          },
          "campaignType": {
            "description": "Campaign type",
            "example": "bulk-email",
            "type": "string"
          },
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Campaign ID",
            "example": "67f15c2ae99226d5bcccb8f3",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "February Newsletter",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "email-campaign",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "bulkRequest_abc123",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "all",
              "sent",
              "failed",
              "archived",
              "draft",
              "processing",
              "scheduled",
              "cancelled",
              "paused"
            ],
            "example": "sent",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2026-02-09T04:49:12.322Z",
            "type": "string"
          },
          "variations": {
            "description": "AB test variation identifiers (available only for AB test campaigns)",
            "example": [
              {
                "isWinner": true,
                "sourceId": "9MhVcU7dTdLI7XOU1Vdt"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/EmailCampaignVariationPublicV2Dto"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "UpdateEmailMessageStatusDto": {
        "description": "Request body to update the delivery status of an email message. `status` is required. `events` and `recipients` are optional and may be included together with `status`.\n\n- Use `events` to report aggregate delivery metrics (delivered count, open count, etc.).\n- Use `recipients` to track per-recipient delivery outcomes for multi-recipient emails.\n- Use `status` to set the overall message status.\n\nMultiple calls are additive — event counters are merged, recipient statuses are upserted, and the message status is overwritten.",
        "properties": {
          "events": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EmailEventsDto"
              }
            ],
            "description": "Aggregate delivery event counters. Counters are merged into existing values. The API automatically infers related events (e.g., reporting `clicked` will also set `opened` and `delivered` if not already present). See the endpoint description for the full inference rules.",
            "example": {
              "delivered": 1,
              "opened": 1
            }
          },
          "recipients": {
            "description": "Per-recipient delivery statuses. Each entry maps a recipient email address to a delivery status. Entries are upserted — if a recipient already has a status, it will be overwritten with the new value.",
            "example": [
              {
                "emailId": "john@example.com",
                "status": "delivered"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/UpdateRecipientMessageStatusDto"
            },
            "type": "array"
          },
          "status": {
            "description": "The overall status of the email message. Required on every request. For emails with multiple recipients, consider using the `recipients` array for granular tracking and this field for the aggregate status.",
            "enum": [
              "pending",
              "scheduled",
              "sent",
              "delivered",
              "read",
              "undelivered",
              "connected",
              "failed",
              "opened",
              "clicked"
            ],
            "example": "delivered",
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "UpdateEmailMessageStatusResponseDto": {
        "description": "Response returned after successfully updating the email message status.",
        "properties": {
          "message": {
            "description": "Human-readable result message.",
            "example": "Updated email message successfully",
            "type": "string"
          },
          "success": {
            "description": "Whether the status update was persisted successfully.",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message"
        ],
        "type": "object"
      },
      "UpdateEmailTemplateDto": {
        "properties": {
          "archived": {
            "description": "Whether the template is archived",
            "example": false,
            "type": "boolean"
          },
          "editorContent": {
            "description": "Editor content - can be HTML string, plain text string, or DND builder object depending on editorType. When editorType is \"html\" or \"text\", this should be a string. When editorType is \"builder\", this should be a DND object with elements, attrs, and templateSettings. Must be provided together with editorType.",
            "oneOf": [
              {
                "example": "<html><body>Hello World</body></html>",
                "type": "string"
              },
              {
                "$ref": "#/components/schemas/IBuilderJsonMapper"
              }
            ]
          },
          "editorType": {
            "description": "Type of editor content: \"html\" for HTML content, \"text\" for plain text content, \"builder\" for drag-and-drop builder content. Must be provided together with editorContent.",
            "enum": [
              "html",
              "builder",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fieldDefaults": {
            "description": "Field-level default values for custom variables in template fields (fromName, subjectLine, previewText)",
            "example": {
              "subjectLine": {
                "contact.first_name:0": "Friend"
              }
            },
            "type": "object"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name displayed in email",
            "example": "John Doe",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID where the template belongs",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Template name",
            "example": "Newsletter Template",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text shown in email clients before opening",
            "example": "Email preview text",
            "type": "string"
          },
          "subjectLine": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "updatedBy": {
            "description": "User ID who is updating the template",
            "example": "zYy3YOUuHxgomU1uYJty",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpdateEmailTemplateResponseDto": {
        "properties": {
          "archived": {
            "description": "Whether the template is archived",
            "example": false,
            "type": "boolean"
          },
          "builderVersion": {
            "description": "Builder version used for the template",
            "example": "2",
            "type": "string"
          },
          "createdAt": {
            "description": "Timestamp when template was created",
            "example": "2024-01-01T08:00:00Z",
            "type": "string"
          },
          "fieldDefaults": {
            "description": "Field-level default values for custom variables in template fields",
            "example": {
              "subjectLine": {
                "contact.first_name:0": "Friend"
              }
            },
            "type": "object"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name displayed in email",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Unique template identifier",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether the template contains plain text content (true) or HTML content (false)",
            "example": false,
            "type": "boolean"
          },
          "lastUpdated": {
            "description": "Timestamp of last update",
            "example": "2024-01-15T10:30:00Z",
            "type": "string"
          },
          "name": {
            "description": "Template name",
            "example": "My Email Template",
            "type": "string"
          },
          "ok": {
            "description": "Indicates if the update was successful",
            "example": true,
            "type": "boolean"
          },
          "previewText": {
            "description": "Preview text shown in email clients",
            "example": "Check out our latest updates",
            "type": "string"
          },
          "previewUrl": {
            "description": "URL to preview the rendered template",
            "example": "https://example.com/preview/template123",
            "type": "string"
          },
          "subjectLine": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "type": {
            "description": "Type of template editor used",
            "enum": [
              "html",
              "builder"
            ],
            "example": "builder",
            "type": "string"
          }
        },
        "required": [
          "ok",
          "id",
          "name",
          "archived",
          "builderVersion",
          "fromName",
          "fromEmail",
          "subjectLine",
          "previewText",
          "previewUrl",
          "type",
          "lastUpdated",
          "createdAt",
          "isPlainText"
        ],
        "type": "object"
      },
      "UpdateEmployeeDto": {
        "properties": {
          "autoPilotMaxMessages": {
            "default": 75,
            "description": "Maximum number of messages in auto-pilot mode before requiring human intervention. (max: 100, min: 1)",
            "type": "number"
          },
          "businessName": {
            "description": "Name of the business the agent represents.",
            "example": "Tech Corp",
            "type": "string"
          },
          "channels": {
            "description": "Channels the agent can use.",
            "items": {
              "enum": [
                "IG",
                "FB",
                "SMS",
                "WebChat",
                "WhatsApp",
                "Live_Chat"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "goal": {
            "description": "The goal of the agent.",
            "example": "You are an AI assistant and you are helping customers with inquiries.",
            "type": "string"
          },
          "instructions": {
            "description": "Instructions for the agent.",
            "example": "Provide excellent customer service.",
            "type": "string"
          },
          "isPrimary": {
            "description": "Indicates if this agent is a primary agent.",
            "example": true,
            "type": "boolean"
          },
          "knowledgeBaseIds": {
            "description": "Array of knowledge base IDs associated with this agent.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "mode": {
            "description": "Mode of operation for the agent, required if primary is enabled.",
            "enum": [
              "off",
              "suggestive",
              "auto-pilot"
            ],
            "type": "string"
          },
          "name": {
            "description": "Name of the agent.",
            "example": "John Doe",
            "type": "string"
          },
          "personality": {
            "description": "Personality traits of the agent.",
            "example": "You re an AI assistant and you are friendly and helpful",
            "type": "string"
          },
          "respondToAudio": {
            "default": false,
            "description": "Allow agent to respond to audio",
            "example": true,
            "type": "boolean"
          },
          "respondToImages": {
            "default": false,
            "description": "Allow agent to respond to images",
            "example": true,
            "type": "boolean"
          },
          "sleepEnabled": {
            "deprecated": true,
            "description": "Indicates if sleep functionality is enabled.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnManualMessage": {
            "description": "Enable sleep when a manual outbound message is sent.",
            "example": false,
            "type": "boolean"
          },
          "sleepOnWorkflowMessage": {
            "description": "Enable sleep when a workflow outbound message is sent.",
            "example": false,
            "type": "boolean"
          },
          "sleepTime": {
            "description": "Duration of sleep period (required if sleepEnabled is true). Set to null for indefinite sleep. (max 2880 for minutes, 172800 for seconds, 48 for hours)",
            "example": 10,
            "type": "number"
          },
          "sleepTimeUnit": {
            "description": "Unit of sleep time - HOURS, MINUTES, or SECONDS (required if sleepEnabled is true). Set to null for indefinite sleep.",
            "enum": [
              "hours",
              "minutes",
              "seconds"
            ],
            "type": "string"
          },
          "waitTime": {
            "description": "Wait time before agent responds (max 5 for minutes, 300 for seconds).",
            "example": 30,
            "type": "number"
          },
          "waitTimeUnit": {
            "description": "Unit for wait time - SECONDS or MINUTES",
            "enum": [
              "minutes",
              "seconds"
            ],
            "example": "seconds",
            "type": "string"
          }
        },
        "required": [
          "autoPilotMaxMessages"
        ],
        "type": "object"
      },
      "UpdateEstimateDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "autoInvoice": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoInvoicingDto"
              }
            ],
            "description": "Auto invoice for the estimate",
            "example": {
              "directPayments": true,
              "enabled": true
            }
          },
          "automaticTaxesEnabled": {
            "default": false,
            "description": "Automatic taxes enabled for the Estimate",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact information to send the estimate to"
          },
          "currency": {
            "description": "Currency code",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "estimateNumber": {
            "description": "Estimate Number, if not specified will take in the next valid estimate number",
            "example": 1001,
            "type": "number"
          },
          "estimateNumberPrefix": {
            "default": "EST-",
            "description": "Prefix for the estimate number",
            "example": "EST-",
            "type": "string"
          },
          "estimateStatus": {
            "description": "Estimate Status",
            "enum": [
              "all",
              "draft",
              "sent",
              "accepted",
              "declined",
              "invoiced",
              "viewed"
            ],
            "example": "sent",
            "type": "string"
          },
          "expiryDate": {
            "description": "expiry date estimate",
            "example": "2024-08-10",
            "type": "string"
          },
          "frequencySettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FrequencySettingsDto"
              }
            ],
            "description": "frequency settings for the estimate"
          },
          "issueDate": {
            "description": "issue date estimate",
            "example": "2024-08-07",
            "type": "string"
          },
          "items": {
            "description": "An array of items for the estimate.",
            "items": {
              "$ref": "#/components/schemas/EstimateLineItemDto"
            },
            "type": "array"
          },
          "liveMode": {
            "default": true,
            "description": "livemode for estimate",
            "example": true,
            "type": "boolean"
          },
          "meta": {
            "description": "Meta data for the estimate",
            "example": {
              "key": "value"
            },
            "type": "object"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the estimate"
          },
          "name": {
            "description": "Estimate Name",
            "example": "Home Service Estimate",
            "type": "string"
          },
          "paymentScheduleConfig": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentScheduleConfigDto"
              }
            ],
            "description": "Payment Schedule Config for the estimate"
          },
          "sendEstimateDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SendEstimateDto"
              }
            ],
            "description": "When sending estimate directly while saving"
          },
          "sentTo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SentToDto"
              }
            ],
            "description": "Email and sent to details for the estimate"
          },
          "termsNotes": {
            "description": "Terms notes, Also supports HTML markups",
            "example": "<p>This is a default terms.</p>",
            "type": "string"
          },
          "title": {
            "description": "Title for the estimate",
            "example": "ESTIMATE",
            "type": "string"
          },
          "userId": {
            "description": "User Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "discount",
          "contactDetails",
          "frequencySettings"
        ],
        "type": "object"
      },
      "UpdateEventCalendarScheduleDTO": {
        "properties": {
          "rules": {
            "description": "Updated schedule rules defining when the schedule is active",
            "example": [
              {
                "day": "monday",
                "intervals": [
                  {
                    "from": "08:00",
                    "to": "18:00"
                  }
                ],
                "type": "wday"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ScheduleRuleDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Updated timezone for the schedule (IANA timezone identifier)",
            "example": "America/Los_Angeles",
            "pattern": "^[A-Za-z_]+/[A-Za-z_]+$",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateFaqBodyDTO": {
        "properties": {
          "answer": {
            "description": "faq answer as a string",
            "example": "The capital of France is Paris.",
            "type": "string"
          },
          "question": {
            "description": "faq question as a string",
            "example": "What is the capital of France?",
            "type": "string"
          }
        },
        "required": [
          "question",
          "answer"
        ],
        "type": "object"
      },
      "UpdateFaqResponseDTO": {
        "properties": {
          "success": {
            "description": "Success status of the update operation",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "UpdateFolder": {
        "properties": {
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Field name",
            "example": "Name",
            "type": "string"
          }
        },
        "required": [
          "name",
          "locationId"
        ],
        "type": "object"
      },
      "UpdateFollowupSettingsDTO": {
        "properties": {
          "actionIds": {
            "example": [
              "edxcfghbnjkimd"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "followupSettings": {
            "$ref": "#/components/schemas/FollowupSettings"
          }
        },
        "required": [
          "actionIds",
          "followupSettings"
        ],
        "type": "object"
      },
      "UpdateInventoryDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "items": {
            "description": "Array of items to update in the inventory.",
            "items": {
              "$ref": "#/components/schemas/UpdateInventoryItemDto"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "items"
        ],
        "type": "object"
      },
      "UpdateInventoryItemDto": {
        "properties": {
          "allowOutOfStockPurchases": {
            "description": "Whether to continue selling the item when out of stock.",
            "example": false,
            "type": "boolean"
          },
          "availableQuantity": {
            "description": "The available quantity of the item.",
            "example": 10,
            "type": "number"
          },
          "priceId": {
            "description": "The unique identifier for the price, in MongoDB ID format.",
            "example": "5e9f8f8f8f8f8f8f8f8f8f8",
            "type": "string"
          }
        },
        "required": [
          "priceId"
        ],
        "type": "object"
      },
      "UpdateInventoryResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "UpdateInvoiceDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business details which need to be updated",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "contactDetails": {
            "$ref": "#/components/schemas/ContactDetailsDto"
          },
          "contactId": {
            "description": "Id of the contact which you need to send the invoice",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "Description",
            "example": "ABC Corp payments",
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-14",
            "type": "string"
          },
          "invoiceItems": {
            "items": {
              "$ref": "#/components/schemas/InvoiceItemDto"
            },
            "type": "array"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "1001",
            "type": "string"
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "liveMode": {
            "description": "Payment mode",
            "type": "boolean"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the invoice"
          },
          "name": {
            "description": "Name to be updated",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentMethods": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentMethodDto"
              }
            ],
            "description": "Payment Methods for Invoices"
          },
          "paymentSchedule": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentScheduleDto"
              }
            ],
            "description": "split invoice into payment schedule summing up to full invoice amount"
          },
          "termsNotes": {
            "description": "Terms notes, Also supports HTML markups",
            "example": "<p>This is a default terms.</p>",
            "type": "string"
          },
          "tipsConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TipsConfigurationDto"
              }
            ],
            "description": "tips configuration for the invoice"
          },
          "title": {
            "description": "Title for the invoice",
            "example": "INVOICE",
            "type": "string"
          },
          "xeroDetails": {
            "type": "object"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "currency",
          "invoiceItems",
          "issueDate",
          "dueDate"
        ],
        "type": "object"
      },
      "UpdateInvoiceLateFeesConfigurationDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "lateFeesConfiguration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LateFeesConfigurationDto"
              }
            ],
            "description": "late fees configuration"
          }
        },
        "required": [
          "altId",
          "altType",
          "lateFeesConfiguration"
        ],
        "type": "object"
      },
      "UpdateInvoiceResponseDto": {
        "properties": {
          "_id": {
            "description": "Invoice Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amountDue": {
            "description": "Total Amount Due",
            "example": 999,
            "type": "number"
          },
          "amountPaid": {
            "description": "Amount Paid",
            "example": 0,
            "type": "number"
          },
          "automaticTaxesCalculated": {
            "description": "Is Automatic taxes calculated for the Invoice items",
            "example": true,
            "type": "boolean"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            },
            "type": "object"
          },
          "contactDetails": {
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            },
            "type": "object"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            },
            "type": "object"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "invoiceItems": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "19",
            "type": "number"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentSchedule": {
            "description": "split invoice into payment schedule summing up to full invoice amount",
            "type": "object"
          },
          "status": {
            "description": "Invoice Status",
            "enum": [
              "draft",
              "sent",
              "payment_processing",
              "paid",
              "void",
              "partially_paid"
            ],
            "example": "draft",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "amountPaid",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "invoiceNumber",
          "currency",
          "contactDetails",
          "issueDate",
          "dueDate",
          "invoiceItems",
          "total",
          "title",
          "amountDue",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "UpdateInvoiceScheduleDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "items": {
              "$ref": "#/components/schemas/AttachmentsDto"
            },
            "type": "array"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "contactDetails": {
            "$ref": "#/components/schemas/ContactDetailsDto"
          },
          "currency": {
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/InvoiceItemDto"
            },
            "type": "array"
          },
          "liveMode": {
            "type": "boolean"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the invoice"
          },
          "name": {
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "termsNotes": {
            "type": "string"
          },
          "title": {
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "contactDetails",
          "schedule",
          "liveMode",
          "businessDetails",
          "currency",
          "items",
          "discount"
        ],
        "type": "object"
      },
      "UpdateInvoiceScheduleResponseDto": {
        "properties": {
          "_id": {
            "description": "Schedule Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "compiledTermsNotes": {
            "description": "Compiled terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "contactDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ContactDetailsDto"
              }
            ],
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoices": {
            "description": "List of invoices",
            "items": {
              "$ref": "#/components/schemas/DefaultInvoiceResponseDto"
            },
            "type": "array"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "schedule": {
            "$ref": "#/components/schemas/InvoicesScheduleOptionsDto"
          },
          "status": {
            "description": "Schedule Status",
            "example": "draft",
            "type": "object"
          },
          "termsNotes": {
            "description": "Terms notes",
            "example": "Confidential",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "altId",
          "altType",
          "name",
          "invoices",
          "businessDetails",
          "currency",
          "contactDetails",
          "items",
          "total",
          "title",
          "termsNotes",
          "compiledTermsNotes",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "UpdateInvoiceTemplateDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "businessDetails": {
            "$ref": "#/components/schemas/BusinessDetailsDto"
          },
          "currency": {
            "type": "string"
          },
          "discount": {
            "$ref": "#/components/schemas/InvoicesDiscountDto"
          },
          "internal": {
            "type": "boolean"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/InvoiceItemDto"
            },
            "type": "array"
          },
          "miscellaneousCharges": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProcessingFeeDto"
              }
            ],
            "description": "miscellaneous charges for the invoice"
          },
          "name": {
            "description": "Name of the template",
            "example": "New Template",
            "type": "string"
          },
          "termsNotes": {
            "type": "string"
          },
          "title": {
            "description": "Template title",
            "example": "New Template",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items"
        ],
        "type": "object"
      },
      "UpdateInvoiceTemplateResponseDto": {
        "properties": {
          "_id": {
            "description": "Template Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "businessDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDetailsDto"
              }
            ],
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            }
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InvoicesDiscountDto"
              }
            ],
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            }
          },
          "invoiceNumberPrefix": {
            "description": "prefix for invoice number",
            "example": "INV-",
            "type": "string"
          },
          "items": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the Template",
            "example": "New Template",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "total",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "UpdateKnowledgeBaseDTO": {
        "properties": {
          "description": {
            "description": "field to update the description of the knowledge base",
            "type": "string"
          },
          "name": {
            "description": "field to update the name of the knowledge base",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateKnowledgeBaseResponseDTO": {
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "UpdateLocationDto": {
        "properties": {
          "address": {
            "description": "The address of the business for which sub-account is created",
            "example": "4th fleet street",
            "type": "string"
          },
          "city": {
            "description": "The city where the business is located for which sub-account is created",
            "example": "New York",
            "type": "string"
          },
          "companyId": {
            "description": "Company/Agency Id",
            "example": "UAXssdawIWAWD",
            "type": "string"
          },
          "country": {
            "description": "The country in which the business is present for which sub-account is created",
            "enum": [
              "AF",
              "AX",
              "AL",
              "DZ",
              "AS",
              "AD",
              "AO",
              "AI",
              "AQ",
              "AG",
              "AR",
              "AM",
              "AW",
              "AU",
              "AT",
              "AZ",
              "BS",
              "BH",
              "BD",
              "BB",
              "BY",
              "BE",
              "BZ",
              "BJ",
              "BM",
              "BT",
              "BO",
              "BA",
              "BW",
              "BV",
              "BR",
              "IO",
              "BN",
              "BG",
              "BF",
              "BI",
              "KH",
              "CM",
              "CA",
              "CV",
              "KY",
              "CF",
              "TD",
              "CL",
              "CN",
              "CX",
              "CC",
              "CO",
              "KM",
              "CG",
              "CD",
              "CK",
              "CR",
              "CI",
              "HR",
              "CU",
              "CY",
              "CZ",
              "DK",
              "DJ",
              "DM",
              "DO",
              "EC",
              "EG",
              "SV",
              "GQ",
              "ER",
              "EE",
              "ET",
              "FK",
              "FO",
              "FJ",
              "FI",
              "FR",
              "GF",
              "PF",
              "TF",
              "GA",
              "GM",
              "GE",
              "DE",
              "GH",
              "GI",
              "GR",
              "GL",
              "GD",
              "GP",
              "GU",
              "GT",
              "GG",
              "GN",
              "GW",
              "GY",
              "HT",
              "HM",
              "VA",
              "HN",
              "HK",
              "HU",
              "IS",
              "IN",
              "ID",
              "IR",
              "IQ",
              "IE",
              "IM",
              "IL",
              "IT",
              "JM",
              "JP",
              "JE",
              "JO",
              "KZ",
              "KE",
              "KI",
              "KP",
              "KR",
              "XK",
              "KW",
              "KG",
              "LA",
              "LV",
              "LB",
              "LS",
              "LR",
              "LY",
              "LI",
              "LT",
              "LU",
              "MO",
              "MK",
              "MG",
              "MW",
              "MY",
              "MV",
              "ML",
              "MT",
              "MH",
              "MQ",
              "MR",
              "MU",
              "YT",
              "MX",
              "FM",
              "MD",
              "MC",
              "MN",
              "ME",
              "MS",
              "MA",
              "MZ",
              "MM",
              "NA",
              "NR",
              "NP",
              "NL",
              "AN",
              "NC",
              "NZ",
              "NI",
              "NE",
              "NG",
              "NU",
              "NF",
              "MP",
              "NO",
              "OM",
              "PK",
              "PW",
              "PS",
              "PA",
              "PG",
              "PY",
              "PE",
              "PH",
              "PN",
              "PL",
              "PT",
              "PR",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SH",
              "KN",
              "LC",
              "MF",
              "PM",
              "VC",
              "WS",
              "SM",
              "ST",
              "SA",
              "SN",
              "RS",
              "SC",
              "SL",
              "SG",
              "SX",
              "SK",
              "SI",
              "SB",
              "SO",
              "ZA",
              "GS",
              "ES",
              "LK",
              "SD",
              "SR",
              "SJ",
              "SZ",
              "SE",
              "CH",
              "SY",
              "TW",
              "TJ",
              "TZ",
              "TH",
              "TL",
              "TG",
              "TK",
              "TO",
              "TT",
              "TN",
              "TR",
              "TM",
              "TC",
              "TV",
              "UG",
              "GB",
              "UA",
              "AE",
              "US",
              "UM",
              "UY",
              "UZ",
              "VU",
              "VE",
              "VN",
              "VG",
              "VI",
              "WF",
              "EH",
              "YE",
              "ZM",
              "ZW"
            ],
            "example": "US",
            "type": "string"
          },
          "mailgun": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MailgunSchema"
              }
            ],
            "description": "The mailgun credentials for location"
          },
          "name": {
            "description": "The name for the sub-account/location",
            "example": "Mark Shoes",
            "type": "string"
          },
          "phone": {
            "description": "The phone number of the business for which sub-account is created",
            "example": "+1410039940",
            "type": "string"
          },
          "postalCode": {
            "description": "The postal code of the business for which sub-account is created",
            "example": "567654",
            "type": "string"
          },
          "prospectInfo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProspectInfoDto"
              }
            ],
            "example": {
              "email": "john.doe@example.com",
              "firstName": "John",
              "lastName": "Doe"
            }
          },
          "settings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SettingsSchema"
              }
            ],
            "description": "The default settings for location"
          },
          "snapshot": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SnapshotPutSchema"
              }
            ],
            "description": "The snapshot to be updated in the location."
          },
          "social": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SocialSchema"
              }
            ],
            "description": "The social media links for location"
          },
          "state": {
            "description": "The state in which the business operates for which sub-account is created",
            "example": "Illinois",
            "type": "string"
          },
          "timezone": {
            "description": "The timezone of the business for which sub-account is created",
            "example": "US/Central",
            "type": "string"
          },
          "twilio": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TwilioSchema"
              }
            ],
            "deprecated": true,
            "description": "(DEPRECATED) The twilio credentials for location"
          },
          "website": {
            "description": "The website of the business for which sub-account is created",
            "example": "https://yourwebsite.com",
            "type": "string"
          }
        },
        "required": [
          "companyId"
        ],
        "type": "object"
      },
      "UpdateMediaObject": {
        "properties": {
          "id": {
            "description": "Unique identifier of the file or folder to be updated",
            "example": "686f9817f0d3165be9fbcef6",
            "type": "string"
          },
          "name": {
            "description": "New name for the file or folder",
            "example": "Updated File Name.pdf",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "UpdateMediaObjects": {
        "properties": {
          "altId": {
            "description": "Location identifier",
            "example": "sx6wyHhbFdRXh302LLNR",
            "type": "string"
          },
          "altType": {
            "description": "Type of entity that owns the files",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "filesToBeUpdated": {
            "description": "Array of file objects to be updated",
            "example": [
              {
                "id": "686f9817f0d3165be9fbcef6",
                "name": "Updated File Name.pdf"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/UpdateMediaObject"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "filesToBeUpdated"
        ],
        "type": "object"
      },
      "UpdateMessageStatusDto": {
        "properties": {
          "emailMessageId": {
            "description": "Email message Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "error": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorDto"
              }
            ],
            "description": "Error object from the conversation provider",
            "example": {
              "message": "There was an error from the provider",
              "type": "saas"
            }
          },
          "recipients": {
            "description": "Email delivery status for additional email recipients.",
            "example": [
              {
                "emailId": "john@example.com",
                "status": "delivered"
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "status": {
            "description": "Message status",
            "enum": [
              "delivered",
              "failed",
              "pending",
              "read"
            ],
            "example": "read",
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "UpdateNoteDTO": {
        "properties": {
          "body": {
            "description": "Body content of the note",
            "example": "lorem ipsum",
            "type": "string"
          },
          "color": {
            "description": "Hex color code for the note",
            "example": "#FFAA00",
            "type": "string"
          },
          "pinned": {
            "description": "Whether the note is pinned",
            "example": false,
            "type": "boolean"
          },
          "title": {
            "description": "Title of the note",
            "example": "Follow-up summary",
            "type": "string"
          },
          "userId": {
            "description": "User Id of the note author",
            "example": "GCs5KuzPqTls7vWclkEV",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateObject": {
        "properties": {
          "altId": {
            "description": "Location identifier that owns the file or folder",
            "example": "sx6wyHhbFdRXh302LLNR",
            "type": "string"
          },
          "altType": {
            "description": "Type of entity that owns the file or folder",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "name": {
            "description": "New name for the file or folder",
            "example": "Updated File Name.pdf",
            "type": "string"
          }
        },
        "required": [
          "name",
          "altType",
          "altId"
        ],
        "type": "object"
      },
      "UpdateOpportunityDtoV3": {
        "properties": {
          "assignedTo": {
            "description": "Identifier of the user the opportunity is assigned to",
            "example": "082goXVW3lIExEQPOnd3",
            "type": "string"
          },
          "customFields": {
            "description": "Update custom fields to opportunities.",
            "example": [
              {
                "fieldValue": "9039160788",
                "id": "6dvNaf7VhkQ9snc5vnjJ"
              }
            ],
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/customFieldsInputStringSchemaV3"
                },
                {
                  "$ref": "#/components/schemas/customFieldsInputArraySchemaV3"
                },
                {
                  "$ref": "#/components/schemas/customFieldsInputObjectSchemaV3"
                }
              ]
            },
            "type": "array"
          },
          "forecastExpectedCloseDate": {
            "description": "Expected close date. Supported formats: YYYY/MM/DD, MM/DD/YYYY, YYYY-MM-DD, MM-DD-YYYY, YYYY.MM.DD, MM.DD.YYYY, or ISO 8601",
            "example": "2026-04-23",
            "type": "string"
          },
          "forecastProbability": {
            "description": "Forecast probability",
            "example": 20,
            "type": "number"
          },
          "monetaryValue": {
            "description": "Monetary value of the opportunity",
            "example": 220,
            "type": "number"
          },
          "name": {
            "description": "Name of the opportunity",
            "example": "First Opps",
            "type": "string"
          },
          "pipelineId": {
            "description": "pipeline Id",
            "example": "bCkKGpDsyPP4peuKowkG",
            "type": "string"
          },
          "pipelineStageId": {
            "description": "Identifier of the pipeline stage",
            "example": "7915dedc-8f18-44d5-8bc3-77c04e994a10",
            "type": "string"
          },
          "status": {
            "description": "Current status of the opportunity",
            "enum": [
              "open",
              "won",
              "lost",
              "abandoned",
              "all"
            ],
            "example": "open",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdatePaymentMethodsConfigurationDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          },
          "paymentMethods": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentMethodDto"
              }
            ],
            "description": "Payment Methods for Invoices"
          }
        },
        "required": [
          "altId",
          "altType"
        ],
        "type": "object"
      },
      "UpdatePermissionsDto": {
        "properties": {
          "permissions": {
            "description": "Permission plan values to apply for the sub-account",
            "example": [
              "crm",
              "workflow"
            ],
            "items": {
              "enum": [
                "2-way-text-messaging",
                "gmb-messaging",
                "web-chat",
                "reputation-management",
                "facebook-messenger",
                "gmb-call-tracking",
                "missed-call-text-back",
                "text-to-pay",
                "calendar",
                "crm",
                "opportunities",
                "email-marketing",
                "form-builder",
                "survey-builder",
                "trigger-links",
                "html-builder",
                "sms-email-templates",
                "funnels",
                "websites",
                "workflow",
                "membership",
                "all-reports",
                "triggers",
                "campaigns",
                "launchpad"
              ],
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "permissions"
        ],
        "type": "object"
      },
      "UpdatePostSuccessfulResponseDTO": {
        "properties": {
          "message": {
            "description": "Message",
            "example": "Updated Post",
            "type": "string"
          },
          "statusCode": {
            "description": "Status Code",
            "example": 200,
            "type": "number"
          },
          "success": {
            "description": "Success or Failure",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "UpdatePriceDto": {
        "properties": {
          "allowOutOfStockPurchases": {
            "description": "Continue selling when out of stock",
            "example": true,
            "type": "boolean"
          },
          "amount": {
            "description": "The amount of the price. ( min: 0 )",
            "example": 99.99,
            "type": "number"
          },
          "availableQuantity": {
            "description": "Available inventory stock quantity",
            "example": 5,
            "type": "number"
          },
          "compareAtPrice": {
            "description": "The compare at price for the price.",
            "example": 19.99,
            "type": "number"
          },
          "currency": {
            "description": "The currency of the price.",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "A brief description of the price.",
            "type": "string"
          },
          "digitalDelivery": {
            "description": "Digital delivery options",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isDigitalProduct": {
            "description": "Is the product a digital product",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "The unique identifier of the location associated with the price.",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "membershipOffers": {
            "description": "An array of membership offers associated with the price.",
            "items": {
              "$ref": "#/components/schemas/MembershipOfferDto"
            },
            "type": "array"
          },
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PriceMetaDto"
              }
            ],
            "description": "Additional metadata associated with the price."
          },
          "name": {
            "description": "The name of the price.",
            "example": "Price Name",
            "type": "string"
          },
          "recurring": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringDto"
              }
            ],
            "description": "The recurring details of the price (if type is recurring)."
          },
          "setupFee": {
            "description": "The setup fee for the price.",
            "example": 10.99,
            "type": "number"
          },
          "shippingOptions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingOptionsDto"
              }
            ],
            "description": "Shipping options of the Price"
          },
          "sku": {
            "description": "The unique identifier of the SKU associated with the price",
            "example": "sku_123",
            "type": "string"
          },
          "totalCycles": {
            "description": "The total number of billing cycles for the price. ( min: 1 )",
            "example": 12,
            "type": "number"
          },
          "trackInventory": {
            "description": "Need to track inventory stock quantity",
            "example": true,
            "type": "boolean"
          },
          "trialPeriod": {
            "description": "The trial period duration in days (if applicable).",
            "example": 7,
            "type": "number"
          },
          "type": {
            "description": "The type of the price.",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          },
          "userId": {
            "description": "The unique identifier of the user who created the price.",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "variantOptionIds": {
            "description": "An array of variant option IDs associated with the price.",
            "example": [
              "option_id_1",
              "option_id_2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "type",
          "currency",
          "amount",
          "locationId"
        ],
        "type": "object"
      },
      "UpdatePriceResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the price.",
            "example": "655b33aa2209e60b6adb87a7",
            "type": "string"
          },
          "allowOutOfStockPurchases": {
            "description": "Continue selling when out of stock",
            "example": true,
            "type": "boolean"
          },
          "amount": {
            "description": "The amount of the price.",
            "example": 199999,
            "type": "number"
          },
          "availableQuantity": {
            "description": "Available inventory stock quantity",
            "example": 5,
            "type": "number"
          },
          "compareAtPrice": {
            "description": "The compare-at price for comparison purposes.",
            "example": 2000000,
            "type": "number"
          },
          "createdAt": {
            "description": "The creation timestamp of the price.",
            "example": "2023-11-20T10:23:38.645Z",
            "format": "date-time",
            "type": "string"
          },
          "currency": {
            "description": "The currency code for the price.",
            "example": "INR",
            "type": "string"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "membershipOffers": {
            "description": "An array of membership offers associated with the price.",
            "items": {
              "$ref": "#/components/schemas/MembershipOfferDto"
            },
            "type": "array"
          },
          "name": {
            "description": "The name of the price.",
            "example": "Red / S",
            "type": "string"
          },
          "product": {
            "description": "The unique identifier for the associated product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "recurring": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecurringDto"
              }
            ],
            "description": "The recurring details of the price (if type is recurring)."
          },
          "trackInventory": {
            "description": "Indicates whether inventory tracking is enabled.",
            "example": null,
            "type": "boolean"
          },
          "type": {
            "description": "The type of the price (e.g., one_time).",
            "enum": [
              "one_time",
              "recurring"
            ],
            "example": "one_time",
            "type": "string"
          },
          "updatedAt": {
            "description": "The last update timestamp of the price.",
            "example": "2024-01-23T09:57:04.852Z",
            "format": "date-time",
            "type": "string"
          },
          "userId": {
            "description": "The unique identifier for the user.",
            "example": "6YAtzfzpmHAdj0e8GkKp",
            "type": "string"
          },
          "variantOptionIds": {
            "description": "An array of variant option IDs associated with the price.",
            "example": [
              "h4z7u0im2q8",
              "h3nst2ltsnn"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "name",
          "type",
          "currency",
          "amount"
        ],
        "type": "object"
      },
      "UpdateProductCollectionResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "UpdateProductCollectionsDto": {
        "properties": {
          "altId": {
            "description": "Location Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "The type of alt. For now it is only LOCATION",
            "enum": [
              "location"
            ],
            "example": "LOCATION",
            "type": "string"
          },
          "image": {
            "description": "The URL of the image that is going to be displayed as the collection Thumbnail",
            "example": "http://example.com/watermark.png",
            "type": "string"
          },
          "name": {
            "description": "Name of the Product Collection",
            "example": "Best Sellers",
            "type": "string"
          },
          "seo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CollectionSEODto"
              }
            ],
            "description": "The metadata information which will be displayed in SEO previews"
          },
          "slug": {
            "description": "Slug of the Product Collection which helps in navigation",
            "example": "best-sellers",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType"
        ],
        "type": "object"
      },
      "UpdateProductDto": {
        "properties": {
          "automaticTaxCategoryId": {
            "description": "Tax category ID for Automatic taxes calculation.",
            "example": "65d71377c326ea78e1c47df5",
            "type": "string"
          },
          "availableInStore": {
            "description": "Indicates whether the product is available in-store.",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "An array of category Ids for the product",
            "example": [
              "65d71377c326ea78e1c47df5",
              "65d71377c326ea78e1c47d34"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "A brief description of the product.",
            "example": "Product description goes here.",
            "type": "string"
          },
          "image": {
            "description": "The URL for the product image.",
            "example": "https://storage.googleapis.com/ghl-test/3SwdhCsvxI8Au3KsPJt6/media/65af8d5df88bdb4b1022ee90.png",
            "type": "string"
          },
          "isLabelEnabled": {
            "default": false,
            "description": "Is the product label enabled. If this is true, label object cannot be empty.",
            "example": true,
            "type": "boolean"
          },
          "isTaxesEnabled": {
            "default": false,
            "description": "Are there any taxes attached to the product. If this is true, taxes array cannot be empty.",
            "example": true,
            "type": "boolean"
          },
          "label": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductLabelDto"
              }
            ],
            "description": "Details for Product Label"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "medias": {
            "description": "An array of medias for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductMediaDto"
            },
            "type": "array"
          },
          "name": {
            "description": "The name of the product.",
            "example": "Awesome Product",
            "type": "string"
          },
          "prices": {
            "description": "The prices of the product",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "productType": {
            "enum": [
              "DIGITAL",
              "PHYSICAL",
              "SERVICE",
              "PHYSICAL/DIGITAL"
            ],
            "type": "string"
          },
          "seo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductSEODto"
              }
            ],
            "description": "SEO data for the product that will be displayed in the preview"
          },
          "slug": {
            "description": "The slug using which the product navigation will be handled",
            "example": "awesome-product",
            "type": "string"
          },
          "statementDescriptor": {
            "description": "The statement descriptor for the product.",
            "example": "abcde",
            "type": "string"
          },
          "taxInclusive": {
            "default": false,
            "description": "Whether the taxes should be included in the purchase price",
            "example": true,
            "type": "boolean"
          },
          "taxes": {
            "description": "List of ids of Taxes attached to the Product. If taxes are passed, isTaxesEnabled should be true.",
            "example": [
              "654492a4e6bef380114de15a"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "variants": {
            "description": "An array of variants for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductVariantDto"
            },
            "type": "array"
          }
        },
        "required": [
          "name",
          "locationId",
          "productType"
        ],
        "type": "object"
      },
      "UpdateProductResponseDto": {
        "properties": {
          "_id": {
            "description": "The unique identifier for the product.",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "automaticTaxCategoryId": {
            "description": "Tax category ID for Automatic taxes calculation.",
            "example": "65d71377c326ea78e1c47df5",
            "type": "string"
          },
          "availableInStore": {
            "description": "Indicates whether the product is available in-store.",
            "example": true,
            "type": "boolean"
          },
          "collectionIds": {
            "description": "An array of category Ids for the product",
            "example": [
              "65d71377c326ea78e1c47df5",
              "65d71377c326ea78e1c47d34"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "createdAt": {
            "description": "The creation timestamp of the product.",
            "example": "2023-11-20T10:23:36.515Z",
            "format": "date-time",
            "type": "string"
          },
          "description": {
            "description": "product description",
            "example": "This is a really awesome product",
            "type": "string"
          },
          "image": {
            "description": "The URL for the product image.",
            "example": "https://storage.googleapis.com/ghl-test/3SwdhCsvxI8Au3KsPJt6/media/65af8d5df88bdb4b1022ee90.png",
            "type": "string"
          },
          "isTaxesEnabled": {
            "default": false,
            "description": "The field indicates whether taxes are enabled for the product or not.",
            "example": true,
            "type": "boolean"
          },
          "label": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ProductLabelDto"
              }
            ],
            "description": "The Product label details"
          },
          "locationId": {
            "description": "The unique identifier for the location.",
            "example": "3SwdhCsvxI8Au3KsPJt6",
            "type": "string"
          },
          "name": {
            "description": "The name of the product.",
            "example": "Awesome Product",
            "type": "string"
          },
          "productType": {
            "description": "The type of the product (e.g., PHYSICAL).",
            "example": "PHYSICAL",
            "type": "string"
          },
          "slug": {
            "description": "The slug of the product by which the product will be navigated",
            "example": "washing-machine",
            "type": "string"
          },
          "statementDescriptor": {
            "description": "The statement descriptor for the product.",
            "example": "abcde",
            "type": "string"
          },
          "taxes": {
            "description": "An array of ids of Taxes attached to the Product. If the expand query includes tax, the taxes will be of type `ProductTaxDto`. Please refer to the `ProductTaxDto` for additional details.",
            "example": [
              "654492a4e6bef380114de15a"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "updatedAt": {
            "description": "The last update timestamp of the product.",
            "example": "2024-01-23T09:57:04.846Z",
            "format": "date-time",
            "type": "string"
          },
          "variants": {
            "description": "An array of variants for the product.",
            "items": {
              "$ref": "#/components/schemas/ProductVariantDto"
            },
            "type": "array"
          }
        },
        "required": [
          "_id",
          "locationId",
          "name",
          "productType",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "UpdateProductReviewDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "detail": {
            "description": "Detailed Review of the product",
            "example": "The product is for sure a must and recommended buy",
            "type": "string"
          },
          "headline": {
            "description": "Headline of the Review",
            "example": "Amazing product with great quality",
            "type": "string"
          },
          "productId": {
            "description": "Product Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "rating": {
            "description": "Rating of the product",
            "example": "4.5",
            "type": "number"
          },
          "reply": {
            "description": "Reply of the review",
            "items": {
              "$ref": "#/components/schemas/ProductReviewDto"
            },
            "type": "array"
          },
          "status": {
            "description": "Status of the review",
            "example": "approved",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType",
          "productId",
          "status"
        ],
        "type": "object"
      },
      "UpdateProductReviewObjectDto": {
        "properties": {
          "productId": {
            "description": "Product Id",
            "example": "6578278e879ad2646715ba9d",
            "type": "string"
          },
          "reviewId": {
            "description": "Review Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "storeId": {
            "description": "Store Id",
            "example": "a1b2c3d4e5f6g7h8i9j0k1l2",
            "type": "string"
          }
        },
        "required": [
          "reviewId",
          "productId",
          "storeId"
        ],
        "type": "object"
      },
      "UpdateProductReviewsDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "reviews": {
            "description": "Array of Product Reviews",
            "items": {
              "$ref": "#/components/schemas/UpdateProductReviewObjectDto"
            },
            "type": "array"
          },
          "status": {
            "description": "Status of the review",
            "example": "approved",
            "type": "object"
          }
        },
        "required": [
          "altId",
          "altType",
          "reviews",
          "status"
        ],
        "type": "object"
      },
      "UpdateProductReviewsResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "UpdateProductStoreDto": {
        "properties": {
          "action": {
            "description": "Action to include or exclude the product from the store",
            "enum": [
              "include",
              "exclude"
            ],
            "example": "include",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "productIds": {
            "description": "Array of product IDs",
            "example": [
              "productId1",
              "productId2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "altId",
          "altType",
          "action",
          "productIds"
        ],
        "type": "object"
      },
      "UpdateProductStoreResponseDto": {
        "properties": {
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "UpdatePublicAgentMetadataDTO": {
        "properties": {
          "description": {
            "description": "Description of the agent",
            "example": "Updated AI agent with enhanced customer support capabilities",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID for authorization (cannot be updated)",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "name": {
            "description": "Name of the agent",
            "example": "Updated Customer Support Agent",
            "type": "string"
          },
          "status": {
            "description": "Status of the agent",
            "enum": [
              "active",
              "inactive",
              "archived"
            ],
            "example": "active",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpdatePublicAgentResponseDTO": {
        "properties": {
          "data": {
            "description": "Updated agent or version data",
            "example": {
              "agentId": "p1q2r3s4t5u6v7w8x9y0z1a2",
              "description": "Updated AI agent with enhanced customer support capabilities",
              "name": "Updated Customer Support Agent",
              "status": "active",
              "updatedAt": "2024-02-27T11:45:00.000Z",
              "versionId": "v1a2b3c4d5e6f7g8h9i0"
            },
            "type": "object"
          },
          "message": {
            "description": "Response message",
            "example": "Agent updated successfully",
            "type": "string"
          },
          "success": {
            "description": "Success status",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success",
          "message",
          "data"
        ],
        "type": "object"
      },
      "UpdatePublicAgentVersionDTO": {
        "properties": {
          "description": {
            "description": "Description of the version",
            "example": "Updated version with improved customer handling logic",
            "type": "string"
          },
          "edges": {
            "description": "Complete array of edges connecting the nodes. Provide all edges including unchanged ones.",
            "example": [
              {
                "endNode": "node_2",
                "startNode": "node_1"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "globalConfig": {
            "description": "Global configuration including prompts and settings",
            "example": {
              "globalPrompt": {
                "currentPrompt": "You are a helpful customer support assistant.",
                "history": []
              }
            },
            "type": "object"
          },
          "globalVariables": {
            "description": "Global variables accessible throughout the agent workflow",
            "example": [
              {
                "key": "apiKey",
                "type": "string",
                "value": "your-api-key"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "inputVariables": {
            "description": "Input variables required from user at execution time",
            "example": [
              {
                "description": "Customer name for personalization",
                "key": "customerName",
                "type": "string"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "locationId": {
            "description": "Location ID for authorization",
            "example": "C2QujeCh8ZnC7al2InWR",
            "type": "string"
          },
          "nodes": {
            "description": "Complete array of nodes for the agent workflow. Provide all nodes including unchanged ones.",
            "example": [
              {
                "isStartNode": true,
                "nodeId": "node_1",
                "nodeName": "Start",
                "type": "start"
              },
              {
                "nodeConfig": {
                  "llmModel": "gpt-4",
                  "llmProvider": "openai",
                  "prompt": "How can I help you?"
                },
                "nodeId": "node_2",
                "nodeName": "LLM Node",
                "type": "llm"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "runtimeVariables": {
            "description": "Runtime variables generated during agent execution",
            "example": [
              {
                "description": "Current session identifier",
                "key": "sessionId",
                "type": "string"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "userId": {
            "description": "User ID performing the update",
            "example": "usr_abc123def456",
            "type": "string"
          },
          "userName": {
            "description": "User name performing the update",
            "example": "John Doe",
            "type": "string"
          },
          "versionName": {
            "description": "Version name",
            "example": "Customer Support Agent v2",
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpdateQueueItemDTO": {
        "properties": {
          "locationId": {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "type": "string"
          },
          "modifiedPostPayload": {
            "allOf": [
              {
                "$ref": "#/components/schemas/QueueModifiedPostDTO"
              }
            ],
            "description": "Modifications to the original post"
          },
          "newOrder": {
            "description": "New order value or position keyword (cyclic-aware). Accepts:\n- A number: explicit order value calculated by FE as midpoint between adjacent items\n- \"top\": place at cyclic top (first to be scheduled next)\n- \"bottom\": place at cyclic bottom (last to be scheduled)\n\nFor positions between items, FE calculates: Math.floor((prevItem.order + nextItem.order) / 2)",
            "example": "top",
            "oneOf": [
              {
                "type": "number"
              },
              {
                "type": "string"
              }
            ]
          },
          "primaryImage": {
            "description": "Primary media URL (image)",
            "example": "http://example.com/media.png",
            "type": "string"
          },
          "sessionId": {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "variations": {
            "description": "Variations",
            "items": {
              "$ref": "#/components/schemas/VariationInputDTO"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpdateQueueItemResponseDTO": {
        "properties": {
          "message": {
            "description": "A message indicating the result of the operation.",
            "example": "Queue item updated successfully",
            "type": "string"
          },
          "queueItem": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CreatedQueueItemWithVariationsDTO"
              }
            ],
            "description": "The updated queue item."
          },
          "totalPostsChanged": {
            "description": "Number of unique posts that had their slots changed",
            "example": 5,
            "type": "number"
          },
          "updatedSlots": {
            "description": "Updated slot information for items affected by reorder operation",
            "items": {
              "$ref": "#/components/schemas/UpdatedSlotInfoDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "UpdateRebillingDto": {
        "properties": {
          "config": {
            "description": "Configuration for rebilling settings",
            "properties": {
              "enabled": {
                "description": "Enable the rebilling for the locations",
                "example": true,
                "type": "boolean"
              },
              "markup": {
                "description": "Additional value to be added in terms of percentage. For example, if the product price is $100 and the markup is 5, the amount charged to will be $105.",
                "example": 5,
                "type": "number"
              },
              "optIn": {
                "description": "Enable the product for the locations",
                "example": true,
                "type": "boolean"
              }
            },
            "type": "object"
          },
          "locationIds": {
            "description": "Array of location IDs to update rebilling for",
            "example": [
              "zzyG7A4x6bRJl5SlhQhH",
              "Vygq7VgXCDfg3xnl8TBR"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "product": {
            "description": "The product to update rebilling for",
            "enum": [
              "contentAI",
              "workflow_premium_actions",
              "workflow_ai",
              "conversationAI",
              "EmailNotification",
              "whatsApp",
              "reviewsAI",
              "VERIFIED_CALLER_ID",
              "WALLET_SALES_TAX",
              "NOTIFICATION_SMS",
              "EmailSmtp",
              "EmailVerification",
              "autoCompleteAddress",
              "funnelAI",
              "domainPurchase",
              "Phone",
              "Email"
            ],
            "example": "contentAI",
            "type": "string"
          }
        },
        "required": [
          "product",
          "locationIds",
          "config"
        ],
        "type": "object"
      },
      "UpdateRebillingResponseDto": {
        "properties": {
          "success": {
            "description": "Indicates if the rebilling update was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "success"
        ],
        "type": "object"
      },
      "UpdateRecipientMessageStatusDto": {
        "description": "Delivery status for an individual recipient of a multi-recipient email. Each entry is keyed by the recipient's email address and tracks their specific delivery outcome independently from the aggregate event counters.",
        "properties": {
          "emailId": {
            "description": "The recipient's email address. This is used as the key to store and update the per-recipient status. Must match one of the original recipients of the email.",
            "example": "john@example.com",
            "type": "string"
          },
          "failReason": {
            "description": "Human-readable reason for the delivery failure. Only applicable when `status` is `failed`. Examples: \"Mailbox not found\", \"Quota exceeded\", \"Blocked by recipient server\".",
            "example": "Mailbox not found",
            "type": "string"
          },
          "status": {
            "description": "The delivery status for this specific recipient. Common values for status updates: `delivered` (successfully delivered), `failed` (delivery failed — provide `failReason`), `opened` (recipient opened the email), `clicked` (recipient clicked a link).",
            "enum": [
              "pending",
              "scheduled",
              "sent",
              "delivered",
              "read",
              "undelivered",
              "connected",
              "failed",
              "opened",
              "clicked"
            ],
            "example": "delivered",
            "type": "string"
          }
        },
        "required": [
          "emailId",
          "status"
        ],
        "type": "object"
      },
      "UpdateRedirectParams": {
        "properties": {
          "action": {
            "enum": [
              "funnel",
              "website",
              "url",
              "all"
            ],
            "example": "URL",
            "type": "string"
          },
          "locationId": {
            "example": "6p2RxpgtMKQwO3E6IUaT",
            "type": "string"
          },
          "target": {
            "example": "https://www.google.com",
            "type": "string"
          }
        },
        "required": [
          "target",
          "action",
          "locationId"
        ],
        "type": "object"
      },
      "UpdateRedirectResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RedirectResponseDTO"
              }
            ],
            "description": "Data containing details of the updated redirect"
          }
        },
        "required": [
          "data"
        ],
        "type": "object"
      },
      "UpdateScheduleDTO": {
        "properties": {
          "name": {
            "description": "Human-readable name for the schedule",
            "example": "Updated Business Hours",
            "type": "string"
          },
          "rules": {
            "description": "Updated schedule rules defining when the schedule is active",
            "example": [
              {
                "day": "monday",
                "intervals": [
                  {
                    "from": "08:00",
                    "to": "18:00"
                  }
                ],
                "type": "wday"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/ScheduleRuleDTO"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Updated timezone for the schedule (IANA timezone identifier)",
            "example": "America/Los_Angeles",
            "pattern": "^[A-Za-z_]+/[A-Za-z_]+$",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateServiceBookingDTO": {
        "properties": {
          "endTime": {
            "description": "End Time",
            "example": "2023-09-25T16:30:00+05:30",
            "type": "string"
          },
          "meetingLocation": {
            "description": "Meeting Location (If service location is an ask the booker, then the meeting location is required)",
            "example": "123 Main St, Anytown, USA",
            "type": "string"
          },
          "serviceLocationId": {
            "description": "Service Location ID",
            "example": "65e5f6dfacf123513228d384",
            "type": "string"
          },
          "services": {
            "description": "If provided, services sent in the request will replace the existing services in the booking.",
            "items": {
              "$ref": "#/components/schemas/CreateBookingServiceDTO"
            },
            "type": "array"
          },
          "startTime": {
            "description": "Start Time",
            "example": "2021-06-23T03:30:00+05:30",
            "type": "string"
          },
          "status": {
            "description": "Status",
            "enum": [
              "confirmed",
              "cancelled",
              "invalid",
              "new",
              "showed",
              "no_show"
            ],
            "example": "confirmed",
            "type": "string"
          },
          "timezone": {
            "description": "Timezone",
            "example": "America/New_York",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "Service Appointment",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateServiceDTO": {
        "properties": {
          "coverImage": {
            "description": "Service cover image URL",
            "example": "https://example.com/cover.jpg",
            "type": "string"
          },
          "description": {
            "description": "Service description",
            "example": "Full hair styling session",
            "type": "string"
          },
          "eventColor": {
            "description": "Service event color (hex)",
            "example": "#66C61C",
            "type": "string"
          },
          "formId": {
            "description": "Custom form ID (will be used to display the custom form on the booking page, if only one service is selected)",
            "example": "65e5f6dfacf123513228d390",
            "type": "string"
          },
          "isPrivate": {
            "description": "Whether service is private (not shown publicly)",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Service name",
            "example": "Hair Styling",
            "type": "string"
          },
          "payment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentDTO"
              }
            ],
            "description": "Payment details (currency configured in Service Global Settings is used.)"
          },
          "postBuffer": {
            "description": "Post-buffer: Additional time that can be added after an appointment, allowing for extra time to wrap up",
            "example": 15,
            "type": "number"
          },
          "postBufferUnit": {
            "description": "Post-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "example": 10,
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Pre-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "serviceCategoryId": {
            "description": "Service category ID",
            "example": "65e5f6dfacf123513228d381",
            "type": "string"
          },
          "serviceDuration": {
            "description": "This controls the duration of the appointment",
            "example": 60,
            "type": "number"
          },
          "serviceDurationUnit": {
            "description": "Duration unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "slug": {
            "description": "Unique URL-friendly identifier",
            "example": "hair-styling",
            "type": "string"
          },
          "staff": {
            "description": "Assigned staff members",
            "items": {
              "$ref": "#/components/schemas/StaffDTO"
            },
            "type": "array"
          },
          "variations": {
            "description": "Service variations (an empty array removes all variations). Include an id to update an existing variation; omit the id to create a new one.",
            "items": {
              "$ref": "#/components/schemas/UpdateServiceVariationDTO"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "UpdateServiceLocationDTO": {
        "properties": {
          "address": {
            "description": "Use a full street address when locationType is offline. Use a user-facing label when locationType is ask_booker.",
            "example": "789 5th Avenue, Floor 5, New York, NY 10022",
            "type": "string"
          },
          "coverImage": {
            "description": "Updated URL of the cover image",
            "example": "https://storage.example.com/locations/midtown-wellness-studio/cover-v2.jpg",
            "type": "string"
          },
          "locationType": {
            "description": "Location type",
            "enum": [
              "offline",
              "ask_booker"
            ],
            "example": "offline",
            "type": "string"
          },
          "name": {
            "description": "Location name",
            "example": "California Location",
            "type": "string"
          },
          "phone": {
            "description": "Updated contact phone number",
            "example": "+1-212-555-0199",
            "type": "string"
          },
          "slug": {
            "description": "Updated URL-friendly slug identifier",
            "example": "midtown-wellness-therapy-studio",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateServiceVariationDTO": {
        "properties": {
          "id": {
            "description": "Variation ID",
            "example": "65e5f6dfacf123513228d385",
            "type": "string"
          },
          "name": {
            "description": "Variation name",
            "example": "Standard Haircut",
            "type": "string"
          },
          "payment": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentDTO"
              }
            ],
            "description": "Payment details"
          },
          "postBuffer": {
            "description": "Post-buffer: Additional time that can be added after an appointment, allowing for extra time to wrap up",
            "example": 15,
            "type": "number"
          },
          "postBufferUnit": {
            "description": "Post-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "preBuffer": {
            "description": "Pre-Buffer is additional time that can be added before an appointment, allowing for extra time to get ready",
            "example": 10,
            "type": "number"
          },
          "preBufferUnit": {
            "description": "Pre-buffer unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          },
          "serviceDuration": {
            "description": "This controls the duration of the appointment",
            "example": 30,
            "type": "number"
          },
          "serviceDurationUnit": {
            "description": "Duration unit",
            "enum": [
              "mins",
              "hours"
            ],
            "example": "mins",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateShippingCarrierDto": {
        "properties": {
          "allowsMultipleServiceSelection": {
            "description": "The seller can choose multiple services while creating shipping rates if this is true.",
            "example": true,
            "type": "boolean"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "callbackUrl": {
            "description": "The URL endpoint that CRM needs to retrieve shipping rates. This must be a public URL.",
            "example": "https://example.com/get-shipping-rates",
            "type": "string"
          },
          "name": {
            "description": "Name of the shipping carrier",
            "example": "FedEx",
            "type": "string"
          },
          "services": {
            "description": "An array of available shipping carrier services",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierServiceDto"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "UpdateShippingCarrierResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingCarrierSchema"
              }
            ],
            "description": "Shipping carrier data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "UpdateShippingRateDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amount": {
            "description": "The amount of the shipping rate if it is normal rate (0 means free ). Fixed Handling fee if it is a carrier rate (it will add to the carrier rate).",
            "example": 99.99,
            "type": "number"
          },
          "conditionType": {
            "description": "Type of condition to provide the conditional pricing",
            "enum": [
              "none",
              "price",
              "weight"
            ],
            "example": "price",
            "type": "string"
          },
          "currency": {
            "description": "The currency of the amount of the rate / handling fee",
            "example": "USD",
            "type": "string"
          },
          "description": {
            "description": "Delivery description",
            "example": "Ships next day",
            "type": "string"
          },
          "isCarrierRate": {
            "description": "is this a carrier rate",
            "example": true,
            "type": "boolean"
          },
          "maxCondition": {
            "description": "Maximum condition for applying this price. set 0 or null if there is no maximum",
            "example": 99.99,
            "type": "number"
          },
          "minCondition": {
            "description": "Minimum condition for applying this price. set 0 or null if there is no minimum",
            "example": 99.99,
            "type": "number"
          },
          "name": {
            "description": "Name of the shipping zone",
            "example": "North zone",
            "type": "string"
          },
          "percentageOfRateFee": {
            "description": "Percentage of rate fee if it is a carrier rate.",
            "example": 10.99,
            "type": "number"
          },
          "shippingCarrierId": {
            "description": "Shipping carrier id",
            "example": "655b33a82209e60b6adb87a5",
            "type": "string"
          },
          "shippingCarrierServices": {
            "description": "An array of items",
            "items": {
              "$ref": "#/components/schemas/ShippingCarrierServiceDto"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "UpdateShippingRateResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingRateSchema"
              }
            ],
            "description": "Shipping zone data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "UpdateShippingZoneDto": {
        "properties": {
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "countries": {
            "description": "List of countries that are available",
            "items": {
              "$ref": "#/components/schemas/ShippingZoneCountryDto"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the shipping zone",
            "example": "North zone",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateShippingZoneResponseDto": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ShippingZoneSchema"
              }
            ],
            "description": "Shipping zone data"
          },
          "message": {
            "description": "Success message",
            "example": "Successfully created",
            "type": "string"
          },
          "status": {
            "description": "Status of api action",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "status",
          "data"
        ],
        "type": "object"
      },
      "UpdateSingleActionDTO": {
        "properties": {
          "actionParameters": {
            "description": "Action parameters - structure varies by actionType",
            "examples": {
              "appointmentBooking": {
                "summary": "Appointment Booking Action",
                "value": {
                  "calendarId": "507f1f77bcf86cd799439011",
                  "daysOfOfferingDates": 3,
                  "hoursBetweenSlots": 1,
                  "slotsPerDay": 3
                }
              },
              "callTransfer": {
                "summary": "Call Transfer Action",
                "value": {
                  "hearWhisperMessage": true,
                  "transferToType": "number",
                  "transferToValue": "+12345678901",
                  "triggerMessage": "Let me transfer you to a manager right away"
                }
              },
              "customAction": {
                "summary": "Custom Action",
                "value": {
                  "apiDetails": {
                    "authenticationRequired": true,
                    "authenticationValue": "token123",
                    "headers": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "method": "GET",
                    "parameters": [
                      {
                        "description": "Order ID to look up",
                        "example": "ORD-12345",
                        "name": "orderId",
                        "type": "string"
                      }
                    ],
                    "url": "https://api.example.com/orders"
                  },
                  "responsePathsToExtract": [
                    "data.orderId",
                    "status"
                  ],
                  "triggerMessage": "Let me check that order status",
                  "triggerPrompt": "When caller provides order number"
                }
              },
              "dataExtraction": {
                "summary": "Data Extraction Action",
                "value": {
                  "contactFieldId": "507f1f77bcf86cd799439011",
                  "description": "Caller's phone number",
                  "examples": [
                    "+1234567890",
                    "+9876543210"
                  ],
                  "overwriteExistingValue": false
                }
              },
              "knowledgeBase": {
                "summary": "Knowledge Base Action",
                "value": {
                  "knowledgeBaseId": "507f1f77bcf86cd799439011",
                  "triggerPrompt": "When caller asks about pricing"
                }
              },
              "sms": {
                "summary": "SMS Action",
                "value": {
                  "messageBody": "Your appointment is confirmed for tomorrow at 2 PM",
                  "triggerMessage": "I'll send you a confirmation text",
                  "triggerPrompt": "When caller asks for booking confirmation"
                }
              },
              "workflowTrigger": {
                "summary": "Workflow Trigger Action",
                "value": {
                  "triggerMessage": "Let me start that process for you",
                  "triggerPrompt": "When caller requests a quote",
                  "workflowId": "507f1f77bcf86cd799439011"
                }
              }
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallTransferActionParameters"
              },
              {
                "$ref": "#/components/schemas/DataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/InCallDataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/WorkflowTriggerParameters"
              },
              {
                "$ref": "#/components/schemas/SMSParameters"
              },
              {
                "$ref": "#/components/schemas/AppointmentBookingActionParameters"
              },
              {
                "$ref": "#/components/schemas/CustomActionParameters"
              },
              {
                "$ref": "#/components/schemas/KnowledgeBaseParameters"
              }
            ]
          },
          "actionType": {
            "description": "Type of action",
            "enum": [
              "CALL_TRANSFER",
              "DATA_EXTRACTION",
              "IN_CALL_DATA_EXTRACTION",
              "WORKFLOW_TRIGGER",
              "SMS",
              "APPOINTMENT_BOOKING",
              "CUSTOM_ACTION",
              "KNOWLEDGE_BASE"
            ],
            "example": "CALL_TRANSFER",
            "type": "string"
          },
          "agentId": {
            "description": "Agent ID to attach the action to",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID",
            "example": "507f1f77bcf86cd799439012",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for this action",
            "example": "Transfer to Manager",
            "type": "string"
          }
        },
        "required": [
          "agentId",
          "locationId",
          "actionType",
          "name",
          "actionParameters"
        ],
        "type": "object"
      },
      "UpdateStatusDto": {
        "properties": {
          "lostReasonId": {
            "description": "lost reason Id",
            "example": "CLu7BaljjqrEjBGKTNNe",
            "type": "string"
          },
          "status": {
            "description": "New status for the opportunity",
            "enum": [
              "open",
              "won",
              "lost",
              "abandoned",
              "all"
            ],
            "example": "open",
            "type": "string"
          }
        },
        "required": [
          "status"
        ],
        "type": "object"
      },
      "UpdateSubscriptionDto": {
        "properties": {
          "companyId": {
            "description": "Company ID",
            "example": "companyId1",
            "type": "string"
          },
          "customerId": {
            "description": "Customer ID",
            "example": "cus_1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          },
          "subscriptionId": {
            "description": "Subscription ID",
            "example": "sub_1QDPY5FpU9DlKp7RQ8BXfywx",
            "type": "string"
          }
        },
        "required": [
          "subscriptionId",
          "customerId",
          "companyId"
        ],
        "type": "object"
      },
      "UpdateTagDTO": {
        "properties": {
          "tagIds": {
            "description": "Array of Tag Ids",
            "example": [
              "65fbdcfecc884f07e645ea8b"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "tagIds"
        ],
        "type": "object"
      },
      "UpdateTagsDTO": {
        "properties": {
          "contacts": {
            "description": "list of contact ids to be processed",
            "example": [
              "qFSqySFkVvNzOSqgGqFi",
              "abcdef",
              "qFSqySFkVvNzOSqgGqFi",
              "3ualbhnV7j3n3a9r2moD"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "locationId": {
            "description": "location id from where the bulk request is executed",
            "example": "asdrwHvLUxlfw5SqKVCN",
            "type": "string"
          },
          "removeAllTags": {
            "description": "Option to implement remove all tags. if true, all tags will be removed from the contacts. Can only be used with remove type.",
            "example": "false",
            "type": "boolean"
          },
          "tags": {
            "description": "list of tags to be added or removed",
            "example": [
              "tag-1",
              "tag-2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "contacts",
          "tags",
          "locationId"
        ],
        "type": "object"
      },
      "UpdateTagsResponseDTO": {
        "properties": {
          "errorCount": {
            "description": "Number of errors encountered during the operation",
            "example": 0,
            "type": "number"
          },
          "responses": {
            "description": "Responses for each contact processed",
            "example": [
              {
                "contactId": "qFSqySFkVvNzOSqgGqFi",
                "message": "Tags updated",
                "oldTags": [
                  "tag-1",
                  "tag-2"
                ],
                "tagsAdded": [],
                "tagsRemoved": [],
                "type": "success"
              },
              {
                "contactId": "abcdef",
                "message": "contact id is not a valid firebase id",
                "type": "error"
              },
              {
                "contactId": "qFSqySFkVvNzOSqgGqFi",
                "message": "contact is deleted",
                "type": "error"
              },
              {
                "contactId": "3ualbhnV7j3n3a9r2moD",
                "message": "contact does not belong to location",
                "type": "error"
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "succeded": {
            "deprecated": true,
            "description": "Legacy misspelling of `succeeded`. Deprecated; use `succeeded`.",
            "example": true,
            "type": "boolean"
          },
          "succeeded": {
            "description": "Indicates if the operation was successful",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "succeeded",
          "succeded",
          "errorCount",
          "responses"
        ],
        "type": "object"
      },
      "UpdateTaskBody": {
        "properties": {
          "assignedTo": {
            "description": "User Id to whom the task is assigned",
            "example": "hxHGVRb1YJUscrCB8eXK",
            "type": "string"
          },
          "body": {
            "description": "Body or description of the task",
            "example": "loram ipsum",
            "type": "string"
          },
          "completed": {
            "description": "Whether the task is completed",
            "example": true,
            "type": "boolean"
          },
          "dueDate": {
            "description": "Due date of the task (ISO 8601 format)",
            "example": "2020-10-25T11:00:00Z",
            "type": "string"
          },
          "title": {
            "description": "Title of the task",
            "example": "First Task",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateTaskStatusParams": {
        "properties": {
          "completed": {
            "description": "Whether the task is completed",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "completed"
        ],
        "type": "object"
      },
      "UpdateTemplatePublicV2BodyDto": {
        "properties": {
          "archived": {
            "description": "Whether template is archived",
            "example": false,
            "type": "boolean"
          },
          "editorContent": {
            "description": "Editor content to update. Required only when updating template content, and must be provided together with editorType. Provide HTML or plain-text string content.",
            "example": "<html><body>Hello World</body></html>",
            "type": "string"
          },
          "editorType": {
            "description": "Type of editor content. Required only when updating template content, and must be provided together with editorContent.",
            "enum": [
              "html",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "name": {
            "description": "Template name",
            "example": "Newsletter Template",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID. Pass `null` to move template to the root level.",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Email preview text",
            "type": "string"
          },
          "subjectLine": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "userId": {
            "description": "ID of the user performing this action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateTemplatePublicV2ResponseDto": {
        "properties": {
          "archived": {
            "description": "Whether template is archived",
            "example": false,
            "type": "boolean"
          },
          "createdAt": {
            "description": "Created timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          },
          "editorType": {
            "description": "Template type",
            "enum": [
              "html",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Template ID",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether template is plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Template name",
            "example": "My Email Template",
            "type": "string"
          },
          "parentFolderId": {
            "description": "Parent folder ID",
            "example": "67f15c2ae99226d5bcccb8f0",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Check out our latest updates",
            "type": "string"
          },
          "previewUrl": {
            "description": "Preview URL",
            "example": "https://example.com/preview/template123",
            "type": "string"
          },
          "subjectLine": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "traceId": {
            "description": "Trace ID of request",
            "example": "019e4ef5-a65e-4198-8cf9-8e93dca9bda4",
            "type": "string"
          },
          "updatedAt": {
            "description": "Last updated timestamp",
            "example": "2025-07-24T11:55:43.598Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "archived",
          "fromName",
          "fromEmail",
          "subjectLine",
          "previewText",
          "previewUrl"
        ],
        "type": "object"
      },
      "UpdateUserDto": {
        "properties": {
          "companyId": {
            "description": "Company/Agency Id. Required for Agency Level access",
            "example": "UAXssdawIWAWD",
            "type": "string"
          },
          "email": {
            "deprecated": true,
            "description": "Email update is no longer supported due to security reasons.",
            "example": "john@example.com",
            "type": "string"
          },
          "firstName": {
            "description": "First name of the user",
            "example": "John",
            "type": "string"
          },
          "lastName": {
            "description": "Last name of the user",
            "example": "Deo",
            "type": "string"
          },
          "locationIds": {
            "description": "List of sub-account location IDs the user should have access to",
            "example": [
              "C2QujeCh8ZnC7al2InWR"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "password": {
            "description": "New password for the user account. All passwords will be required to meet the following criteria:\n\n- Minimum 12 characters\n- At least one uppercase letter (A–Z)\n- At least one lowercase letter (a–z)\n- At least one number (0–9)\n- At least one special character (e.g., !, @, #, $)",
            "example": "************",
            "type": "string"
          },
          "permissions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PermissionsDto"
              }
            ],
            "description": "User permissions controlling access to various features",
            "example": {
              "campaignsEnabled": true,
              "campaignsReadOnly": false,
              "contactsEnabled": true,
              "workflowsEnabled": true
            }
          },
          "phone": {
            "description": "Phone number of the user in E.164 format",
            "example": "+18832327657",
            "type": "string"
          },
          "platformLanguage": {
            "description": "Platform language preference for the user",
            "enum": [
              "en_US",
              "es",
              "fr_CA",
              "fr_FR",
              "nl",
              "de",
              "pt_PT",
              "pt_BR",
              "it",
              "sv",
              "da",
              "fi",
              "no"
            ],
            "example": "en_US",
            "type": "string"
          },
          "profilePhoto": {
            "description": "URL of the user profile photo",
            "example": "https://img.png",
            "type": "string"
          },
          "role": {
            "description": "User role within the account (admin or user)",
            "example": "admin",
            "type": "string"
          },
          "scopes": {
            "description": "Scopes allowed for users. Only scopes that have been passed will be enabled. If passed empty all the scopes will be get disabled",
            "example": [
              "contacts.write",
              "campaigns.readonly"
            ],
            "items": {
              "enum": [
                "campaigns.readonly",
                "campaigns.write",
                "calendars.readonly",
                "calendars/events.write",
                "calendars/groups.write",
                "calendars.write",
                "contacts.write",
                "contacts/bulkActions.write",
                "workflows.readonly",
                "workflows.write",
                "triggers.write",
                "funnels.write",
                "forms.write",
                "surveys.write",
                "quizzes.write",
                "websites.write",
                "medias.write",
                "medias.readonly",
                "opportunities.write",
                "opportunities/leadValue.readonly",
                "opportunities/bulkActions.write",
                "pipelines.create",
                "reporting/phone.readonly",
                "reporting/adwords.readonly",
                "reporting/facebookAds.readonly",
                "reporting/attributions.readonly",
                "prospecting/auditReport.write",
                "reporting/reports.readonly",
                "reporting/agent.readonly",
                "reporting/reports.write",
                "reporting/stats.export",
                "payments.write",
                "payments/records.write",
                "payments/orders.readonly",
                "payments/orders.export",
                "payments/orders.import",
                "payments/orders.collectPayment",
                "payments/subscriptions.readonly",
                "payments/subscriptions.write",
                "payments/subscriptions.update",
                "payments/subscriptions.export",
                "payments/subscriptions.pauseResumeCancel",
                "payments/subscriptions.sharePaymentMethod",
                "payments/transactions.readonly",
                "payments/transactions.export",
                "payments/transactions.import",
                "payments/transactions.refund",
                "payments/transactions.viewReceipts",
                "payments/taxesSettings.readonly",
                "payments/settings.readonly",
                "payments/taxesSettings.updateInclusiveExclusive",
                "payments/taxesSettings.manageRates",
                "payments/taxesSettings.configureAutomatic",
                "products.readonly",
                "products.write",
                "products.delete",
                "products.duplicate",
                "products.bulkActions",
                "payments/settings.write",
                "payments/settings.configureReceipt",
                "payments/settings.configureSubscription",
                "invoices.write",
                "invoices.readonly",
                "invoices/schedule.readonly",
                "invoices/schedule.write",
                "invoices/template.readonly",
                "invoices/template.write",
                "reputation/review.write",
                "reputation/listing.write",
                "reputation/reviewsAIAgents.write",
                "reputation/gbp.write",
                "conversations.write",
                "conversations.readonly",
                "conversations/message.readonly",
                "conversations/message.write",
                "contentAI.write",
                "ai-studio.readonly",
                "ai-studio.write",
                "dashboard/stats.readonly",
                "locations/tags.write",
                "locations/tags.readonly",
                "marketing.write",
                "eliza.write",
                "settings.write",
                "socialplanner/post.write",
                "socialplanner/account.readonly",
                "socialplanner/account.write",
                "socialplanner/category.readonly",
                "socialplanner/category.write",
                "socialplanner/csv.readonly",
                "socialplanner/csv.write",
                "socialplanner/group.write",
                "socialplanner/hashtag.readonly",
                "socialplanner/hashtag.write",
                "socialplanner/oauth.readonly",
                "socialplanner/oauth.write",
                "socialplanner/post.readonly",
                "socialplanner/recurring.readonly",
                "socialplanner/recurring.write",
                "socialplanner/review.readonly",
                "socialplanner/review.write",
                "socialplanner/rss.readonly",
                "socialplanner/rss.write",
                "socialplanner/search.readonly",
                "socialplanner/setting.readonly",
                "socialplanner/setting.write",
                "socialplanner/stat.readonly",
                "socialplanner/tag.readonly",
                "socialplanner/tag.write",
                "socialplanner/filters.readonly",
                "socialplanner/medias.readonly",
                "socialplanner/medias.write",
                "socialplanner/watermarks.readonly",
                "socialplanner/watermarks.write",
                "socialplanner/metatag.readonly",
                "socialplanner/facebook.readonly",
                "socialplanner/linkedin.readonly",
                "socialplanner/twitter.readonly",
                "socialplanner/notification.readonly",
                "socialplanner/notification.write",
                "socialplanner/snapshot.readonly",
                "socialplanner/snapshot.write",
                "marketing/affiliate.write",
                "blogs.write",
                "membership.write",
                "communities.write",
                "gokollab.write",
                "certificates.write",
                "certificates.readonly",
                "adPublishing.write",
                "adPublishing.readonly",
                "prospecting.write",
                "prospecting.readonly",
                "prospecting/reports.readonly",
                "private-integration-location.readonly",
                "private-integration-location.write",
                "private-integration-company.readonly",
                "private-integration-company.write",
                "native-integrations.readonly",
                "native-integrations.write",
                "wordpress.write",
                "wordpress.read",
                "custom-menu-link.write",
                "qrcodes.write",
                "users/team-management.write",
                "users/team-management.readonly",
                "loginas.write",
                "users-sso-login-management.write",
                "users-sso-login-management.readonly",
                "sso-config.write",
                "snapshots/api.readonly",
                "snapshots/api.create",
                "snapshots/api.edit",
                "snapshots/api.push",
                "snapshots/api.refresh",
                "snapshots/api.share",
                "snapshots/api.delete",
                "internaltools.location-transfer.write",
                "internaltools.location-transfer.readonly",
                "affiliateportal.write",
                "affiliateportal.readonly",
                "companies.write",
                "internaltools.billing.write",
                "internaltools.billing.readonly",
                "internaltools.billing-common.readonly",
                "internaltools.billing-common.write",
                "voice-ai-agents.write",
                "voice-ai-agents.readonly",
                "voice-ai-common.readonly",
                "voice-ai-common.write",
                "voice-ai-agent-goals.readonly",
                "voice-ai-agent-goals.write",
                "voice-ai-dashboard.readonly",
                "agency/launchpad.write",
                "agency/launchpad.readonly",
                "launchpad/location.write",
                "launchpad/location.readonly",
                "text-ai-agents.write",
                "text-ai-agent-goals.readonly",
                "text-ai-agent-goals.write",
                "text-ai-agent-training.write",
                "text-ai-agents-dashboard.readonly",
                "locations.create",
                "locations.delete",
                "askai.write",
                "copilot.readonly",
                "locations.export.list",
                "locations.features-limits.manage",
                "locations.pause-resume",
                "locations.agency-subaccounts.manage",
                "locations.billing.manage",
                "locations.details.manage",
                "audit-logs.readonly",
                "audit-logs.export"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "scopesAssignedToOnly": {
            "description": "Assigned Scopes allowed for users. Only scopes that have been passed will be enabled. If passed empty all the assigned scopes will be get disabled",
            "example": [
              "contacts.write",
              "campaigns.readonly"
            ],
            "items": {
              "enum": [
                "campaigns.readonly",
                "campaigns.write",
                "calendars.readonly",
                "calendars/events.write",
                "calendars/groups.write",
                "calendars.write",
                "contacts.write",
                "contacts/bulkActions.write",
                "workflows.readonly",
                "workflows.write",
                "triggers.write",
                "funnels.write",
                "forms.write",
                "surveys.write",
                "quizzes.write",
                "websites.write",
                "medias.write",
                "medias.readonly",
                "opportunities.write",
                "opportunities/leadValue.readonly",
                "opportunities/bulkActions.write",
                "pipelines.create",
                "reporting/phone.readonly",
                "reporting/adwords.readonly",
                "reporting/facebookAds.readonly",
                "reporting/attributions.readonly",
                "prospecting/auditReport.write",
                "reporting/reports.readonly",
                "reporting/agent.readonly",
                "reporting/reports.write",
                "reporting/stats.export",
                "payments.write",
                "payments/records.write",
                "payments/orders.readonly",
                "payments/orders.export",
                "payments/orders.import",
                "payments/orders.collectPayment",
                "payments/subscriptions.readonly",
                "payments/subscriptions.write",
                "payments/subscriptions.update",
                "payments/subscriptions.export",
                "payments/subscriptions.pauseResumeCancel",
                "payments/subscriptions.sharePaymentMethod",
                "payments/transactions.readonly",
                "payments/transactions.export",
                "payments/transactions.import",
                "payments/transactions.refund",
                "payments/transactions.viewReceipts",
                "payments/taxesSettings.readonly",
                "payments/settings.readonly",
                "payments/taxesSettings.updateInclusiveExclusive",
                "payments/taxesSettings.manageRates",
                "payments/taxesSettings.configureAutomatic",
                "products.readonly",
                "products.write",
                "products.delete",
                "products.duplicate",
                "products.bulkActions",
                "payments/settings.write",
                "payments/settings.configureReceipt",
                "payments/settings.configureSubscription",
                "invoices.write",
                "invoices.readonly",
                "invoices/schedule.readonly",
                "invoices/schedule.write",
                "invoices/template.readonly",
                "invoices/template.write",
                "reputation/review.write",
                "reputation/listing.write",
                "reputation/reviewsAIAgents.write",
                "reputation/gbp.write",
                "conversations.write",
                "conversations.readonly",
                "conversations/message.readonly",
                "conversations/message.write",
                "contentAI.write",
                "ai-studio.readonly",
                "ai-studio.write",
                "dashboard/stats.readonly",
                "locations/tags.write",
                "locations/tags.readonly",
                "marketing.write",
                "eliza.write",
                "settings.write",
                "socialplanner/post.write",
                "socialplanner/account.readonly",
                "socialplanner/account.write",
                "socialplanner/category.readonly",
                "socialplanner/category.write",
                "socialplanner/csv.readonly",
                "socialplanner/csv.write",
                "socialplanner/group.write",
                "socialplanner/hashtag.readonly",
                "socialplanner/hashtag.write",
                "socialplanner/oauth.readonly",
                "socialplanner/oauth.write",
                "socialplanner/post.readonly",
                "socialplanner/recurring.readonly",
                "socialplanner/recurring.write",
                "socialplanner/review.readonly",
                "socialplanner/review.write",
                "socialplanner/rss.readonly",
                "socialplanner/rss.write",
                "socialplanner/search.readonly",
                "socialplanner/setting.readonly",
                "socialplanner/setting.write",
                "socialplanner/stat.readonly",
                "socialplanner/tag.readonly",
                "socialplanner/tag.write",
                "socialplanner/filters.readonly",
                "socialplanner/medias.readonly",
                "socialplanner/medias.write",
                "socialplanner/watermarks.readonly",
                "socialplanner/watermarks.write",
                "socialplanner/metatag.readonly",
                "socialplanner/facebook.readonly",
                "socialplanner/linkedin.readonly",
                "socialplanner/twitter.readonly",
                "socialplanner/notification.readonly",
                "socialplanner/notification.write",
                "socialplanner/snapshot.readonly",
                "socialplanner/snapshot.write",
                "marketing/affiliate.write",
                "blogs.write",
                "membership.write",
                "communities.write",
                "gokollab.write",
                "certificates.write",
                "certificates.readonly",
                "adPublishing.write",
                "adPublishing.readonly",
                "prospecting.write",
                "prospecting.readonly",
                "prospecting/reports.readonly",
                "private-integration-location.readonly",
                "private-integration-location.write",
                "private-integration-company.readonly",
                "private-integration-company.write",
                "native-integrations.readonly",
                "native-integrations.write",
                "wordpress.write",
                "wordpress.read",
                "custom-menu-link.write",
                "qrcodes.write",
                "users/team-management.write",
                "users/team-management.readonly",
                "loginas.write",
                "users-sso-login-management.write",
                "users-sso-login-management.readonly",
                "sso-config.write",
                "snapshots/api.readonly",
                "snapshots/api.create",
                "snapshots/api.edit",
                "snapshots/api.push",
                "snapshots/api.refresh",
                "snapshots/api.share",
                "snapshots/api.delete",
                "internaltools.location-transfer.write",
                "internaltools.location-transfer.readonly",
                "affiliateportal.write",
                "affiliateportal.readonly",
                "companies.write",
                "internaltools.billing.write",
                "internaltools.billing.readonly",
                "internaltools.billing-common.readonly",
                "internaltools.billing-common.write",
                "voice-ai-agents.write",
                "voice-ai-agents.readonly",
                "voice-ai-common.readonly",
                "voice-ai-common.write",
                "voice-ai-agent-goals.readonly",
                "voice-ai-agent-goals.write",
                "voice-ai-dashboard.readonly",
                "agency/launchpad.write",
                "agency/launchpad.readonly",
                "launchpad/location.write",
                "launchpad/location.readonly",
                "text-ai-agents.write",
                "text-ai-agent-goals.readonly",
                "text-ai-agent-goals.write",
                "text-ai-agent-training.write",
                "text-ai-agents-dashboard.readonly",
                "locations.create",
                "locations.delete",
                "askai.write",
                "copilot.readonly",
                "locations.export.list",
                "locations.features-limits.manage",
                "locations.pause-resume",
                "locations.agency-subaccounts.manage",
                "locations.billing.manage",
                "locations.details.manage",
                "audit-logs.readonly",
                "audit-logs.export"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "twilioPhone": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Per-location inbound Twilio number in E.164 format, keyed by location id (Call and Voicemail Inbound Number for direct Twilio, not LC Phone). Replacement semantics: if you send twilioPhone in the request body, the stored map is replaced entirely with this object (not merged). Any location id omitted from the object is removed from the saved map. Omit the twilioPhone property entirely to leave existing numbers unchanged. Send an empty object {} to clear all per-location numbers. To clear a single location only, set that location id to an empty string \"\".",
            "example": {
              "C2QujeCh8ZnC7al2InWR": "+18832327657",
              "M2QrtfVt8ZnC7cv2InDL": "+18832327657"
            },
            "type": "object"
          },
          "type": {
            "description": "User account type (account for sub-account users, agency for agency-level users)",
            "example": "account",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpdateWidgetDTO": {
        "properties": {
          "chatType": {
            "description": "Chat type",
            "enum": [
              "liveChat",
              "emailChat"
            ],
            "example": "emailChat",
            "type": "string"
          },
          "default": {
            "description": "Default",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name",
            "example": "Chat Widget 1",
            "type": "string"
          },
          "settings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WidgetSettingsDTO"
              }
            ],
            "description": "Settings",
            "example": {
              "chatType": "emailChat"
            }
          },
          "version": {
            "description": "Version",
            "example": 2,
            "type": "number"
          }
        },
        "type": "object"
      },
      "UpdatedSlotInfoDTO": {
        "properties": {
          "isSkipped": {
            "description": "Indicates if this time slot is skipped",
            "example": false,
            "type": "boolean"
          },
          "itemId": {
            "description": "The ID of the queue item",
            "example": "60af88475f1b2c001f5d5f4b",
            "type": "string"
          },
          "scheduledDateTime": {
            "description": "The updated scheduled date/time for this item",
            "example": "2023-10-15T10:00:00.000Z",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          }
        },
        "type": "object"
      },
      "UploadCSVDTO": {
        "properties": {
          "file": {
            "format": "binary",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UploadFileResponseSchema": {
        "properties": {
          "csvFileType": {
            "description": "CSV file type",
            "enum": [
              "basic",
              "advance"
            ],
            "example": "basic",
            "type": "string"
          },
          "fileName": {
            "description": "Name of the uploaded file",
            "example": "CSV Import Sample - CSV Import Sample.csv",
            "type": "string"
          },
          "filePath": {
            "description": "File path of uploaded CSV",
            "example": "omaDY3RbWtTP511e/social-import/d23d68c2-82c0-1db6e2.csv",
            "type": "string"
          },
          "fileSize": {
            "description": "Size of the file in bytes",
            "example": 1024,
            "type": "number"
          },
          "rowsCount": {
            "description": "Number of rows in the CSV",
            "example": 6,
            "type": "number"
          }
        },
        "type": "object"
      },
      "UploadFilesDto": {
        "properties": {
          "attachmentUrls": {
            "description": "Array of attachment URLs to upload for the conversation",
            "example": [
              "https://example.com/files/invoice.pdf"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "chatServiceSid": {
            "description": "Twilio chat service SID for group SMS uploads",
            "example": "ISxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
            "type": "string"
          },
          "contactId": {
            "description": "Contact Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "conversationId": {
            "description": "Conversation Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "isGroupSms": {
            "description": "Flag to indicate group SMS upload flow. When true, only 1 file upload is allowed per request.",
            "example": "true",
            "type": "string"
          },
          "locationId": {
            "description": "Location ID associated with the upload request",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          }
        },
        "required": [
          "conversationId",
          "contactId",
          "locationId",
          "attachmentUrls"
        ],
        "type": "object"
      },
      "UploadFilesErrorResponseDto": {
        "properties": {
          "message": {
            "description": "Error message of the request",
            "example": "Failed to upload the files",
            "type": "string"
          },
          "status": {
            "description": "HTTP Status code of the request",
            "enum": [
              400,
              413,
              415
            ],
            "example": 413,
            "type": "number"
          }
        },
        "required": [
          "status",
          "message"
        ],
        "type": "object"
      },
      "UploadFilesResponseDto": {
        "properties": {
          "twilioMediaSids": {
            "description": "Twilio media SIDs for group SMS (when isGroupSms=true)",
            "example": [
              "MExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "uploadedFiles": {
            "description": "Map of uploaded file names to their accessible URLs",
            "example": {
              "invoice.pdf": "https://example.com/files/invoice.pdf"
            },
            "type": "object"
          }
        },
        "required": [
          "uploadedFiles"
        ],
        "type": "object"
      },
      "UpsertAdDTO": {
        "properties": {
          "adsetId": {
            "description": "Parent ad set ID",
            "example": "adset_123",
            "type": "string"
          },
          "campaignId": {
            "description": "Parent campaign ID",
            "example": "camp_123",
            "type": "string"
          },
          "conversationFormId": {
            "description": "Conversation form ID",
            "example": "conv_123",
            "type": "string"
          },
          "cta": {
            "description": "Call to action type",
            "example": "LEARN_MORE",
            "type": "string"
          },
          "description": {
            "description": "Ad description text",
            "example": "Limited time offer",
            "type": "string"
          },
          "destinationFormId": {
            "description": "Destination form ID",
            "example": "form_123",
            "type": "string"
          },
          "destinationLink": {
            "description": "Destination link URL",
            "example": "https://example.com",
            "type": "string"
          },
          "headline": {
            "description": "Ad headline text",
            "example": "Great Deal",
            "type": "string"
          },
          "id": {
            "description": "Ad identifier",
            "example": "ad_123",
            "type": "string"
          },
          "imageUrl": {
            "description": "Ad image URL",
            "example": "https://example.com/img.jpg",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "media": {
            "description": "Media items (images or videos) attached to the ad creative",
            "example": [
              {
                "name": "ad_image.jpg",
                "selectedPoster": 0,
                "src": "https://example.com/image.jpg",
                "thumbnailUrl": "https://example.com/thumb.jpg",
                "type": "IMAGE"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/MediaDTO"
            },
            "type": "array"
          },
          "mediaType": {
            "description": "Ad media type",
            "enum": [
              "SINGLE",
              "CAROUSEL"
            ],
            "example": "SINGLE",
            "type": "string"
          },
          "multiAdvertiserAds": {
            "description": "Enable multi-advertiser ads",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Ad name",
            "example": "My Ad Creative",
            "type": "string"
          },
          "primaryText": {
            "description": "Ad primary text",
            "example": "Check out our offer!",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "campaignId",
          "adsetId"
        ],
        "type": "object"
      },
      "UpsertAdsetDTO": {
        "properties": {
          "audience": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FacebookAudienceDTO"
              }
            ],
            "description": "Targeting audience configuration including geo-locations, locales, placements, and custom audiences",
            "example": {
              "ageMax": 65,
              "ageMin": 18,
              "genders": [
                1,
                2
              ],
              "geoLocations": [
                {
                  "key": "US",
                  "name": "United States",
                  "selectionType": "include",
                  "type": "country"
                }
              ]
            }
          },
          "budget": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Budget"
              }
            ],
            "description": "Ad set budget config",
            "example": {
              "amount": 1000,
              "budgetType": "DAILY",
              "scheduleEndDate": "2024-01-31",
              "scheduleStartDate": "2024-01-01"
            }
          },
          "campaignId": {
            "description": "Parent campaign ID",
            "example": "camp_123",
            "type": "string"
          },
          "conversionLocation": {
            "description": "Conversion location",
            "example": "website",
            "type": "string"
          },
          "customEventType": {
            "description": "Custom event type",
            "example": "Purchase",
            "type": "string"
          },
          "id": {
            "description": "Ad set identifier",
            "example": "adset_123",
            "type": "string"
          },
          "instagramActorId": {
            "description": "Instagram actor ID",
            "example": "ig_123",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "messagingPlatforms": {
            "description": "Messaging platforms",
            "example": [
              "WHATSAPP"
            ],
            "items": {
              "enum": [
                "WHATSAPP",
                "MESSENGER",
                "INSTAGRAM_DIRECT"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "description": "Ad set name",
            "example": "Targeting Group A",
            "type": "string"
          },
          "pageId": {
            "description": "Facebook page ID",
            "example": "123456789",
            "type": "string"
          },
          "pixelId": {
            "description": "Conversion pixel ID",
            "example": "px_123",
            "type": "string"
          },
          "whatsappNumber": {
            "description": "WhatsApp phone number",
            "example": "+1234567890",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "campaignId"
        ],
        "type": "object"
      },
      "UpsertAssetsDTO": {
        "properties": {
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "payload": {
            "description": "Asset payload — shape depends on the type field: CallAssetPayload (CALL), SitelinkAssetPayload (SITELINK), or LeadFormAssetPayload (LEAD_FORM)",
            "example": {
              "countryCode": "US",
              "phoneNumber": "+14155551234"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallAssetPayloadDTO"
              },
              {
                "$ref": "#/components/schemas/SitelinkAssetPayloadDTO"
              },
              {
                "$ref": "#/components/schemas/LeadFormAssetPayloadDTO"
              }
            ]
          },
          "type": {
            "description": "Asset type to create or update",
            "enum": [
              "CALL",
              "SITELINK",
              "LEAD_FORM"
            ],
            "example": "CALL",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "type",
          "payload"
        ],
        "type": "object"
      },
      "UpsertAudienceDTO": {
        "properties": {
          "dimensions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudienceDimensionDTO"
              }
            ],
            "description": "Audience dimensions",
            "example": {
              "ageRanges": [
                {
                  "maxAge": 34,
                  "minAge": 25
                }
              ],
              "genders": [
                "MALE",
                "FEMALE"
              ],
              "isAgeUnknown": false
            }
          },
          "exclusionDimension": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudienceDimensionDTO"
              }
            ],
            "description": "Exclusion dimensions",
            "example": {
              "genders": [
                "UNDETERMINED"
              ]
            }
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "name": {
            "description": "Audience name",
            "example": "My Audience",
            "type": "string"
          },
          "resourceName": {
            "description": "Audience resource name",
            "example": "customers/123/audiences/456",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "name"
        ],
        "type": "object"
      },
      "UpsertCampaignDTO": {
        "properties": {
          "id": {
            "description": "Campaign identifier",
            "example": "camp_123",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "Summer Campaign",
            "type": "string"
          },
          "objective": {
            "description": "Campaign objective",
            "enum": [
              "OUTCOME_LEADS",
              "OUTCOME_TRAFFIC",
              "OUTCOME_ENGAGEMENT",
              "OUTCOME_SALES"
            ],
            "example": "LEAD_GENERATION",
            "type": "string"
          },
          "source": {
            "description": "Campaign data source",
            "example": "facebook",
            "type": "string"
          },
          "specialAdCategories": {
            "description": "Special ad categories",
            "example": [
              "NONE"
            ],
            "items": {
              "enum": [
                "EMPLOYMENT",
                "CREDIT",
                "FINANCIAL_PRODUCTS_SERVICES",
                "HOUSING",
                "ISSUES_ELECTIONS_POLITICS",
                "ONLINE_GAMBLING_AND_GAMING",
                "NONE"
              ],
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpsertContactDtoV3": {
        "properties": {
          "address1": {
            "description": "Street address of the contact",
            "example": "3535 1st St N",
            "nullable": true,
            "type": "string"
          },
          "assignedTo": {
            "description": "User's Id",
            "example": "y0BeYjuRIlDwsDcOHOJo",
            "type": "string"
          },
          "city": {
            "description": "City of the contact",
            "example": "Dolomite",
            "nullable": true,
            "type": "string"
          },
          "companyName": {
            "description": "Company name of the contact",
            "example": "DGS VolMAX",
            "nullable": true,
            "type": "string"
          },
          "country": {
            "description": "Country code of the contact (ISO 3166-1 alpha-2)",
            "example": "US",
            "type": "string"
          },
          "createNewIfDuplicateAllowed": {
            "default": false,
            "description": "Controls whether to create a new contact or update an existing duplicate. **Scenario 1:** If this value is `true` and the location allows duplicate contacts, a new contact will be created immediately without checking for duplicates. **Scenario 2:** If this value is `true` but the location does not allow duplicate contacts, this field is ignored and the normal upsert behavior applies: the API will search for an existing duplicate contact, update it if found, or create a new contact if not found. **Scenario 3:** If this value is `false` or not provided, the normal upsert behavior applies regardless of the location's duplicate contact setting.",
            "example": false,
            "type": "boolean"
          },
          "customFields": {
            "description": "List of custom field values to assign to the contact",
            "example": [
              {
                "fieldValue": "My Text",
                "id": "6dvNaf7VhkQ9snc5vnjJ",
                "key": "my_custom_field"
              }
            ],
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/TextField"
                },
                {
                  "$ref": "#/components/schemas/LargeTextField"
                },
                {
                  "$ref": "#/components/schemas/SingleSelectField"
                },
                {
                  "$ref": "#/components/schemas/RadioField"
                },
                {
                  "$ref": "#/components/schemas/NumericField"
                },
                {
                  "$ref": "#/components/schemas/MonetoryField"
                },
                {
                  "$ref": "#/components/schemas/CheckboxField"
                },
                {
                  "$ref": "#/components/schemas/MultiSelectField"
                },
                {
                  "$ref": "#/components/schemas/FileField"
                }
              ]
            },
            "type": "array"
          },
          "dateOfBirth": {
            "description": "The birth date of the contact. Supported formats: YYYY/MM/DD, MM/DD/YYYY, YYYY-MM-DD, MM-DD-YYYY, YYYY.MM.DD, MM.DD.YYYY, YYYY_MM_DD, MM_DD_YYYY",
            "example": "1990-09-25",
            "nullable": true,
            "type": "object"
          },
          "dnd": {
            "description": "Whether Do Not Disturb is enabled for the contact",
            "example": true,
            "type": "boolean"
          },
          "dndSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DndSettingsSchemaV3"
              }
            ],
            "description": "Per-channel DND settings for the contact",
            "example": {
              "call": {
                "message": "Do not call",
                "status": "active"
              },
              "email": {
                "status": "inactive"
              }
            }
          },
          "email": {
            "description": "Email address of the contact",
            "example": "rosan@example.com",
            "nullable": true,
            "type": "string"
          },
          "firstName": {
            "description": "First name of the contact",
            "example": "Rosan",
            "nullable": true,
            "type": "string"
          },
          "gender": {
            "description": "Gender of the contact",
            "example": "male",
            "type": "string"
          },
          "inboundDndSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InboundDndSettingsSchema"
              }
            ],
            "description": "Inbound DND settings per channel for the contact",
            "example": {
              "all": {
                "message": "Do not contact me",
                "status": "active"
              }
            }
          },
          "lastName": {
            "description": "Last name of the contact",
            "example": "Deo",
            "nullable": true,
            "type": "string"
          },
          "locationId": {
            "description": "Location Id the contact should be created under",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "description": "Full name of the contact",
            "example": "Rosan Deo",
            "nullable": true,
            "type": "string"
          },
          "phone": {
            "description": "Phone number of the contact",
            "example": "+1 888-888-8888",
            "nullable": true,
            "type": "string"
          },
          "postalCode": {
            "description": "Postal code of the contact",
            "example": "35061",
            "type": "string"
          },
          "source": {
            "description": "Source from which the contact was created",
            "example": "public api",
            "type": "string"
          },
          "state": {
            "description": "State of the contact",
            "example": "AL",
            "nullable": true,
            "type": "string"
          },
          "tags": {
            "description": "This field will overwrite all current tags associated with the contact. To update a tags, it is recommended to use the Add Tag or Remove Tag API instead.",
            "example": [
              "nisi sint commodo amet",
              "consequat"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "timezone": {
            "description": "Timezone of the contact",
            "example": "America/Chihuahua",
            "nullable": true,
            "type": "string"
          },
          "website": {
            "description": "Website URL of the contact",
            "example": "https://www.tesla.com",
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "locationId"
        ],
        "type": "object"
      },
      "UpsertContactsSuccessfulResponseDtoV3": {
        "properties": {
          "contact": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GetContactByIdSchemaV3"
              }
            ],
            "description": "Contact details",
            "example": {
              "email": "rubika@example.com",
              "id": "seD4PfOuKoVMLkEZqohJ",
              "locationId": "ve9EPM428h8vShlRW1KT",
              "name": "rubika deo"
            }
          },
          "new": {
            "description": "Whether a new contact was created (true) or an existing one was updated (false)",
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "description": "Unique trace identifier for this operation",
            "example": "abc123trace",
            "type": "string"
          }
        },
        "type": "object"
      },
      "UpsertConversionDTO": {
        "properties": {
          "attributionModel": {
            "description": "Attribution model used to credit conversions",
            "enum": [
              "GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN",
              "GOOGLE_ADS_LAST_CLICK"
            ],
            "example": "GOOGLE_ADS_LAST_CLICK",
            "type": "string"
          },
          "category": {
            "description": "Conversion category",
            "example": "PURCHASE",
            "type": "string"
          },
          "clickThroughWindow": {
            "description": "Click-through conversion window in days",
            "example": 30,
            "type": "number"
          },
          "conversionId": {
            "description": "Conversion identifier",
            "example": "conv_456",
            "type": "string"
          },
          "countingType": {
            "description": "How conversions are counted per interaction",
            "enum": [
              "ONE_PER_CLICK",
              "MANY_PER_CLICK"
            ],
            "example": "ONE_PER_CLICK",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "name": {
            "description": "Conversion name",
            "example": "Purchase Conversion",
            "type": "string"
          },
          "type": {
            "description": "Conversion type",
            "enum": [
              "UPLOAD_CLICKS",
              "UPLOAD_CALLS",
              "WEBPAGE",
              "LEAD_FORM_SUBMIT"
            ],
            "example": "WEBPAGE",
            "type": "string"
          },
          "valueSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ConversionValueSettings"
              }
            ],
            "description": "Value settings that control how monetary value is attributed to conversions",
            "example": {
              "alwaysUseDefaultValue": false,
              "defaultCurrencyCode": "USD",
              "defaultValue": "10.00"
            }
          }
        },
        "required": [
          "locationId",
          "name",
          "type",
          "category",
          "valueSettings",
          "countingType",
          "attributionModel",
          "clickThroughWindow"
        ],
        "type": "object"
      },
      "UpsertConversionPixelDTO": {
        "properties": {
          "conversionPixelId": {
            "description": "Conversion pixel ID",
            "example": "px_123",
            "type": "string"
          },
          "igUserId": {
            "description": "Instagram user ID",
            "example": "ig_user_123",
            "type": "string"
          },
          "locationId": {
            "description": "Location identifier",
            "example": "loc_abc123",
            "type": "string"
          },
          "name": {
            "description": "Pixel name",
            "example": "My Pixel",
            "type": "string"
          },
          "type": {
            "description": "Pixel event type",
            "example": "LEAD_EVENT",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "type"
        ],
        "type": "object"
      },
      "UpsertOpportunityDto": {
        "properties": {
          "assignedTo": {
            "description": "Identifier of the user the opportunity is assigned to",
            "example": "082goXVW3lIExEQPOnd3",
            "type": "string"
          },
          "followers": {
            "description": "contactId",
            "example": "LiKJ2vnRg5ETM8Z19K7",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "followersActionType": {
            "description": "followers action type",
            "enum": [
              "add",
              "remove"
            ],
            "example": "add",
            "type": "string"
          },
          "forecastExpectedCloseDate": {
            "description": "Expected close date. Supported formats: YYYY/MM/DD, MM/DD/YYYY, YYYY-MM-DD, MM-DD-YYYY, YYYY.MM.DD, MM.DD.YYYY, or ISO 8601",
            "example": "2026-04-23",
            "type": "string"
          },
          "forecastProbability": {
            "description": "Forecast probability",
            "example": 20,
            "type": "number"
          },
          "id": {
            "description": "opportunityId",
            "example": "yWQobCRIhRguQtD2llvk",
            "type": "string"
          },
          "isRemoveAllFollowers": {
            "description": "isRemoveAllFollowers",
            "example": true,
            "type": "boolean"
          },
          "locationId": {
            "description": "locationId",
            "example": "CLu7BaljjqrEjBGKTNNe",
            "type": "string"
          },
          "lostReasonId": {
            "description": "lost reason Id",
            "example": "CLu7BaljjqrEjBGKTNNe",
            "type": "string"
          },
          "monetaryValue": {
            "description": "Monetary value of the opportunity",
            "example": 220,
            "type": "object"
          },
          "name": {
            "description": "name",
            "example": "opportunity name",
            "type": "string"
          },
          "pipelineId": {
            "description": "pipeline Id",
            "example": "bCkKGpDsyPP4peuKowkG",
            "type": "string"
          },
          "pipelineStageId": {
            "description": "Identifier of the pipeline stage",
            "example": "7915dedc-8f18-44d5-8bc3-77c04e994a10",
            "type": "string"
          },
          "status": {
            "description": "Current status of the opportunity",
            "enum": [
              "open",
              "won",
              "lost",
              "abandoned",
              "all"
            ],
            "example": "open",
            "type": "string"
          }
        },
        "required": [
          "pipelineId",
          "locationId",
          "followers",
          "isRemoveAllFollowers",
          "followersActionType"
        ],
        "type": "object"
      },
      "UpsertOpportunitySuccessfulResponseDto": {
        "properties": {
          "new": {
            "description": "Indicates whether the opportunity was newly created (true) or updated (false)",
            "example": true,
            "type": "boolean"
          },
          "opportunity": {
            "description": "Updated / New Opportunity",
            "example": {},
            "type": "object"
          }
        },
        "required": [
          "opportunity",
          "new"
        ],
        "type": "object"
      },
      "UpsertSegmentDTO": {
        "properties": {
          "countryCodes": {
            "description": "Country codes",
            "example": [
              "US",
              "CA"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "Segment description",
            "example": "Target audience segment",
            "type": "string"
          },
          "expansionLevel": {
            "description": "Expansion level",
            "enum": [
              "BALANCED",
              "BROAD",
              "NARROW"
            ],
            "example": "BALANCED",
            "type": "string"
          },
          "id": {
            "description": "Segment identifier",
            "example": "seg_123",
            "type": "string"
          },
          "members": {
            "description": "Segment members — keywords, URLs, or apps that define the custom segment",
            "example": [
              {
                "keyword": "digital marketing",
                "memberType": "KEYWORD"
              },
              {
                "memberType": "URL",
                "url": "https://example.com"
              },
              {
                "app": "com.example.app",
                "memberType": "APP"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/MemberDTO"
            },
            "type": "array"
          },
          "membershipLifeSpan": {
            "description": "Membership life span",
            "example": 30,
            "type": "number"
          },
          "membershipStatus": {
            "description": "Membership status",
            "example": "OPEN",
            "type": "string"
          },
          "name": {
            "description": "Segment name",
            "example": "My Segment",
            "type": "string"
          },
          "ruleBasedUserList": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RuleBasedUserListDTO"
              }
            ],
            "description": "Rule-based user list config",
            "example": {
              "flexibleRuleUserList": {
                "exclusiveOperands": [],
                "inclusiveOperands": []
              },
              "prepopulationStatus": "REQUESTED"
            }
          },
          "seedUserListIds": {
            "description": "Seed user list IDs",
            "example": [
              "list_1"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "status": {
            "description": "Segment status",
            "example": "ENABLED",
            "type": "string"
          },
          "type": {
            "description": "Segment type",
            "example": "CUSTOM_SEGMENTS",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "UrlSlugCheckResponseDTO": {
        "properties": {
          "exists": {
            "description": "Indicates whether the url slug exists or not",
            "type": "boolean"
          }
        },
        "required": [
          "exists"
        ],
        "type": "object"
      },
      "UsagePlanDTO": {
        "properties": {
          "executionLimitPerCycle": {
            "description": "The execution limit per cycle",
            "example": 1000,
            "type": "number"
          },
          "fixedPricePerUnit": {
            "description": "The fixed price per unit, applicable for fixed price type",
            "example": 0.01001,
            "type": "number"
          },
          "maxPricePerUnit": {
            "description": "The max price per unit, applicable for dynamic price type",
            "example": "0.01001",
            "type": "string"
          },
          "meterId": {
            "description": "The meter id",
            "example": "680b97022b4a34420f5f9b93",
            "type": "string"
          },
          "meterName": {
            "description": "The meter name",
            "example": "Send Group iMessage",
            "type": "string"
          },
          "minPricePerUnit": {
            "description": "The min price per unit, applicable for dynamic price type",
            "example": "0.01001",
            "type": "string"
          },
          "priceType": {
            "description": "The price type",
            "enum": [
              "fixed",
              "dynamic"
            ],
            "example": "fixed",
            "type": "string"
          },
          "productName": {
            "description": "The product name",
            "example": "Send Group iMessage",
            "type": "string"
          },
          "productType": {
            "description": "The product type",
            "example": "workflow_action",
            "type": "string"
          },
          "usageUnit": {
            "description": "The usage unit for the meter",
            "example": "action / message",
            "type": "string"
          }
        },
        "required": [
          "productType",
          "productName",
          "usageUnit",
          "meterId",
          "meterName",
          "fixedPricePerUnit",
          "priceType",
          "minPricePerUnit",
          "maxPricePerUnit",
          "executionLimitPerCycle"
        ],
        "type": "object"
      },
      "UserDetailsDto": {
        "properties": {
          "email": {
            "description": "Email of the customer",
            "example": "example@example.com",
            "type": "string"
          },
          "isCustomer": {
            "description": "Is the person an admin or customer",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the customer",
            "example": "John Doe",
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "phone": {
            "description": "Phone no of the customer",
            "example": "+1-555-555-5555",
            "type": "string"
          }
        },
        "required": [
          "name",
          "email"
        ],
        "type": "object"
      },
      "UserSchema": {
        "properties": {
          "deleted": {
            "description": "Whether the user has been deleted",
            "example": false,
            "type": "boolean"
          },
          "email": {
            "description": "Email address of the user",
            "example": "john@example.com",
            "type": "string"
          },
          "extension": {
            "description": "Phone extension of the user",
            "example": "",
            "type": "string"
          },
          "firstName": {
            "description": "First name of the user",
            "example": "John",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the user",
            "example": "0IHuJvc2ofPAAA8GzTRi",
            "type": "string"
          },
          "lastName": {
            "description": "Last name of the user",
            "example": "Deo",
            "type": "string"
          },
          "lcPhone": {
            "description": "LC Phone Inbound Phone Numbers",
            "example": {
              "locationId": "+1234556677"
            },
            "type": "object"
          },
          "name": {
            "description": "Full name of the user",
            "example": "John Deo",
            "type": "string"
          },
          "permissions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PermissionsDto"
              }
            ],
            "description": "User permissions controlling access to various features",
            "example": {
              "campaignsEnabled": true,
              "campaignsReadOnly": false,
              "contactsEnabled": true,
              "workflowsEnabled": true
            }
          },
          "phone": {
            "description": "Phone number of the user",
            "example": "+1 808-868-8888",
            "type": "string"
          },
          "platformLanguage": {
            "description": "Platform language preference for the user",
            "enum": [
              "en_US",
              "es",
              "fr_CA",
              "fr_FR",
              "nl",
              "de",
              "pt_PT",
              "pt_BR",
              "it",
              "sv",
              "da",
              "fi",
              "no"
            ],
            "example": "en_US",
            "type": "string"
          },
          "roles": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RoleSchema"
              }
            ],
            "description": "Role and access configuration for the user",
            "example": {
              "locationIds": [
                "ve9EPM428h8vShlRW1KT"
              ],
              "role": "admin",
              "type": "account"
            }
          },
          "scopes": {
            "description": "List of OAuth scopes granted to this user",
            "enum": [
              "campaigns.readonly",
              "campaigns.write",
              "calendars.readonly",
              "calendars/events.write",
              "calendars/groups.write",
              "calendars.write",
              "contacts.write",
              "contacts/bulkActions.write",
              "workflows.readonly",
              "workflows.write",
              "triggers.write",
              "funnels.write",
              "forms.write",
              "surveys.write",
              "quizzes.write",
              "websites.write",
              "medias.write",
              "medias.readonly",
              "opportunities.write",
              "opportunities/leadValue.readonly",
              "opportunities/bulkActions.write",
              "pipelines.create",
              "reporting/phone.readonly",
              "reporting/adwords.readonly",
              "reporting/facebookAds.readonly",
              "reporting/attributions.readonly",
              "prospecting/auditReport.write",
              "reporting/reports.readonly",
              "reporting/agent.readonly",
              "reporting/reports.write",
              "reporting/stats.export",
              "payments.write",
              "payments/records.write",
              "payments/orders.readonly",
              "payments/orders.export",
              "payments/orders.import",
              "payments/orders.collectPayment",
              "payments/subscriptions.readonly",
              "payments/subscriptions.write",
              "payments/subscriptions.update",
              "payments/subscriptions.export",
              "payments/subscriptions.pauseResumeCancel",
              "payments/subscriptions.sharePaymentMethod",
              "payments/transactions.readonly",
              "payments/transactions.export",
              "payments/transactions.import",
              "payments/transactions.refund",
              "payments/transactions.viewReceipts",
              "payments/taxesSettings.readonly",
              "payments/settings.readonly",
              "payments/taxesSettings.updateInclusiveExclusive",
              "payments/taxesSettings.manageRates",
              "payments/taxesSettings.configureAutomatic",
              "products.readonly",
              "products.write",
              "products.delete",
              "products.duplicate",
              "products.bulkActions",
              "payments/settings.write",
              "payments/settings.configureReceipt",
              "payments/settings.configureSubscription",
              "invoices.write",
              "invoices.readonly",
              "invoices/schedule.readonly",
              "invoices/schedule.write",
              "invoices/template.readonly",
              "invoices/template.write",
              "reputation/review.write",
              "reputation/listing.write",
              "reputation/reviewsAIAgents.write",
              "reputation/gbp.write",
              "conversations.write",
              "conversations.readonly",
              "conversations/message.readonly",
              "conversations/message.write",
              "contentAI.write",
              "ai-studio.readonly",
              "ai-studio.write",
              "dashboard/stats.readonly",
              "locations/tags.write",
              "locations/tags.readonly",
              "marketing.write",
              "eliza.write",
              "settings.write",
              "socialplanner/post.write",
              "socialplanner/account.readonly",
              "socialplanner/account.write",
              "socialplanner/category.readonly",
              "socialplanner/category.write",
              "socialplanner/csv.readonly",
              "socialplanner/csv.write",
              "socialplanner/group.write",
              "socialplanner/hashtag.readonly",
              "socialplanner/hashtag.write",
              "socialplanner/oauth.readonly",
              "socialplanner/oauth.write",
              "socialplanner/post.readonly",
              "socialplanner/recurring.readonly",
              "socialplanner/recurring.write",
              "socialplanner/review.readonly",
              "socialplanner/review.write",
              "socialplanner/rss.readonly",
              "socialplanner/rss.write",
              "socialplanner/search.readonly",
              "socialplanner/setting.readonly",
              "socialplanner/setting.write",
              "socialplanner/stat.readonly",
              "socialplanner/tag.readonly",
              "socialplanner/tag.write",
              "socialplanner/filters.readonly",
              "socialplanner/medias.readonly",
              "socialplanner/medias.write",
              "socialplanner/watermarks.readonly",
              "socialplanner/watermarks.write",
              "socialplanner/metatag.readonly",
              "socialplanner/facebook.readonly",
              "socialplanner/linkedin.readonly",
              "socialplanner/twitter.readonly",
              "socialplanner/notification.readonly",
              "socialplanner/notification.write",
              "socialplanner/snapshot.readonly",
              "socialplanner/snapshot.write",
              "marketing/affiliate.write",
              "blogs.write",
              "membership.write",
              "communities.write",
              "gokollab.write",
              "certificates.write",
              "certificates.readonly",
              "adPublishing.write",
              "adPublishing.readonly",
              "prospecting.write",
              "prospecting.readonly",
              "prospecting/reports.readonly",
              "private-integration-location.readonly",
              "private-integration-location.write",
              "private-integration-company.readonly",
              "private-integration-company.write",
              "native-integrations.readonly",
              "native-integrations.write",
              "wordpress.write",
              "wordpress.read",
              "custom-menu-link.write",
              "qrcodes.write",
              "users/team-management.write",
              "users/team-management.readonly",
              "loginas.write",
              "users-sso-login-management.write",
              "users-sso-login-management.readonly",
              "sso-config.write",
              "snapshots/api.readonly",
              "snapshots/api.create",
              "snapshots/api.edit",
              "snapshots/api.push",
              "snapshots/api.refresh",
              "snapshots/api.share",
              "snapshots/api.delete",
              "internaltools.location-transfer.write",
              "internaltools.location-transfer.readonly",
              "affiliateportal.write",
              "affiliateportal.readonly",
              "companies.write",
              "internaltools.billing.write",
              "internaltools.billing.readonly",
              "internaltools.billing-common.readonly",
              "internaltools.billing-common.write",
              "voice-ai-agents.write",
              "voice-ai-agents.readonly",
              "voice-ai-common.readonly",
              "voice-ai-common.write",
              "voice-ai-agent-goals.readonly",
              "voice-ai-agent-goals.write",
              "voice-ai-dashboard.readonly",
              "agency/launchpad.write",
              "agency/launchpad.readonly",
              "launchpad/location.write",
              "launchpad/location.readonly",
              "text-ai-agents.write",
              "text-ai-agent-goals.readonly",
              "text-ai-agent-goals.write",
              "text-ai-agent-training.write",
              "text-ai-agents-dashboard.readonly",
              "locations.create",
              "locations.delete",
              "askai.write",
              "copilot.readonly",
              "locations.export.list",
              "locations.features-limits.manage",
              "locations.pause-resume",
              "locations.agency-subaccounts.manage",
              "locations.billing.manage",
              "locations.details.manage",
              "audit-logs.readonly",
              "audit-logs.export"
            ],
            "example": [
              "contacts.write",
              "campaigns.readonly"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "UserSuccessfulResponseDto": {
        "properties": {
          "email": {
            "description": "Email address of the user",
            "example": "john@example.com",
            "type": "string"
          },
          "extension": {
            "description": "Phone extension of the user",
            "example": "",
            "type": "string"
          },
          "firstName": {
            "description": "First name of the user",
            "example": "John",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier of the user",
            "example": "0IHuJvc2ofPAAA8GzTRi",
            "type": "string"
          },
          "lastName": {
            "description": "Last name of the user",
            "example": "Deo",
            "type": "string"
          },
          "lcPhone": {
            "description": "LC Phone Inbound Phone Numbers",
            "example": {
              "locationId": "+1234556677"
            },
            "type": "object"
          },
          "name": {
            "description": "Full name of the user",
            "example": "John Deo",
            "type": "string"
          },
          "permissions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PermissionsDto"
              }
            ],
            "description": "User permissions controlling access to various features",
            "example": {
              "campaignsEnabled": true,
              "campaignsReadOnly": false,
              "contactsEnabled": true,
              "workflowsEnabled": true
            }
          },
          "phone": {
            "description": "Phone number of the user",
            "example": "+1 808-868-8888",
            "type": "string"
          },
          "platformLanguage": {
            "description": "Platform language preference for the user",
            "enum": [
              "en_US",
              "es",
              "fr_CA",
              "fr_FR",
              "nl",
              "de",
              "pt_PT",
              "pt_BR",
              "it",
              "sv",
              "da",
              "fi",
              "no"
            ],
            "example": "en_US",
            "type": "string"
          },
          "roles": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RoleSchema"
              }
            ],
            "description": "Role and access configuration for the user",
            "example": {
              "locationIds": [
                "ve9EPM428h8vShlRW1KT"
              ],
              "role": "admin",
              "type": "account"
            }
          },
          "scopes": {
            "description": "List of OAuth scopes granted to this user",
            "enum": [
              "campaigns.readonly",
              "campaigns.write",
              "calendars.readonly",
              "calendars/events.write",
              "calendars/groups.write",
              "calendars.write",
              "contacts.write",
              "contacts/bulkActions.write",
              "workflows.readonly",
              "workflows.write",
              "triggers.write",
              "funnels.write",
              "forms.write",
              "surveys.write",
              "quizzes.write",
              "websites.write",
              "medias.write",
              "medias.readonly",
              "opportunities.write",
              "opportunities/leadValue.readonly",
              "opportunities/bulkActions.write",
              "pipelines.create",
              "reporting/phone.readonly",
              "reporting/adwords.readonly",
              "reporting/facebookAds.readonly",
              "reporting/attributions.readonly",
              "prospecting/auditReport.write",
              "reporting/reports.readonly",
              "reporting/agent.readonly",
              "reporting/reports.write",
              "reporting/stats.export",
              "payments.write",
              "payments/records.write",
              "payments/orders.readonly",
              "payments/orders.export",
              "payments/orders.import",
              "payments/orders.collectPayment",
              "payments/subscriptions.readonly",
              "payments/subscriptions.write",
              "payments/subscriptions.update",
              "payments/subscriptions.export",
              "payments/subscriptions.pauseResumeCancel",
              "payments/subscriptions.sharePaymentMethod",
              "payments/transactions.readonly",
              "payments/transactions.export",
              "payments/transactions.import",
              "payments/transactions.refund",
              "payments/transactions.viewReceipts",
              "payments/taxesSettings.readonly",
              "payments/settings.readonly",
              "payments/taxesSettings.updateInclusiveExclusive",
              "payments/taxesSettings.manageRates",
              "payments/taxesSettings.configureAutomatic",
              "products.readonly",
              "products.write",
              "products.delete",
              "products.duplicate",
              "products.bulkActions",
              "payments/settings.write",
              "payments/settings.configureReceipt",
              "payments/settings.configureSubscription",
              "invoices.write",
              "invoices.readonly",
              "invoices/schedule.readonly",
              "invoices/schedule.write",
              "invoices/template.readonly",
              "invoices/template.write",
              "reputation/review.write",
              "reputation/listing.write",
              "reputation/reviewsAIAgents.write",
              "reputation/gbp.write",
              "conversations.write",
              "conversations.readonly",
              "conversations/message.readonly",
              "conversations/message.write",
              "contentAI.write",
              "ai-studio.readonly",
              "ai-studio.write",
              "dashboard/stats.readonly",
              "locations/tags.write",
              "locations/tags.readonly",
              "marketing.write",
              "eliza.write",
              "settings.write",
              "socialplanner/post.write",
              "socialplanner/account.readonly",
              "socialplanner/account.write",
              "socialplanner/category.readonly",
              "socialplanner/category.write",
              "socialplanner/csv.readonly",
              "socialplanner/csv.write",
              "socialplanner/group.write",
              "socialplanner/hashtag.readonly",
              "socialplanner/hashtag.write",
              "socialplanner/oauth.readonly",
              "socialplanner/oauth.write",
              "socialplanner/post.readonly",
              "socialplanner/recurring.readonly",
              "socialplanner/recurring.write",
              "socialplanner/review.readonly",
              "socialplanner/review.write",
              "socialplanner/rss.readonly",
              "socialplanner/rss.write",
              "socialplanner/search.readonly",
              "socialplanner/setting.readonly",
              "socialplanner/setting.write",
              "socialplanner/stat.readonly",
              "socialplanner/tag.readonly",
              "socialplanner/tag.write",
              "socialplanner/filters.readonly",
              "socialplanner/medias.readonly",
              "socialplanner/medias.write",
              "socialplanner/watermarks.readonly",
              "socialplanner/watermarks.write",
              "socialplanner/metatag.readonly",
              "socialplanner/facebook.readonly",
              "socialplanner/linkedin.readonly",
              "socialplanner/twitter.readonly",
              "socialplanner/notification.readonly",
              "socialplanner/notification.write",
              "socialplanner/snapshot.readonly",
              "socialplanner/snapshot.write",
              "marketing/affiliate.write",
              "blogs.write",
              "membership.write",
              "communities.write",
              "gokollab.write",
              "certificates.write",
              "certificates.readonly",
              "adPublishing.write",
              "adPublishing.readonly",
              "prospecting.write",
              "prospecting.readonly",
              "prospecting/reports.readonly",
              "private-integration-location.readonly",
              "private-integration-location.write",
              "private-integration-company.readonly",
              "private-integration-company.write",
              "native-integrations.readonly",
              "native-integrations.write",
              "wordpress.write",
              "wordpress.read",
              "custom-menu-link.write",
              "qrcodes.write",
              "users/team-management.write",
              "users/team-management.readonly",
              "loginas.write",
              "users-sso-login-management.write",
              "users-sso-login-management.readonly",
              "sso-config.write",
              "snapshots/api.readonly",
              "snapshots/api.create",
              "snapshots/api.edit",
              "snapshots/api.push",
              "snapshots/api.refresh",
              "snapshots/api.share",
              "snapshots/api.delete",
              "internaltools.location-transfer.write",
              "internaltools.location-transfer.readonly",
              "affiliateportal.write",
              "affiliateportal.readonly",
              "companies.write",
              "internaltools.billing.write",
              "internaltools.billing.readonly",
              "internaltools.billing-common.readonly",
              "internaltools.billing-common.write",
              "voice-ai-agents.write",
              "voice-ai-agents.readonly",
              "voice-ai-common.readonly",
              "voice-ai-common.write",
              "voice-ai-agent-goals.readonly",
              "voice-ai-agent-goals.write",
              "voice-ai-dashboard.readonly",
              "agency/launchpad.write",
              "agency/launchpad.readonly",
              "launchpad/location.write",
              "launchpad/location.readonly",
              "text-ai-agents.write",
              "text-ai-agent-goals.readonly",
              "text-ai-agent-goals.write",
              "text-ai-agent-training.write",
              "text-ai-agents-dashboard.readonly",
              "locations.create",
              "locations.delete",
              "askai.write",
              "copilot.readonly",
              "locations.export.list",
              "locations.features-limits.manage",
              "locations.pause-resume",
              "locations.agency-subaccounts.manage",
              "locations.billing.manage",
              "locations.details.manage",
              "audit-logs.readonly",
              "audit-logs.export"
            ],
            "example": [
              "contacts.write",
              "campaigns.readonly"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "UserTypingBody": {
        "properties": {
          "conversationId": {
            "description": "Conversation Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "isTyping": {
            "description": "Typing status",
            "example": true,
            "type": "string"
          },
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "visitorId": {
            "description": "Unique ID assigned to each live chat visitor.",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "isTyping",
          "visitorId",
          "conversationId"
        ],
        "type": "object"
      },
      "V3InstalledLocationsListMetadataDto": {
        "properties": {
          "filterApplied": {
            "additionalProperties": true,
            "description": "Filters that were applied to the query",
            "example": {
              "companyId": "tDtDnQdgm2LXpyiqYvZ6",
              "isInstalled": true
            },
            "type": "object"
          },
          "sortApplied": {
            "additionalProperties": true,
            "description": "Sort order that was applied to the query",
            "example": {
              "installedAt": "desc"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "V3PaginationMetaDto": {
        "properties": {
          "currentPageSize": {
            "description": "Number of items returned in the current page",
            "example": 20,
            "type": "number"
          },
          "estimatedTotalRecords": {
            "description": "Estimated total records; present when exact total is unknown",
            "example": 1231,
            "type": "number"
          },
          "hasNextPage": {
            "description": "True when a next page is available",
            "example": true,
            "type": "boolean"
          },
          "hasPrevPage": {
            "description": "True when a previous page is available",
            "example": false,
            "type": "boolean"
          },
          "nextPageToken": {
            "description": "Opaque token to fetch the next page",
            "example": "example-token",
            "type": "string"
          },
          "prevPageToken": {
            "description": "Opaque token to fetch the previous page",
            "example": "example-token",
            "type": "string"
          },
          "totalRecords": {
            "description": "Total number of records matching the query across all pages",
            "example": 1231,
            "type": "number"
          }
        },
        "required": [
          "hasNextPage",
          "hasPrevPage",
          "currentPageSize"
        ],
        "type": "object"
      },
      "ValidateGroupSlugPostBody": {
        "properties": {
          "locationId": {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "slug": {
            "description": "Slug",
            "example": "calendar-1",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "slug"
        ],
        "type": "object"
      },
      "ValidateGroupSlugSuccessResponseDTO": {
        "properties": {
          "available": {
            "type": "boolean"
          }
        },
        "required": [
          "available"
        ],
        "type": "object"
      },
      "VariationDTO": {
        "properties": {
          "_id": {
            "description": "The ID of the variation.",
            "example": "60af88475f1b2c001f5d5f4c",
            "type": "string"
          },
          "content": {
            "description": "The text content of the variation.",
            "example": "Check out our latest blog post! #marketing #socialmedia",
            "type": "string"
          },
          "mentions": {
            "description": "Platform-specific mentions within the content (e.g., @username references).",
            "example": [
              {
                "length": 12,
                "offset": 10,
                "platform": "instagram",
                "username": "example_user"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "ogTags": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgTagsDTO"
              }
            ],
            "description": "Open Graph tags for link previews."
          }
        },
        "type": "object"
      },
      "VariationInputDTO": {
        "properties": {
          "content": {
            "description": "The text content of the variation.",
            "example": "Check out our latest blog post! #marketing #socialmedia",
            "type": "string"
          },
          "mentions": {
            "description": "Platform-specific mentions within the content (e.g., @username references).",
            "example": [
              {
                "length": 12,
                "offset": 10,
                "platform": "instagram",
                "username": "example_user"
              }
            ],
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "ogTags": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OgTagsInputDTO"
              }
            ],
            "description": "Open Graph tags for link previews."
          }
        },
        "type": "object"
      },
      "VerificationBodyDto": {
        "properties": {
          "type": {
            "description": "Email Verification type",
            "enum": [
              "email",
              "contact"
            ],
            "example": "email",
            "type": "string"
          },
          "verify": {
            "description": "Email Verification recepient (email address / contactId)",
            "example": "abc@example.com",
            "type": "string"
          }
        },
        "required": [
          "type",
          "verify"
        ],
        "type": "object"
      },
      "VoiceAILanguage": {
        "description": "Language code for the agent's speech and understanding. Default: \"en-US\"",
        "enum": [
          "en-US",
          "pt-BR",
          "es",
          "fr",
          "de",
          "it",
          "nl-NL",
          "multi"
        ],
        "type": "string"
      },
      "VoiceAiCreateActionResponseDTO": {
        "properties": {
          "actionParameters": {
            "description": "Action parameters - structure varies by actionType",
            "examples": {
              "callTransfer": {
                "summary": "Call Transfer Action Parameters",
                "value": {
                  "hearWhisperMessage": true,
                  "transferToType": "number",
                  "transferToValue": "+12345678901",
                  "triggerMessage": "Let me transfer you to a manager right away"
                }
              },
              "dataExtraction": {
                "summary": "Data Extraction Action Parameters",
                "value": {
                  "contactFieldId": "507f1f77bcf86cd799439011",
                  "description": "Caller's phone number",
                  "examples": [
                    "+1234567890",
                    "+9876543210"
                  ],
                  "overwriteExistingValue": false
                }
              },
              "workflowTrigger": {
                "summary": "Workflow Trigger Action Parameters",
                "value": {
                  "triggerMessage": "Let me start that process for you",
                  "triggerPrompt": "When caller requests a quote",
                  "workflowId": "507f1f77bcf86cd799439011"
                }
              }
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallTransferActionParameters"
              },
              {
                "$ref": "#/components/schemas/DataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/InCallDataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/WorkflowTriggerParameters"
              },
              {
                "$ref": "#/components/schemas/SMSParameters"
              },
              {
                "$ref": "#/components/schemas/AppointmentBookingActionParameters"
              },
              {
                "$ref": "#/components/schemas/CustomActionParameters"
              },
              {
                "$ref": "#/components/schemas/KnowledgeBaseParameters"
              }
            ]
          },
          "actionType": {
            "description": "Type of action",
            "enum": [
              "CALL_TRANSFER",
              "DATA_EXTRACTION",
              "IN_CALL_DATA_EXTRACTION",
              "WORKFLOW_TRIGGER",
              "SMS",
              "APPOINTMENT_BOOKING",
              "CUSTOM_ACTION",
              "KNOWLEDGE_BASE"
            ],
            "example": "CALL_TRANSFER",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the created action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for this action",
            "example": "Transfer to Manager",
            "type": "string"
          }
        },
        "required": [
          "id",
          "actionType",
          "name",
          "actionParameters"
        ],
        "type": "object"
      },
      "VoiceAiUpdateActionResponseDTO": {
        "properties": {
          "actionParameters": {
            "description": "Action parameters - structure varies by actionType",
            "examples": {
              "callTransfer": {
                "summary": "Call Transfer Action Parameters",
                "value": {
                  "hearWhisperMessage": true,
                  "transferToType": "number",
                  "transferToValue": "+12345678901",
                  "triggerMessage": "Let me transfer you to a manager right away"
                }
              },
              "dataExtraction": {
                "summary": "Data Extraction Action Parameters",
                "value": {
                  "contactFieldId": "507f1f77bcf86cd799439011",
                  "description": "Caller's phone number",
                  "examples": [
                    "+1234567890",
                    "+9876543210"
                  ],
                  "overwriteExistingValue": false
                }
              },
              "workflowTrigger": {
                "summary": "Workflow Trigger Action Parameters",
                "value": {
                  "triggerMessage": "Let me start that process for you",
                  "triggerPrompt": "When caller requests a quote",
                  "workflowId": "507f1f77bcf86cd799439011"
                }
              }
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/CallTransferActionParameters"
              },
              {
                "$ref": "#/components/schemas/DataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/InCallDataExtractionActionParameters"
              },
              {
                "$ref": "#/components/schemas/WorkflowTriggerParameters"
              },
              {
                "$ref": "#/components/schemas/SMSParameters"
              },
              {
                "$ref": "#/components/schemas/AppointmentBookingActionParameters"
              },
              {
                "$ref": "#/components/schemas/CustomActionParameters"
              },
              {
                "$ref": "#/components/schemas/KnowledgeBaseParameters"
              }
            ]
          },
          "actionType": {
            "description": "Type of action",
            "enum": [
              "CALL_TRANSFER",
              "DATA_EXTRACTION",
              "IN_CALL_DATA_EXTRACTION",
              "WORKFLOW_TRIGGER",
              "SMS",
              "APPOINTMENT_BOOKING",
              "CUSTOM_ACTION",
              "KNOWLEDGE_BASE"
            ],
            "example": "CALL_TRANSFER",
            "type": "string"
          },
          "id": {
            "description": "Unique identifier for the created action",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          },
          "name": {
            "description": "Human-readable name for this action",
            "example": "Transfer to Manager",
            "type": "string"
          }
        },
        "required": [
          "id",
          "actionType",
          "name",
          "actionParameters"
        ],
        "type": "object"
      },
      "VoidInvoiceDto": {
        "properties": {
          "altId": {
            "description": "location Id / company Id based on altType",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "description": "Alt Type",
            "enum": [
              "location"
            ],
            "example": "location",
            "type": "string"
          }
        },
        "required": [
          "altId",
          "altType"
        ],
        "type": "object"
      },
      "VoidInvoiceResponseDto": {
        "properties": {
          "_id": {
            "description": "Invoice Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altId": {
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c",
            "type": "string"
          },
          "altType": {
            "enum": [
              "location"
            ],
            "type": "string"
          },
          "amountDue": {
            "description": "Total Amount Due",
            "example": 999,
            "type": "number"
          },
          "amountPaid": {
            "description": "Amount Paid",
            "example": 0,
            "type": "number"
          },
          "automaticTaxesCalculated": {
            "description": "Is Automatic taxes calculated for the Invoice items",
            "example": true,
            "type": "boolean"
          },
          "automaticTaxesEnabled": {
            "description": "Automatic taxes enabled for the Invoice",
            "example": true,
            "type": "boolean"
          },
          "businessDetails": {
            "description": "Business Details",
            "example": {
              "address": {
                "addressLine1": "9931 Beechwood",
                "city": "St. Houston",
                "countryCode": "USA",
                "postalCode": "559-6993",
                "state": "TX"
              },
              "name": "Alex",
              "phoneNo": "+1-214-559-6993",
              "website": "www.example.com"
            },
            "type": "object"
          },
          "contactDetails": {
            "description": "Contact Details",
            "example": {
              "address": {
                "countryCode": "US"
              },
              "customFields": [],
              "email": "alex@example.com",
              "id": "c6tZZU0rJBf30ZXx9Gli",
              "name": "Alex",
              "phoneNo": "+1-214-559-6993"
            },
            "type": "object"
          },
          "createdAt": {
            "description": "created at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          },
          "currency": {
            "description": "Currency",
            "example": "USD",
            "type": "string"
          },
          "discount": {
            "description": "Discount",
            "example": {
              "type": "percentage",
              "value": 0
            },
            "type": "object"
          },
          "dueDate": {
            "description": "Due date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "invoiceItems": {
            "description": "Invoice Items",
            "example": [
              {
                "_id": "c6tZZU0rJBf30ZXx9Gli",
                "amount": 999,
                "currency": "USD",
                "name": "Macbook Pro",
                "priceId": "c6tZZU0rJBf30ZXx9Gli",
                "productId": "c6tZZU0rJBf30ZXx9Gli",
                "qty": 1,
                "taxes": []
              }
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "invoiceNumber": {
            "description": "Invoice Number",
            "example": "19",
            "type": "number"
          },
          "issueDate": {
            "description": "Issue date in YYYY-MM-DD format",
            "example": "2023-01-01",
            "type": "string"
          },
          "liveMode": {
            "description": "Live Mode",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the invoice",
            "example": "New Invoice",
            "type": "string"
          },
          "paymentSchedule": {
            "description": "split invoice into payment schedule summing up to full invoice amount",
            "type": "object"
          },
          "status": {
            "description": "Invoice Status",
            "enum": [
              "draft",
              "sent",
              "payment_processing",
              "paid",
              "void",
              "partially_paid"
            ],
            "example": "draft",
            "type": "string"
          },
          "title": {
            "description": "Title",
            "example": "INVOICE",
            "type": "string"
          },
          "total": {
            "description": "Total Amount",
            "example": 999,
            "type": "number"
          },
          "updatedAt": {
            "description": "updated at",
            "example": "2023-12-12T09:27:42.355Z",
            "type": "string"
          }
        },
        "required": [
          "_id",
          "status",
          "liveMode",
          "amountPaid",
          "altId",
          "altType",
          "name",
          "businessDetails",
          "invoiceNumber",
          "currency",
          "contactDetails",
          "issueDate",
          "dueDate",
          "invoiceItems",
          "total",
          "title",
          "amountDue",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "WeightOptionsDto": {
        "properties": {
          "unit": {
            "description": "Weight unit of the product",
            "enum": [
              "kg",
              "lb",
              "g",
              "oz"
            ],
            "example": "kg",
            "type": "string"
          },
          "value": {
            "description": "Actual weight of the product",
            "example": 10,
            "type": "number"
          }
        },
        "required": [
          "value",
          "unit"
        ],
        "type": "object"
      },
      "WelcomeMessageQuestion": {
        "properties": {
          "question": {
            "description": "Question title text",
            "example": "How can we help?",
            "type": "string"
          },
          "response": {
            "description": "Auto-response message",
            "example": "Thanks for reaching out",
            "type": "string"
          }
        },
        "required": [
          "question"
        ],
        "type": "object"
      },
      "WhitelabelDetailsDTO": {
        "properties": {
          "domain": {
            "description": "Domain of the whitelabel company",
            "example": "example.com",
            "type": "string"
          },
          "logoUrl": {
            "description": "Logo URL of the whitelabel company",
            "example": "https://example.com/logo.png",
            "type": "string"
          }
        },
        "required": [
          "domain",
          "logoUrl"
        ],
        "type": "object"
      },
      "WidgetSettingsCustomizationDTO": {
        "properties": {
          "position": {
            "description": "Position",
            "example": "left",
            "type": "string"
          },
          "sizes": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WidgetSettingsCustomizationSizeDTO"
              }
            ],
            "description": "Typography Color Options",
            "example": {
              "height": 600,
              "width": 360
            }
          }
        },
        "type": "object"
      },
      "WidgetSettingsCustomizationSizeDTO": {
        "properties": {
          "height": {
            "description": "Height",
            "example": 360,
            "type": "number"
          },
          "width": {
            "description": "Width",
            "example": 360,
            "type": "number"
          }
        },
        "type": "object"
      },
      "WidgetSettingsDTO": {
        "properties": {
          "acknowledgementDetails": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AcknowledgementDetailsDTO"
              }
            ],
            "description": "Acknowledgement Details",
            "example": {
              "icon": "check",
              "placeholderColor": "#000"
            }
          },
          "advanceSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AdvanceSettingsDTO"
              }
            ],
            "description": "Advance Settings",
            "example": {
              "enableContactForm": true
            }
          },
          "agencyName": {
            "description": "Name of the agency",
            "example": "Example Agency",
            "type": "string"
          },
          "agencyWebsite": {
            "description": "Website URL of the agency",
            "example": "https://example.com",
            "type": "string"
          },
          "allowAvatarImage": {
            "description": "Allow avatar image",
            "example": true,
            "type": "boolean"
          },
          "autoCountryCode": {
            "description": "Boolean indicating whether to automatically detect country code",
            "example": true,
            "type": "boolean"
          },
          "chatIcon": {
            "description": "Message Chat Circle",
            "example": "messageChatCircle",
            "type": "string"
          },
          "chatType": {
            "description": "Chat Type",
            "example": "emailChat",
            "type": "string"
          },
          "countryCode": {
            "description": "Country code",
            "example": "US",
            "type": "string"
          },
          "dimensions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WidgetSettingsCustomizationDTO"
              }
            ],
            "description": "Customizations",
            "example": {
              "position": "right"
            }
          },
          "enableRevisitMessage": {
            "description": "Boolean indicating whether to enable a revisit message",
            "example": true,
            "type": "boolean"
          },
          "heading": {
            "description": "Heading text",
            "example": "Welcome to Our Website",
            "type": "string"
          },
          "isPromptAvatarImageOptimize": {
            "description": "Avatar Image Optimization",
            "example": false,
            "type": "boolean"
          },
          "legalMsg": {
            "description": "Legal message",
            "example": "By using this website, you agree to our terms and conditions.",
            "type": "string"
          },
          "liveChatAckMsg": {
            "description": "Message acknowledging a live chat",
            "example": "Thank you for reaching out. How may I assist you today?",
            "type": "string"
          },
          "liveChatEndedMsg": {
            "description": "Message indicating the end of a live chat",
            "example": "Thank you for chatting with us. Have a great day!",
            "type": "string"
          },
          "liveChatFeedbackMsg": {
            "description": "Message asking for feedback after a live chat",
            "example": "We would appreciate your feedback. Please rate your experience.",
            "type": "string"
          },
          "liveChatFeedbackNote": {
            "description": "Note regarding live chat feedback",
            "example": "Your feedback helps us improve our services.",
            "type": "string"
          },
          "liveChatIntroMsg": {
            "description": "Introduction message for a live chat",
            "example": "Hello! Welcome to our live chat support. How can I assist you today?",
            "type": "string"
          },
          "liveChatUserInactiveMsg": {
            "description": "Message for inactive users during a live chat",
            "example": "Are you still there? Please let us know if you need assistance.",
            "type": "string"
          },
          "liveChatUserInactiveTime": {
            "description": "Time for considering a user inactive during a live chat",
            "example": "5 minutes",
            "type": "string"
          },
          "liveChatVisitorInactiveMsg": {
            "description": "Message for inactive visitors during a live chat",
            "example": "Looks like you stepped away. Feel free to return whenever you need help.",
            "type": "string"
          },
          "liveChatVisitorInactiveTime": {
            "description": "Time for considering a visitor inactive during a live chat",
            "example": "10 minutes",
            "type": "string"
          },
          "locale": {
            "description": "Locale setting",
            "example": "en_US",
            "type": "string"
          },
          "locationCountryCode": {
            "description": "Location Country Code",
            "example": "US",
            "type": "string"
          },
          "promptAvatar": {
            "description": "Avatar for prompts",
            "example": "avatar.jpg",
            "type": "string"
          },
          "promptAvatarAltText": {
            "description": "Prompt Avatar Alt Text",
            "example": "company logo",
            "type": "string"
          },
          "promptMsg": {
            "description": "Prompt message",
            "example": "Need assistance? Feel free to ask us anything!",
            "type": "string"
          },
          "promptType": {
            "description": "Prompt Type",
            "example": "avatar",
            "type": "string"
          },
          "representativeAssignedMessage": {
            "description": "Representative Assigned Message",
            "example": "#4285F4",
            "type": "string"
          },
          "revisitPromptMsg": {
            "description": "Message for revisiting prompts",
            "example": "Welcome back! How can we help you today?",
            "type": "string"
          },
          "sendActionText": {
            "description": "Text for send action",
            "example": "Send",
            "type": "string"
          },
          "showAgencyBranding": {
            "description": "Boolean indicating whether to show agency branding",
            "example": true,
            "type": "boolean"
          },
          "showConsentCheckbox": {
            "description": "Boolean indicating whether to show a consent checkbox",
            "example": true,
            "type": "boolean"
          },
          "showLiveChatWelcomeMsg": {
            "description": "Boolean indicating whether to show a welcome message for live chat",
            "example": true,
            "type": "boolean"
          },
          "showPrompt": {
            "description": "Boolean indicating whether to show prompts",
            "example": true,
            "type": "boolean"
          },
          "subHeading": {
            "description": "Subheading text",
            "example": "We are here to help you!",
            "type": "string"
          },
          "successMsg": {
            "description": "Success message",
            "example": "Your message has been sent successfully.",
            "type": "string"
          },
          "supportContact": {
            "description": "Contact information for support",
            "example": "support@example.com",
            "type": "string"
          },
          "thankYouMsg": {
            "description": "Thank you message",
            "example": "Thank you for visiting our website!",
            "type": "string"
          },
          "theme": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WidgetSettingsThemeDTO"
              }
            ],
            "description": "Theme",
            "example": {
              "name": "theme1"
            }
          },
          "useEmailField": {
            "description": "Boolean indicating whether to use an email field",
            "example": true,
            "type": "boolean"
          },
          "waNumber": {
            "description": "WhatsApp number",
            "example": "+1234567890",
            "type": "string"
          },
          "widgetId": {
            "description": "Widget Id",
            "example": "92929283937922",
            "type": "string"
          },
          "widgetPlacement": {
            "description": "Widget Placement",
            "example": "embedded",
            "type": "string"
          },
          "widgetPrimaryColor": {
            "description": "Primary color for the widget",
            "example": "#4285F4",
            "type": "string"
          }
        },
        "required": [
          "chatType",
          "chatIcon"
        ],
        "type": "object"
      },
      "WidgetSettingsThemeCustomColorDTO": {
        "properties": {
          "avatarBackgroundColor": {
            "description": "Avatar Background Color",
            "example": "#fffff",
            "type": "string"
          },
          "avatarBorderColor": {
            "description": "Avatar Border Color",
            "example": "#fffff",
            "type": "string"
          },
          "backgroundColor": {
            "description": "Background Color",
            "example": "#fffff",
            "type": "string"
          },
          "buttonColor": {
            "description": "Button Color",
            "example": "#fffff",
            "type": "string"
          },
          "chatBubbleColor": {
            "description": "Chat Bubble Color",
            "example": "#fffff",
            "type": "string"
          },
          "headerColor": {
            "description": "Header Color",
            "example": "#fffff",
            "type": "string"
          },
          "receivedMessageColor": {
            "description": "Received Message Color",
            "example": "#fffff",
            "type": "string"
          },
          "senderMessageColor": {
            "description": "Sender Message Color",
            "example": "#fffff",
            "type": "string"
          }
        },
        "type": "object"
      },
      "WidgetSettingsThemeDTO": {
        "properties": {
          "colors": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WidgetSettingsThemeCustomColorDTO"
              }
            ],
            "description": "Custom Color Options",
            "example": {
              "chatBubbleColor": "#4285F4",
              "name": "theme1"
            }
          },
          "name": {
            "description": "Theme Name",
            "example": "theme1",
            "type": "string"
          }
        },
        "type": "object"
      },
      "WorkflowCampaignPublicDto": {
        "properties": {
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-12-12T08:24:46.700Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Campaign ID",
            "example": "693bd14ea6b50a8df0180e9a",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "sorting workflow",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID",
            "example": "115b9030-907c-474c-90a5-2debd838a024",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "published",
              "draft"
            ],
            "example": "published",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated at timestamp",
            "example": "2026-01-23T05:58:48.453Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "status",
          "sourceId",
          "deleted",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "WorkflowCampaignPublicV2Dto": {
        "properties": {
          "createdAt": {
            "description": "Created at timestamp",
            "example": "2025-12-12T08:24:46.700Z",
            "type": "string"
          },
          "deleted": {
            "description": "Whether the campaign is deleted",
            "example": false,
            "type": "boolean"
          },
          "id": {
            "description": "Campaign ID",
            "example": "693bd14ea6b50a8df0180e9a",
            "type": "string"
          },
          "name": {
            "description": "Campaign name",
            "example": "sorting workflow",
            "type": "string"
          },
          "source": {
            "description": "Source of the campaign",
            "example": "workflow",
            "type": "string"
          },
          "sourceId": {
            "description": "Source ID of the campaign",
            "example": "115b9030-907c-474c-90a5-2debd838a024",
            "type": "string"
          },
          "status": {
            "description": "Campaign status",
            "enum": [
              "published",
              "draft"
            ],
            "example": "published",
            "type": "string"
          },
          "updatedAt": {
            "description": "Updated at timestamp",
            "example": "2026-01-23T05:58:48.453Z",
            "type": "string"
          }
        },
        "required": [
          "id",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "WorkflowCampaignSubSourcePublicV2Dto": {
        "properties": {
          "createdAt": {
            "description": "Timestamp when this step was added to the workflow",
            "example": "2025-12-12T08:24:46.700Z",
            "type": "string"
          },
          "editorContentUrl": {
            "description": "URL to fetch the rendered step content as HTML. Issue a GET against this URL to retrieve the body.",
            "example": "https://storage.googleapis.com/email-templates/abc123.html",
            "type": "string"
          },
          "editorType": {
            "description": "Editor type for this step",
            "enum": [
              "html",
              "builder",
              "text"
            ],
            "example": "html",
            "type": "string"
          },
          "fromEmail": {
            "description": "Sender email address",
            "example": "john@example.com",
            "type": "string"
          },
          "fromName": {
            "description": "Sender name",
            "example": "John Doe",
            "type": "string"
          },
          "id": {
            "description": "Sub-source identifier (workflow step). Pass this value as the `subSourceId` query parameter on the campaign stats endpoint to retrieve stats scoped to this step.",
            "example": "a3f1c0e2-6d4b-4f3a-9c1e-7b2d8f5a4c01",
            "type": "string"
          },
          "isPlainText": {
            "description": "Whether this step uses plain text",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Workflow step name",
            "example": "Send welcome email",
            "type": "string"
          },
          "previewText": {
            "description": "Preview text",
            "example": "Check out our latest updates",
            "type": "string"
          },
          "subject": {
            "description": "Email subject line",
            "example": "Welcome to our newsletter",
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp when this step was last updated",
            "example": "2026-01-23T05:58:48.453Z",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "WorkflowSchema": {
        "properties": {
          "createdAt": {
            "example": "2021-05-26T11:33:49.000Z",
            "type": "string"
          },
          "id": {
            "example": "78559bb3-b920-461e-b010-7b2a2816d2a9",
            "type": "string"
          },
          "locationId": {
            "example": "eBG6WapS3v4ZqwA45MTxtYJ",
            "type": "string"
          },
          "name": {
            "example": "First Workflow",
            "type": "string"
          },
          "status": {
            "example": "draft",
            "type": "string"
          },
          "updatedAt": {
            "example": "2021-05-26T11:33:49.000Z",
            "type": "string"
          },
          "version": {
            "example": 2,
            "type": "number"
          }
        },
        "type": "object"
      },
      "WorkflowTriggerParameters": {
        "properties": {
          "triggerMessage": {
            "description": "Message to tell the caller",
            "example": "Let me start that process for you",
            "type": "string"
          },
          "triggerPrompt": {
            "description": "When to trigger this workflow",
            "example": "When caller requests a quote",
            "type": "string"
          },
          "workflowId": {
            "description": "Workflow ID to trigger",
            "example": "507f1f77bcf86cd799439011",
            "type": "string"
          }
        },
        "required": [
          "triggerPrompt",
          "triggerMessage",
          "workflowId"
        ],
        "type": "object"
      },
      "WorkingHours": {
        "properties": {
          "dayOfTheWeek": {
            "description": "Day of the week (0=Sunday, 1=Monday, etc.)",
            "example": 1,
            "type": "number"
          },
          "intervals": {
            "description": "Time intervals for this day",
            "items": {
              "$ref": "#/components/schemas/Interval"
            },
            "type": "array"
          }
        },
        "required": [
          "dayOfTheWeek"
        ],
        "type": "object"
      },
      "WrappedCloneQueueItemResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/CloneQueueItemResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedCreateCategoryQueueResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/CreateCategoryQueueResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedCreateQueueItemResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/CreateQueueItemResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedDeleteActivePostResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/DeleteActivePostResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedDiscardEditSessionResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/DiscardEditSessionResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedEditSessionCalendarResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/EditSessionCalendarResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedFetchAvailableCategoriesResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/FetchAvailableCategoriesResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedFetchCalendarListResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/FetchCalendarListResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedFetchCategoryQueuesResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/FetchCategoryQueuesResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedFetchQueueByIdResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/FetchQueueByIdResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedFetchQueueItemsResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/FetchQueueItemsResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedFetchSlotsResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/FetchSlotsResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedGeneralSuccessResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/GeneralSuccessResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedResetQueueItemResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/ResetQueueItemResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedSaveEditSessionResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/SaveEditSessionResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedStartEditSessionResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/StartEditSessionResponseDTO"
          },
          "statusCode": {
            "example": 201,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedUpdateCategoryQueueResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/UpdateCategoryQueueResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "WrappedUpdateQueueItemResponseDTO": {
        "properties": {
          "results": {
            "$ref": "#/components/schemas/UpdateQueueItemResponseDTO"
          },
          "statusCode": {
            "example": 200,
            "type": "number"
          },
          "success": {
            "example": true,
            "type": "boolean"
          },
          "traceId": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "statusCode",
          "results"
        ],
        "type": "object"
      },
      "YouTubeOAuthAccountSchema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseOAuthAccountSchema"
          },
          {
            "properties": {
              "platform": {
                "enum": [
                  "youtube"
                ],
                "example": "youtube",
                "type": "string"
              }
            },
            "type": "object"
          }
        ]
      },
      "YoutubePostSchema": {
        "properties": {
          "privacyLevel": {
            "description": "Video visibility/privacy setting.\n\n**Available Values:**\n- `public` - Anyone can search and view\n- `unlisted` - Only people with the link can view\n- `private` - Only you can view",
            "enum": [
              "private",
              "public",
              "unlisted"
            ],
            "example": "public",
            "type": "string"
          },
          "title": {
            "description": "Video title displayed on YouTube.\n\n**Max length:** 100 characters\n\n**Best Practices:**\n- Include relevant keywords\n- Be descriptive but concise\n- Avoid clickbait",
            "example": "How to Build a Successful Marketing Strategy in 2024",
            "type": "string"
          },
          "type": {
            "description": "YouTube video format type.\n\n**Available Types:**\n- `video` - Standard YouTube video (landscape, any duration)\n- `short` - YouTube Shorts (vertical, up to 60 seconds)\n\n**Required field.**",
            "enum": [
              "video",
              "short"
            ],
            "example": "video",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "type": "object"
      },
      "YoutubeProfileSchema": {
        "properties": {
          "avatar": {
            "description": "Avatar of profile account",
            "example": "https://yt3.ggpht.com/example-avatar",
            "type": "string"
          },
          "id": {
            "description": "Id",
            "example": "w37swmmLbA02zgqKPpxITe",
            "type": "string"
          },
          "isConnected": {
            "description": "Is connected",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "description": "Name of account",
            "example": "Account Name",
            "type": "string"
          },
          "type": {
            "description": "Youtube Account Type",
            "example": "PROFILE",
            "type": "string"
          },
          "username": {
            "description": "Username of account",
            "example": "@username",
            "type": "string"
          },
          "verified": {
            "description": "Is verified",
            "example": true,
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "advancedFollowupDto": {
        "properties": {
          "enabled": {
            "description": "Whether advanced followup is enabled",
            "example": true,
            "type": "boolean"
          },
          "followupSequence": {
            "description": "Sequence of followup actions to perform",
            "items": {
              "$ref": "#/components/schemas/FollowupSequence"
            },
            "type": "array"
          },
          "followupSettings": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FollowupSettings"
              }
            ],
            "description": "Additional settings for followup behavior"
          },
          "scenarioId": {
            "description": "ID of the followup scenario",
            "enum": [
              "contactStoppedReplying",
              "contactIsBusy",
              "contactRequested"
            ],
            "example": "contactIsBusy",
            "type": "string"
          }
        },
        "required": [
          "enabled",
          "scenarioId",
          "followupSequence"
        ],
        "type": "object"
      },
      "appointmentBookingDto": {
        "properties": {
          "actionId": {
            "description": "Optional action ID reference",
            "example": "action123",
            "type": "string"
          },
          "calendarId": {
            "description": "Calendar ID for appointment booking",
            "example": "calendar123",
            "type": "string"
          },
          "cancelEnabled": {
            "default": false,
            "description": "Whether to allow appointment cancellation (cannot be true when onlySendLink is true)",
            "example": true,
            "type": "boolean"
          },
          "onlySendLink": {
            "description": "If true, only sends the appointment link without booking",
            "example": false,
            "type": "boolean"
          },
          "rescheduleEnabled": {
            "default": false,
            "description": "Whether to allow appointment rescheduling (cannot be true when onlySendLink is true)",
            "example": true,
            "type": "boolean"
          },
          "sleepAfterBooking": {
            "description": "Whether to put the agent to sleep after booking (cannot be true when onlySendLink is true)",
            "example": true,
            "type": "boolean"
          },
          "sleepTime": {
            "description": "Sleep duration (required when sleepAfterBooking is true)",
            "example": 24,
            "type": "number"
          },
          "sleepTimeUnit": {
            "description": "Unit for sleep time (required when sleepAfterBooking is true)",
            "enum": [
              "days",
              "hours",
              "minutes"
            ],
            "example": "hours",
            "type": "string"
          },
          "transferAgent": {
            "description": "Agent ID to transfer to (required when transferBot is true)",
            "example": "employee456",
            "type": "string"
          },
          "transferBot": {
            "description": "Whether to transfer to another agent after booking (cannot be true when onlySendLink is true)",
            "example": false,
            "type": "boolean"
          },
          "triggerWorkflow": {
            "description": "Whether to trigger a workflow after booking (cannot be true when onlySendLink is true)",
            "example": true,
            "type": "boolean"
          },
          "workflowIds": {
            "description": "Workflow IDs to trigger after booking (required when triggerWorkflow is true)",
            "example": [
              "workflow123"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "calendarId",
          "onlySendLink",
          "triggerWorkflow",
          "sleepAfterBooking",
          "transferBot",
          "rescheduleEnabled",
          "cancelEnabled"
        ],
        "type": "object"
      },
      "campaignsSchema": {
        "properties": {
          "id": {
            "example": "mIVALPYuTD7YjUHnFEx4",
            "type": "string"
          },
          "locationId": {
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "name": {
            "example": "test",
            "type": "string"
          },
          "status": {
            "example": "published",
            "type": "string"
          }
        },
        "type": "object"
      },
      "contentType": {
        "enum": [
          "video",
          "assignment",
          "quiz"
        ],
        "type": "string"
      },
      "createAssociationReqDto": {
        "properties": {
          "firstObjectKey": {
            "description": "First Objects Key",
            "example": "custom_objects.children",
            "type": "object"
          },
          "firstObjectLabel": {
            "description": "First Objects Association Label (custom_objects.children)",
            "example": "student",
            "type": "object"
          },
          "key": {
            "description": "Association's Unique key",
            "example": "student_teacher",
            "type": "string"
          },
          "locationId": {
            "example": "string",
            "type": "string"
          },
          "secondObjectKey": {
            "description": "Second Objects Key",
            "example": "contact",
            "type": "object"
          },
          "secondObjectLabel": {
            "description": "Second Object Association Label (contact)",
            "example": "Teacher",
            "type": "object"
          }
        },
        "required": [
          "locationId",
          "key",
          "firstObjectLabel",
          "firstObjectKey",
          "secondObjectLabel",
          "secondObjectKey"
        ],
        "type": "object"
      },
      "createRelationReqDto": {
        "properties": {
          "associationId": {
            "description": "Association's Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "firstRecordId": {
            "description": "First Record's Id. For instance, if you have an association between a contact and a custom object, and you specify the contact as the first object while creating the association, then your firstRecordId would be the contactId ",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          },
          "locationId": {
            "description": "Your Sub Account's ID",
            "example": "clF1LD04GTUKN3b3XuOj",
            "type": "string"
          },
          "secondRecordId": {
            "description": "Second Record's Id.For instance, if you have an association between a contact and a custom object, and you specify the custom object as the second entity while creating the association, then your secondRecordId would be the customObject record Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "type": "string"
          }
        },
        "required": [
          "locationId",
          "associationId",
          "firstRecordId",
          "secondRecordId"
        ],
        "type": "object"
      },
      "customFieldsInputArraySchema": {
        "properties": {
          "fieldValue": {
            "description": "Array value for the custom field (preferred).",
            "example": [
              "test",
              "test2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": [
              "test",
              "test2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "customFieldsInputArraySchemaV3": {
        "properties": {
          "fieldValue": {
            "description": "Value of the custom field",
            "example": [
              "test",
              "test2"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "customFieldsInputObjectSchema": {
        "properties": {
          "fieldValue": {
            "description": "Object value for the custom field (preferred).",
            "example": {},
            "type": "object"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": {},
            "type": "object"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "customFieldsInputObjectSchemaV3": {
        "properties": {
          "fieldValue": {
            "description": "Value of the custom field",
            "example": {
              "size": 1024,
              "url": "https://example.com/file.pdf"
            },
            "type": "object"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "customFieldsInputStringSchema": {
        "properties": {
          "fieldValue": {
            "description": "Value for the custom field (preferred).",
            "example": "9039160788",
            "type": "string"
          },
          "field_value": {
            "deprecated": true,
            "description": "Deprecated. Use `fieldValue` instead.",
            "example": "9039160788",
            "type": "string"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "type": "object"
      },
      "customFieldsInputStringSchemaV3": {
        "properties": {
          "fieldValue": {
            "description": "Value of the custom field",
            "example": "9039160788",
            "type": "string"
          },
          "id": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "6dvNaf7VhkQ9snc5vnjJ",
            "type": "string"
          },
          "key": {
            "description": "Pass either `id` or `key` of custom field",
            "example": "my_custom_field",
            "type": "string"
          }
        },
        "type": "object"
      },
      "customValuesDTO": {
        "properties": {
          "name": {
            "example": "Custom Field Name",
            "type": "string"
          },
          "value": {
            "example": "Value",
            "type": "string"
          }
        },
        "required": [
          "name",
          "value"
        ],
        "type": "object"
      },
      "deleteActionResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DeleteActionDataDTO"
              }
            ],
            "description": "Deleted action information"
          },
          "success": {
            "description": "Success status of the request",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "data",
          "success"
        ],
        "type": "object"
      },
      "fetchActionDetailsResponseDTO": {
        "properties": {
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActionDataDTO"
              }
            ],
            "description": "Action details"
          },
          "success": {
            "description": "Success status of the request",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "data",
          "success"
        ],
        "type": "object"
      },
      "fetchActionsForEmployeeResponseDTO": {
        "properties": {
          "data": {
            "description": "Grouped actions by type",
            "items": {
              "$ref": "#/components/schemas/ActionDataDTO"
            },
            "type": "array"
          },
          "success": {
            "description": "Success status of the request",
            "example": true,
            "type": "boolean"
          }
        },
        "required": [
          "data",
          "success"
        ],
        "type": "object"
      },
      "humanHandOverDto": {
        "properties": {
          "assignToUserId": {
            "description": "ID of the user to assign the conversation to",
            "example": "user123",
            "type": "string"
          },
          "createTask": {
            "description": "Whether to create a task when handing over",
            "example": true,
            "type": "boolean"
          },
          "enabled": {
            "description": "Whether human handover action is enabled",
            "example": true,
            "type": "boolean"
          },
          "examples": {
            "description": "Example phrases that trigger human handover (required when handoverType is custom or contactRequest)",
            "example": [
              "speak to human",
              "talk to agent",
              "need help from person"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "finalMessage": {
            "description": "Final message sent when handing over to human",
            "example": "I am transferring you to a human agent who will assist you shortly.",
            "type": "string"
          },
          "handoverType": {
            "description": "Type of human handover detection",
            "enum": [
              "contactRequest",
              "lackOfInformation",
              "failedToResolveIssue",
              "custom"
            ],
            "example": "contactRequest",
            "type": "string"
          },
          "reactivateEnabled": {
            "description": "Whether the agent can be reactivated after handover",
            "example": true,
            "type": "boolean"
          },
          "skipAssignToUser": {
            "description": "Whether to skip assigning to a specific user",
            "example": false,
            "type": "boolean"
          },
          "sleepTime": {
            "description": "Time duration before reactivation (required when reactivateEnabled is true)",
            "example": 24,
            "type": "number"
          },
          "sleepTimeUnit": {
            "description": "Time unit for reactivation delay (required when reactivateEnabled is true)",
            "enum": [
              "days",
              "hours",
              "minutes"
            ],
            "example": "hours",
            "type": "string"
          },
          "tags": {
            "description": "Tags to apply during handover",
            "example": [
              "escalated",
              "human-requested"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "triggerCondition": {
            "description": "Condition that triggers human handover",
            "example": "When the user requests to speak with a human agent or expresses frustration",
            "type": "string"
          }
        },
        "required": [
          "enabled",
          "triggerCondition",
          "reactivateEnabled",
          "finalMessage",
          "handoverType"
        ],
        "type": "object"
      },
      "metaSchema": {
        "properties": {
          "currentPage": {
            "example": 1,
            "type": "number"
          },
          "nextPage": {
            "example": null,
            "nullable": true,
            "type": "number"
          },
          "prevPage": {
            "example": null,
            "nullable": true,
            "type": "number"
          },
          "total": {
            "example": 1,
            "type": "number"
          }
        },
        "type": "object"
      },
      "stopBotDto": {
        "properties": {
          "enabled": {
            "description": "Whether this action is enabled for the agent",
            "example": true,
            "type": "boolean"
          },
          "finalMessage": {
            "description": "Final message sent when stopping the bot",
            "example": "Thank you for contacting us. Have a great day!",
            "type": "string"
          },
          "reactivateEnabled": {
            "description": "Whether the bot can be reactivated after being stopped",
            "example": true,
            "type": "boolean"
          },
          "sleepTime": {
            "description": "Time duration before reactivation (required when reactivateEnabled is true)",
            "example": 24,
            "type": "number"
          },
          "sleepTimeUnit": {
            "description": "Time unit for reactivation delay (required when reactivateEnabled is true)",
            "enum": [
              "days",
              "hours",
              "minutes"
            ],
            "example": "hours",
            "type": "string"
          },
          "stopBotDetectionType": {
            "description": "Type of stop bot detection - Goodbye or Custom",
            "enum": [
              "Goodbye",
              "Custom"
            ],
            "example": "Custom",
            "type": "string"
          },
          "stopBotExamples": {
            "description": "Example phrases that trigger stop bot action (minimum 2 required)",
            "example": [
              "goodbye",
              "thank you",
              "no more questions"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "stopBotTriggerCondition": {
            "description": "Condition that triggers stopping the bot",
            "example": "When the user says they no longer need assistance or want to end the conversation",
            "type": "string"
          },
          "tags": {
            "description": "Tags to apply when stopping the bot",
            "example": [
              "resolved",
              "no-response"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "stopBotDetectionType",
          "stopBotTriggerCondition",
          "reactivateEnabled",
          "enabled",
          "stopBotExamples",
          "finalMessage"
        ],
        "type": "object"
      },
      "tagBody": {
        "properties": {
          "name": {
            "description": "Tag name",
            "example": "Tag",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "type": "object"
      },
      "textBoxListOptionsSchema": {
        "properties": {
          "label": {
            "example": "First",
            "type": "string"
          },
          "prefillValue": {
            "example": "",
            "type": "string"
          }
        },
        "type": "object"
      },
      "transferBotDto": {
        "properties": {
          "enabled": {
            "description": "Whether this transfer action is enabled",
            "example": true,
            "type": "boolean"
          },
          "transferBotExamples": {
            "description": "Example phrases that trigger transfer (required for Custom type, minimum 2)",
            "example": [
              "talk to sales",
              "pricing information",
              "speak to specialist"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "transferBotTriggerCondition": {
            "description": "Condition that triggers the transfer (required for Custom type)",
            "example": "When the user asks to speak with sales or needs pricing information",
            "type": "string"
          },
          "transferBotType": {
            "description": "Type of transfer - Default or Custom",
            "enum": [
              "Default",
              "Custom"
            ],
            "example": "Custom",
            "type": "string"
          },
          "transferToBot": {
            "description": "ID of the bot/agent to transfer to",
            "example": "employee789",
            "type": "string"
          }
        },
        "required": [
          "transferBotType",
          "transferToBot",
          "enabled"
        ],
        "type": "object"
      },
      "triggerWorkflowDto": {
        "properties": {
          "triggerCondition": {
            "description": "Condition that triggers the workflow",
            "example": "When user requests appointment",
            "type": "string"
          },
          "triggerMessage": {
            "description": "Optional message to send when triggering the workflow",
            "example": "Workflow triggered successfully",
            "type": "string"
          },
          "workflowIds": {
            "description": "Array of workflow IDs to trigger",
            "example": [
              "workflow123",
              "workflow456"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "workflowIds",
          "triggerCondition"
        ],
        "type": "object"
      },
      "type": {
        "enum": [
          "pdf",
          "image",
          "docx",
          "pptx",
          "xlsx",
          "html",
          "dotx",
          "epub",
          "webp",
          "gdoc",
          "mp3",
          "doc",
          "txt",
          "zip",
          "ppt",
          "key",
          "htm",
          "xls",
          "odp",
          "odt",
          "rtf",
          "m4a",
          "ods",
          "mp4",
          "ai",
          "avi",
          "mov",
          "wmv",
          "mkv",
          "wav",
          "flac",
          "ogg",
          "png",
          "jpeg",
          "jpg",
          "gif",
          "bmp",
          "tiff",
          "svg",
          "odg",
          "sxw",
          "sxc",
          "sxi",
          "rar",
          "7z",
          "json",
          "xml",
          "csv",
          "md",
          "obj",
          "stl",
          "woff",
          "ttf"
        ],
        "type": "string"
      },
      "updateContactFieldDto": {
        "properties": {
          "contactFieldId": {
            "description": "ID of the contact field in Contacts Table",
            "example": "123",
            "type": "string"
          },
          "contactUpdateExamples": {
            "default": [],
            "description": "Contact update examples in Contacts Table. Not required when using standard fields, Monetory or Date Custom fields.",
            "example": [
              "Example 1"
            ],
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "Description of the contact field in Contacts Table",
            "example": "Business Name",
            "type": "string"
          }
        },
        "required": [
          "contactFieldId",
          "description"
        ],
        "type": "object"
      },
      "visibility": {
        "enum": [
          "published",
          "draft"
        ],
        "type": "string"
      }
    },
    "securitySchemes": {
      "Agency-Access": {
        "bearerFormat": "JWT",
        "scheme": "bearer",
        "type": "http"
      },
      "Agency-Access-Only": {
        "bearerFormat": "JWT",
        "scheme": "bearer",
        "type": "http"
      },
      "Location-Access": {
        "bearerFormat": "JWT",
        "scheme": "bearer",
        "type": "http"
      },
      "Location-Access-Only": {
        "bearerFormat": "JWT",
        "scheme": "bearer",
        "type": "http"
      },
      "bearer": {
        "bearerFormat": "JWT",
        "scheme": "bearer",
        "type": "http"
      }
    }
  },
  "info": {
    "description": "HighLevel's official v3 documents from github.com/GoHighLevel/highlevel-api-docs at commit 0af86a4cbd48c66a4071c7e509d1079f9f10ed17, merged into one document.",
    "title": "HighLevel",
    "version": "v3"
  },
  "openapi": "3.0.0",
  "paths": {
    "/ad-publishing/facebook/ad-accounts": {
      "get": {
        "description": "Retrieve Facebook ad accounts available for the connected user",
        "operationId": "fb-get-ad-accounts",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Account source type",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "example": "AD_MANAGER",
              "type": "string"
            }
          },
          {
            "description": "Pagination cursor",
            "in": "query",
            "name": "next",
            "required": false,
            "schema": {
              "example": "cursor_abc",
              "type": "string"
            }
          },
          {
            "description": "Fetch all accounts",
            "in": "query",
            "name": "fetchAll",
            "required": false,
            "schema": {
              "example": "true",
              "type": "string"
            }
          },
          {
            "description": "Results page limit",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": "25",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get ad accounts",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-ad-accounts"
      }
    },
    "/ad-publishing/facebook/ad-accounts/{adAccountId}": {
      "delete": {
        "description": "Remove a Facebook ad account connection from a location",
        "operationId": "fb-delete-ad-account",
        "parameters": [
          {
            "description": "Ad account identifier",
            "in": "path",
            "name": "adAccountId",
            "required": true,
            "schema": {
              "example": "act_123456789",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete ad account",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-delete-ad-account"
      },
      "get": {
        "description": "Retrieve details of a specific Facebook ad account",
        "operationId": "fb-get-ad-account",
        "parameters": [
          {
            "description": "Ad account identifier",
            "in": "path",
            "name": "adAccountId",
            "required": true,
            "schema": {
              "example": "act_123456789",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get ad account details",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-ad-account"
      }
    },
    "/ad-publishing/facebook/ads": {
      "put": {
        "description": "Create or update a Facebook ad",
        "operationId": "fb-upsert-ad",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertAdDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert ad",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-upsert-ad"
      }
    },
    "/ad-publishing/facebook/ads/{adId}": {
      "delete": {
        "description": "Delete a Facebook ad by ID",
        "operationId": "fb-delete-ad",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439013",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete ad",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-delete-ad"
      }
    },
    "/ad-publishing/facebook/ads/{adId}/duplicate": {
      "post": {
        "description": "Duplicate an existing Facebook ad",
        "operationId": "fb-duplicate-ad",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439013",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Duplicate ad",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-duplicate-ad"
      }
    },
    "/ad-publishing/facebook/ads/{adId}/pause": {
      "post": {
        "description": "Pause a running Facebook ad",
        "operationId": "fb-pause-ad",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439013",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Pause ad",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-pause-ad"
      }
    },
    "/ad-publishing/facebook/ads/{adId}/resume": {
      "post": {
        "description": "Resume a paused Facebook ad",
        "operationId": "fb-resume-ad",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439013",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Resume ad",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-resume-ad"
      }
    },
    "/ad-publishing/facebook/adsets": {
      "put": {
        "description": "Create or update a Facebook ad set",
        "operationId": "fb-upsert-adset",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertAdsetDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert adset",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-upsert-adset"
      }
    },
    "/ad-publishing/facebook/adsets/{adSetId}": {
      "delete": {
        "description": "Delete a Facebook ad set by ID",
        "operationId": "fb-delete-adset",
        "parameters": [
          {
            "description": "Ad set identifier",
            "in": "path",
            "name": "adSetId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439012",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete ad set",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-delete-adset"
      }
    },
    "/ad-publishing/facebook/adsets/{adSetId}/duplicate": {
      "post": {
        "description": "Duplicate an existing Facebook ad set",
        "operationId": "fb-duplicate-adset",
        "parameters": [
          {
            "description": "Ad set identifier",
            "in": "path",
            "name": "adSetId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439012",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Duplicate ad set",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-duplicate-adset"
      }
    },
    "/ad-publishing/facebook/adsets/{adSetId}/pause": {
      "post": {
        "description": "Pause a running Facebook ad set",
        "operationId": "fb-pause-adset",
        "parameters": [
          {
            "description": "Ad set identifier",
            "in": "path",
            "name": "adSetId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439012",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Pause ad set",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-pause-adset"
      }
    },
    "/ad-publishing/facebook/adsets/{adSetId}/resume": {
      "post": {
        "description": "Resume a paused Facebook ad set",
        "operationId": "fb-resume-adset",
        "parameters": [
          {
            "description": "Ad set identifier",
            "in": "path",
            "name": "adSetId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439012",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Resume ad set",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-resume-adset"
      }
    },
    "/ad-publishing/facebook/campaign/{campaignId}": {
      "get": {
        "description": "Retrieve a Facebook campaign with its linked adsets and ads",
        "operationId": "fb-get-campaign",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "120208142050850608",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated field names",
            "in": "query",
            "name": "fields",
            "required": false,
            "schema": {
              "example": "adsets,ads",
              "type": "string"
            }
          },
          {
            "description": "Campaign data source",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "example": "facebook",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get campaign with linked entities",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-campaign"
      }
    },
    "/ad-publishing/facebook/campaigns": {
      "put": {
        "description": "Create or update a Facebook campaign",
        "operationId": "fb-upsert-campaign",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertCampaignDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert campaign",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-upsert-campaign"
      }
    },
    "/ad-publishing/facebook/campaigns/{campaignId}": {
      "delete": {
        "description": "Delete a Facebook campaign by ID",
        "operationId": "fb-delete-campaign",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete campaign",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-delete-campaign"
      }
    },
    "/ad-publishing/facebook/campaigns/{campaignId}/duplicate": {
      "post": {
        "description": "Duplicate an existing Facebook campaign",
        "operationId": "fb-duplicate-campaign",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Duplicate campaign",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-duplicate-campaign"
      }
    },
    "/ad-publishing/facebook/campaigns/{campaignId}/pause": {
      "post": {
        "description": "Pause a running Facebook campaign",
        "operationId": "fb-pause-campaign",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Pause campaign",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-pause-campaign"
      }
    },
    "/ad-publishing/facebook/campaigns/{campaignId}/publish": {
      "post": {
        "description": "Publish a Facebook campaign and push it live to Facebook",
        "operationId": "fb-publish-campaign",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "120208142050850608",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PublishAdDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Publish campaign",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-publish-campaign"
      }
    },
    "/ad-publishing/facebook/campaigns/{campaignId}/publishing-progress": {
      "get": {
        "description": "Returns Redis-backed publish progress for a campaign while it is publishing to Meta. Used by the validation funnel UI to poll step counts and completion state.",
        "operationId": "fb-get-campaign-publishing-progress",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublishingProgressResponseDTO"
                }
              }
            },
            "description": "Publishing progress for the campaign"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "Campaign not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get campaign publishing progress",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-campaign-publishing-progress"
      }
    },
    "/ad-publishing/facebook/campaigns/{campaignId}/resume": {
      "post": {
        "description": "Resume a paused Facebook campaign",
        "operationId": "fb-resume-campaign",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Resume campaign",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-resume-campaign"
      }
    },
    "/ad-publishing/facebook/conversation-forms": {
      "get": {
        "description": "Retrieve Facebook conversation lead forms for a location",
        "operationId": "fb-get-conversation-forms",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get conversation forms",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-conversation-forms"
      },
      "post": {
        "description": "Create a new Facebook conversation lead form",
        "operationId": "fb-create-conversation-form",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateConversationFormDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Create conversation form",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-create-conversation-form"
      }
    },
    "/ad-publishing/facebook/custom-audience": {
      "get": {
        "description": "Retrieve Facebook custom audiences for a location",
        "operationId": "fb-get-custom-audiences",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Audience list type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "lookalike",
                "custom",
                "all"
              ],
              "example": "custom",
              "type": "string"
            }
          },
          {
            "description": "Audience data source",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "enum": [
                "ad_manager",
                "integration"
              ],
              "example": "ad_manager",
              "type": "string"
            }
          },
          {
            "description": "Ad account identifier",
            "in": "query",
            "name": "adAccountId",
            "required": true,
            "schema": {
              "example": "act_123456",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get custom audiences",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-custom-audiences"
      }
    },
    "/ad-publishing/facebook/custom-audience/{audienceId}": {
      "delete": {
        "description": "Delete a Facebook custom audience by ID",
        "operationId": "fb-delete-custom-audience",
        "parameters": [
          {
            "description": "Custom audience identifier",
            "in": "path",
            "name": "audienceId",
            "required": true,
            "schema": {
              "example": "23851234567890123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete custom audience",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-delete-custom-audience"
      },
      "get": {
        "description": "Retrieve a specific Facebook custom audience by its ID",
        "operationId": "fb-get-custom-audience-by-id",
        "parameters": [
          {
            "description": "Custom audience identifier",
            "in": "path",
            "name": "audienceId",
            "required": true,
            "schema": {
              "example": "23851234567890123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get custom audience by ID",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-custom-audience-by-id"
      },
      "put": {
        "description": "Update name or description of a Facebook custom audience",
        "operationId": "fb-update-custom-audience",
        "parameters": [
          {
            "description": "Custom audience identifier",
            "in": "path",
            "name": "audienceId",
            "required": true,
            "schema": {
              "example": "23851234567890123",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FbUpdateAudienceBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Update custom audience",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-update-custom-audience"
      }
    },
    "/ad-publishing/facebook/custom-audience/{audienceId}/member": {
      "delete": {
        "description": "Remove a member from a Facebook custom audience",
        "operationId": "fb-remove-custom-audience-member",
        "parameters": [
          {
            "description": "Custom audience identifier",
            "in": "path",
            "name": "audienceId",
            "required": true,
            "schema": {
              "example": "23851234567890123",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomAudienceDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Remove custom audience member",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-remove-custom-audience-member"
      },
      "put": {
        "description": "Add a member to a Facebook custom audience",
        "operationId": "fb-add-custom-audience-member",
        "parameters": [
          {
            "description": "Custom audience identifier",
            "in": "path",
            "name": "audienceId",
            "required": true,
            "schema": {
              "example": "23851234567890123",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomAudienceDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Add custom audience member",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-add-custom-audience-member"
      }
    },
    "/ad-publishing/facebook/custom-audience/{audienceId}/member/batch": {
      "put": {
        "description": "Add or remove members in bulk from a Facebook custom audience via CSV or smart lists",
        "operationId": "fb-batch-update-audience-members",
        "parameters": [
          {
            "description": "Custom audience identifier",
            "in": "path",
            "name": "audienceId",
            "required": true,
            "schema": {
              "example": "23851234567890123",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomAudienceBatchDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Batch update audience members",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-batch-update-audience-members"
      }
    },
    "/ad-publishing/facebook/entity": {
      "get": {
        "description": "Retrieve Facebook campaigns, adsets, or ads based on entity type",
        "operationId": "fb-get-entity",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Integration source type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "AD_MANAGER",
                "INTEGRATION"
              ],
              "example": "AD_MANAGER",
              "type": "string"
            }
          },
          {
            "description": "Pagination cursor",
            "in": "query",
            "name": "next",
            "required": false,
            "schema": {
              "example": "cursor_abc",
              "type": "string"
            }
          },
          {
            "description": "Fetch all entities",
            "in": "query",
            "name": "fetchAll",
            "required": false,
            "schema": {
              "example": "true",
              "type": "string"
            }
          },
          {
            "description": "Campaign identifier",
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "camp_123",
              "type": "string"
            }
          },
          {
            "description": "Ad set identifier",
            "in": "query",
            "name": "adSetId",
            "required": false,
            "schema": {
              "example": "adset_123",
              "type": "string"
            }
          },
          {
            "description": "Entity type to fetch",
            "in": "query",
            "name": "entityType",
            "required": true,
            "schema": {
              "enum": [
                "CAMPAIGN",
                "ADSET",
                "AD"
              ],
              "example": "CAMPAIGN",
              "type": "string"
            }
          },
          {
            "description": "Search identifier",
            "in": "query",
            "name": "searchId",
            "required": false,
            "schema": {
              "example": "search_123",
              "type": "string"
            }
          },
          {
            "description": "Selected ad account ID",
            "in": "query",
            "name": "selectedAdAccountId",
            "required": false,
            "schema": {
              "example": "act_123456",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get entities",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-entity"
      }
    },
    "/ad-publishing/facebook/integration": {
      "delete": {
        "description": "Remove the Facebook ad integration from a location",
        "operationId": "fb-delete-integration",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete Facebook integration",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-delete-integration"
      },
      "get": {
        "description": "Retrieve the Facebook ad integration details for a location",
        "operationId": "fb-get-integration",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get Facebook integration",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-integration"
      },
      "post": {
        "description": "Create a Facebook ad integration for a location with page and ad account",
        "operationId": "fb-create-integration",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateIntegrationDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Create Facebook integration",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-create-integration"
      }
    },
    "/ad-publishing/facebook/lead-form/{leadFormId}": {
      "get": {
        "description": "Retrieve a specific Facebook lead form by its ID",
        "operationId": "fb-get-lead-form",
        "parameters": [
          {
            "description": "Lead form identifier",
            "in": "path",
            "name": "leadFormId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get lead form by ID",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-lead-form"
      }
    },
    "/ad-publishing/facebook/me": {
      "get": {
        "description": "Retrieve the authenticated Facebook user profile for a location",
        "operationId": "fb-get-current-user",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get current Facebook user",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-current-user"
      }
    },
    "/ad-publishing/facebook/page": {
      "delete": {
        "description": "Remove a Facebook page connection from a location",
        "operationId": "fb-delete-page",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Facebook page ID",
            "in": "query",
            "name": "pageId",
            "required": true,
            "schema": {
              "example": "123456789",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete page connection",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-delete-page"
      }
    },
    "/ad-publishing/facebook/page/default": {
      "put": {
        "description": "Set the default Facebook page for a location",
        "operationId": "fb-set-default-page",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FbSetDefaultPageBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Set default page",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-set-default-page"
      }
    },
    "/ad-publishing/facebook/page/{pageId}/forms": {
      "get": {
        "description": "Retrieve lead gen forms for a specific Facebook page",
        "operationId": "fb-get-page-lead-forms",
        "parameters": [
          {
            "description": "Facebook page identifier",
            "in": "path",
            "name": "pageId",
            "required": true,
            "schema": {
              "example": "103456789012345",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get page lead forms",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-page-lead-forms"
      },
      "post": {
        "description": "Create a new lead gen form on a Facebook page",
        "operationId": "fb-create-page-lead-form",
        "parameters": [
          {
            "description": "Facebook page identifier",
            "in": "path",
            "name": "pageId",
            "required": true,
            "schema": {
              "example": "103456789012345",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLeadFormDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Create page lead form",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-create-page-lead-form"
      }
    },
    "/ad-publishing/facebook/page/{pageId}/instagram": {
      "get": {
        "description": "Retrieve Instagram accounts linked to a specific Facebook page",
        "operationId": "fb-get-instagram-accounts",
        "parameters": [
          {
            "description": "Facebook page identifier",
            "in": "path",
            "name": "pageId",
            "required": true,
            "schema": {
              "example": "103456789012345",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Integration type",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "enum": [
                "INTEGRATION",
                "AD_MANAGER"
              ],
              "example": "INTEGRATION",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get Instagram accounts for page",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-instagram-accounts"
      }
    },
    "/ad-publishing/facebook/pages": {
      "get": {
        "description": "Retrieve Facebook pages associated with the connected account",
        "operationId": "fb-get-pages",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Fetch existing pages flag",
            "in": "query",
            "name": "fetchExisting",
            "required": false,
            "schema": {
              "example": "true",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get Facebook pages",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-pages"
      }
    },
    "/ad-publishing/facebook/pixels": {
      "get": {
        "description": "Retrieve Facebook conversion pixels for a location",
        "operationId": "fb-get-pixels",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Channel type",
            "in": "query",
            "name": "channel",
            "required": false,
            "schema": {
              "example": "FACEBOOK",
              "type": "string"
            }
          },
          {
            "description": "Facebook page ID",
            "in": "query",
            "name": "pageId",
            "required": false,
            "schema": {
              "example": "123456789",
              "type": "string"
            }
          },
          {
            "description": "Instagram user ID",
            "in": "query",
            "name": "igUserId",
            "required": false,
            "schema": {
              "example": "ig_user_123",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get conversion pixels",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-pixels"
      },
      "put": {
        "description": "Create or update a Facebook conversion pixel configuration",
        "operationId": "fb-upsert-pixel",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertConversionPixelDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert conversion pixel",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-upsert-pixel"
      }
    },
    "/ad-publishing/facebook/reporting": {
      "get": {
        "description": "Retrieve aggregated Facebook ad reporting metrics for a location",
        "operationId": "fb-get-reporting",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "fRMewNQIxSyZ5R4nQyit",
              "type": "string"
            }
          },
          {
            "description": "Reporting fields. Pass as comma-separated values on the wire (e.g. ?fields=impressions,clicks).",
            "in": "query",
            "name": "fields",
            "required": true,
            "schema": {
              "example": [
                "impressions",
                "clicks",
                "spend"
              ],
              "items": {
                "enum": [
                  "impressions",
                  "clicks",
                  "spend",
                  "cpc",
                  "cost_per_conversion",
                  "conversions",
                  "cpm",
                  "reach",
                  "frequency",
                  "ctr"
                ],
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "Time grouping interval",
            "in": "query",
            "name": "groupBy",
            "required": true,
            "schema": {
              "enum": [
                "day",
                "week",
                "month"
              ],
              "example": "month",
              "type": "string"
            }
          },
          {
            "description": "Report start date",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2022-01-11",
              "type": "string"
            }
          },
          {
            "description": "Report end date",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2022-01-31",
              "type": "string"
            }
          },
          {
            "description": "Integration source type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "AD_MANAGER",
                "INTEGRATION"
              ],
              "example": "AD_MANAGER or INTEGRATION",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get reporting data",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-reporting"
      }
    },
    "/ad-publishing/facebook/reporting/campaign/{campaignId}": {
      "get": {
        "description": "Retrieve reporting metrics for a specific Facebook campaign",
        "operationId": "fb-get-campaign-reporting",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "120208142050850608",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "fRMewNQIxSyZ5R4nQyit",
              "type": "string"
            }
          },
          {
            "description": "Report start date",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2022-01-11",
              "type": "string"
            }
          },
          {
            "description": "Report end date",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2022-01-31",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get campaign reporting",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-campaign-reporting"
      }
    },
    "/ad-publishing/facebook/reporting/list": {
      "get": {
        "description": "Retrieve a list of Facebook campaigns, adsets, or ads with reporting data",
        "operationId": "fb-get-reporting-list",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "fRMewNQIxSyZ5R4nQyit",
              "type": "string"
            }
          },
          {
            "description": "Reporting list type",
            "in": "query",
            "name": "listType",
            "required": true,
            "schema": {
              "example": "campaigns",
              "type": "string"
            }
          },
          {
            "description": "Report start date",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2022-01-11",
              "type": "string"
            }
          },
          {
            "description": "Report end date",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2022-01-31",
              "type": "string"
            }
          },
          {
            "description": "Campaign identifier (required when listType is adsets or ads)",
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "196684453527082",
              "type": "string"
            }
          },
          {
            "description": "Integration source type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "AD_MANAGER",
                "INTEGRATION"
              ],
              "example": "INTEGRATION",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get reporting list",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-get-reporting-list"
      }
    },
    "/ad-publishing/facebook/targeting/search": {
      "get": {
        "description": "Search Facebook geo-locations and interests for ad targeting",
        "operationId": "fb-search-targeting",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Targeting search type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "example": "interest",
              "type": "string"
            }
          },
          {
            "description": "Search query string",
            "in": "query",
            "name": "query",
            "required": true,
            "schema": {
              "example": "fitness",
              "type": "string"
            }
          },
          {
            "description": "Specific search subtype",
            "in": "query",
            "name": "searchType",
            "required": false,
            "schema": {
              "example": "adgeolocation",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Search targeting options",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "fb-search-targeting"
      }
    },
    "/ad-publishing/google/ad-accounts": {
      "get": {
        "description": "Retrieve Google Ads accounts available for the connected user",
        "operationId": "google-get-ad-accounts",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Account type",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "enum": [
                "INTEGRATION",
                "AD_MANAGER"
              ],
              "example": "AD_MANAGER",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get Google ad accounts",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-ad-accounts"
      }
    },
    "/ad-publishing/google/ad-accounts/{adAccountId}": {
      "delete": {
        "description": "Remove a Google Ads account connection from a location",
        "operationId": "google-delete-ad-account",
        "parameters": [
          {
            "description": "Ad account identifier",
            "in": "path",
            "name": "adAccountId",
            "required": true,
            "schema": {
              "example": "act_abc123",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete ad account",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-delete-ad-account"
      },
      "get": {
        "description": "Retrieve details of a specific Google Ads account",
        "operationId": "google-get-ad-account-details",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          },
          {
            "description": "Ad account identifier",
            "in": "path",
            "name": "adAccountId",
            "required": true,
            "schema": {
              "example": "act_abc123",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get ad account details",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-ad-account-details"
      }
    },
    "/ad-publishing/google/ads": {
      "put": {
        "description": "Create or update a full Google Ads campaign structure",
        "operationId": "google-upsert-campaign",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CampaignDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert Google campaign",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-upsert-campaign"
      }
    },
    "/ad-publishing/google/ads/{adId}": {
      "get": {
        "description": "Retrieve a specific Google Ads campaign by ID",
        "operationId": "google-get-campaign-by-id",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get Google campaign by ID",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-campaign-by-id"
      }
    },
    "/ad-publishing/google/ads/{adId}/publish": {
      "post": {
        "description": "Publish a Google ad and push it live",
        "operationId": "google-publish-ad",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Publish ad",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-publish-ad"
      }
    },
    "/ad-publishing/google/assets": {
      "get": {
        "description": "Retrieve Google Ads creative assets for a location",
        "operationId": "google-get-assets",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Asset type to retrieve",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "CALL",
                "SITELINK",
                "LEAD_FORM",
                "IMAGE",
                "TEXT"
              ],
              "example": "CALL",
              "type": "string"
            }
          },
          {
            "description": "Asset identifier",
            "in": "query",
            "name": "id",
            "required": false,
            "schema": {
              "example": "asset_123",
              "type": "string"
            }
          },
          {
            "description": "Advertiser only flag",
            "in": "query",
            "name": "advertiserOnly",
            "required": false,
            "schema": {
              "example": "true",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get assets",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-assets"
      },
      "post": {
        "description": "Create or update Google Ads creative assets",
        "operationId": "google-upsert-assets",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertAssetsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert assets",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-upsert-assets"
      }
    },
    "/ad-publishing/google/audiences": {
      "get": {
        "description": "Retrieve Google Ads combined audiences for a location",
        "operationId": "google-get-audiences",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get audiences",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-audiences"
      },
      "put": {
        "description": "Create or update a Google Ads combined audience",
        "operationId": "google-upsert-audience",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertAudienceDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert audience",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-upsert-audience"
      }
    },
    "/ad-publishing/google/audiences/{audienceId}": {
      "get": {
        "description": "Retrieve a specific Google Ads combined audience by ID",
        "operationId": "google-get-audience-by-id",
        "parameters": [
          {
            "description": "Audience identifier",
            "in": "path",
            "name": "audienceId",
            "required": true,
            "schema": {
              "example": "aud_abc123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get audience by ID",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-audience-by-id"
      }
    },
    "/ad-publishing/google/conversion-goals": {
      "get": {
        "description": "Retrieve Google Ads conversion goals for a location",
        "operationId": "google-get-conversion-goals",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get conversion goals",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-conversion-goals"
      }
    },
    "/ad-publishing/google/conversions": {
      "get": {
        "description": "Retrieve Google Ads conversion actions for a location",
        "operationId": "google-get-conversions",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Integration type",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "enum": [
                "AD_MANAGER",
                "AD_WORDS"
              ],
              "example": "AD_MANAGER",
              "type": "string"
            }
          },
          {
            "description": "Conversion type",
            "in": "query",
            "name": "conversionType",
            "required": false,
            "schema": {
              "example": "WEBPAGE",
              "type": "string"
            }
          },
          {
            "description": "Conversion category",
            "in": "query",
            "name": "category",
            "required": false,
            "schema": {
              "example": "PURCHASE",
              "type": "string"
            }
          },
          {
            "description": "Filter start date",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": "2024-01-01",
              "type": "string"
            }
          },
          {
            "description": "Filter end date",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": "2024-12-31",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get conversions",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-conversions"
      },
      "put": {
        "description": "Create or update a Google Ads conversion action",
        "operationId": "google-upsert-conversion",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertConversionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert conversion",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-upsert-conversion"
      }
    },
    "/ad-publishing/google/conversions/{conversionId}": {
      "delete": {
        "description": "Delete a Google Ads conversion action by ID",
        "operationId": "google-delete-conversion",
        "parameters": [
          {
            "description": "Conversion identifier",
            "in": "path",
            "name": "conversionId",
            "required": true,
            "schema": {
              "example": "conv_abc123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete conversion",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-delete-conversion"
      },
      "get": {
        "description": "Retrieve a specific Google Ads conversion action by ID",
        "operationId": "google-get-conversion-by-id",
        "parameters": [
          {
            "description": "Conversion identifier",
            "in": "path",
            "name": "conversionId",
            "required": true,
            "schema": {
              "example": "conv_abc123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get conversion by ID",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-conversion-by-id"
      }
    },
    "/ad-publishing/google/entity": {
      "get": {
        "description": "Retrieve Google campaigns, ad groups, or ads based on entity type",
        "operationId": "google-get-entity",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Integration type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "AD_MANAGER",
                "INTEGRATION"
              ],
              "example": "AD_MANAGER",
              "type": "string"
            }
          },
          {
            "description": "Campaign identifier",
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "camp_123",
              "type": "string"
            }
          },
          {
            "description": "Ad group identifier",
            "in": "query",
            "name": "adGroupId",
            "required": false,
            "schema": {
              "example": "ag_123",
              "type": "string"
            }
          },
          {
            "description": "Entity type",
            "in": "query",
            "name": "entityType",
            "required": true,
            "schema": {
              "enum": [
                "CAMPAIGN",
                "ADGROUP",
                "AD"
              ],
              "example": "CAMPAIGN",
              "type": "string"
            }
          },
          {
            "description": "Search identifier",
            "in": "query",
            "name": "searchId",
            "required": false,
            "schema": {
              "example": "search_123",
              "type": "string"
            }
          },
          {
            "description": "Filter start date",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": "2024-01-01",
              "type": "string"
            }
          },
          {
            "description": "Filter end date",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": "2024-12-31",
              "type": "string"
            }
          },
          {
            "description": "Selected ad account ID",
            "in": "query",
            "name": "selectedAdAccountId",
            "required": false,
            "schema": {
              "example": "123-456-7890",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get entities",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-entity"
      }
    },
    "/ad-publishing/google/integration": {
      "get": {
        "description": "Retrieve the Google Ads integration details for a location",
        "operationId": "google-get-integration",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get Google integration",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-integration"
      },
      "post": {
        "description": "Create a Google Ads integration for a location",
        "operationId": "google-create-integration",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGoogleIntegrationDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Create Google integration",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-create-integration"
      }
    },
    "/ad-publishing/google/keyword-ideas": {
      "post": {
        "description": "Retrieve keyword suggestions for Google Ads campaigns",
        "operationId": "google-get-keyword-ideas",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/KeywordSuggestionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get keyword ideas",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-keyword-ideas"
      }
    },
    "/ad-publishing/google/me": {
      "get": {
        "description": "Retrieve the authenticated Google user info for a location",
        "operationId": "google-get-current-user",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get current Google user",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-current-user"
      }
    },
    "/ad-publishing/google/reporting": {
      "get": {
        "description": "Retrieve aggregated Google Ads reporting metrics for a location",
        "operationId": "google-get-reporting",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "fRMewNQIxSyZ5R4nQyit",
              "type": "string"
            }
          },
          {
            "description": "Reporting fields. Pass as comma-separated values on the wire (e.g. ?fields=impressions,clicks).",
            "in": "query",
            "name": "fields",
            "required": true,
            "schema": {
              "example": [
                "impressions",
                "clicks",
                "cost_micros"
              ],
              "items": {
                "enum": [
                  "impressions",
                  "clicks",
                  "cost_micros",
                  "average_cpc",
                  "conversions",
                  "average_cpm",
                  "cost_per_conversion",
                  "ctr"
                ],
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "Group by period",
            "in": "query",
            "name": "groupBy",
            "required": false,
            "schema": {
              "enum": [
                "date",
                "week",
                "month"
              ],
              "example": "month",
              "type": "string"
            }
          },
          {
            "description": "Report start date",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2022-01-11",
              "type": "string"
            }
          },
          {
            "description": "Report end date",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2022-01-31",
              "type": "string"
            }
          },
          {
            "description": "Integration type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "AD_MANAGER",
                "INTEGRATION"
              ],
              "example": "AD_MANAGER or INTEGRATION",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get reporting data",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-reporting"
      }
    },
    "/ad-publishing/google/reporting/campaign/{campaignId}": {
      "get": {
        "description": "Retrieve reporting metrics for a specific Google campaign",
        "operationId": "google-get-campaign-reporting",
        "parameters": [
          {
            "description": "Campaign identifier",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "camp_abc123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "fRMewNQIxSyZ5R4nQyit",
              "type": "string"
            }
          },
          {
            "description": "Report start date",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2022-01-11",
              "type": "string"
            }
          },
          {
            "description": "Report end date",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2022-01-31",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get campaign reporting",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-campaign-reporting"
      }
    },
    "/ad-publishing/google/reporting/list": {
      "get": {
        "description": "Retrieve a list of Google campaigns or ad groups with reporting data",
        "operationId": "google-get-reporting-list",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "fRMewNQIxSyZ5R4nQyit",
              "type": "string"
            }
          },
          {
            "description": "Report list type",
            "in": "query",
            "name": "listType",
            "required": true,
            "schema": {
              "example": "campaigns",
              "type": "string"
            }
          },
          {
            "description": "Report start date",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2022-01-11",
              "type": "string"
            }
          },
          {
            "description": "Report end date",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2022-01-31",
              "type": "string"
            }
          },
          {
            "description": "Campaign identifier (required when listType is adGroups, ads, or keywords)",
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "196684453527082",
              "type": "string"
            }
          },
          {
            "description": "Integration type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "AD_MANAGER",
                "INTEGRATION"
              ],
              "example": "INTEGRATION",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get reporting list",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-reporting-list"
      }
    },
    "/ad-publishing/google/segments": {
      "get": {
        "description": "Retrieve Google Ads audience segments for a location",
        "operationId": "google-get-segments",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Segment type",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "example": "CUSTOM_SEGMENTS",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get segments",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-segments"
      },
      "put": {
        "description": "Create or update a Google Ads audience segment",
        "operationId": "google-upsert-segment",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Segment type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "CUSTOM_SEGMENTS",
                "WEBSITE_VISITOR",
                "CUSTOMER_MATCH",
                "LOOKALIKE"
              ],
              "example": "CUSTOM_SEGMENTS",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertSegmentDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert segment",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-upsert-segment"
      }
    },
    "/ad-publishing/google/segments/offline-user-list-job": {
      "post": {
        "description": "Create a job to upload users to a Google customer match list",
        "operationId": "google-create-offline-user-list-job",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOfflineUserListJobDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Create offline user list job",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-create-offline-user-list-job"
      }
    },
    "/ad-publishing/google/segments/{segmentId}": {
      "delete": {
        "description": "Delete a Google Ads audience segment by ID",
        "operationId": "google-delete-segment",
        "parameters": [
          {
            "description": "Segment identifier",
            "in": "path",
            "name": "segmentId",
            "required": true,
            "schema": {
              "example": "seg_abc123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Segment type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "CUSTOM_SEGMENTS",
                "DATA_SEGMENTS"
              ],
              "example": "CUSTOM_SEGMENTS",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete segment",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-delete-segment"
      },
      "get": {
        "description": "Retrieve a specific Google Ads audience segment by ID",
        "operationId": "google-get-segment-by-id",
        "parameters": [
          {
            "description": "Segment identifier",
            "in": "path",
            "name": "segmentId",
            "required": true,
            "schema": {
              "example": "seg_abc123",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Segment type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "CUSTOM_SEGMENTS",
                "DATA_SEGMENTS"
              ],
              "example": "CUSTOM_SEGMENTS",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get segment by ID",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-segment-by-id"
      }
    },
    "/ad-publishing/google/target-interests": {
      "get": {
        "description": "Retrieve affinity and in-market audience options for Google Ads targeting",
        "operationId": "google-get-target-interests",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Interest type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "AFFINITY",
                "IN_MARKET"
              ],
              "example": "AFFINITY",
              "type": "string"
            }
          },
          {
            "description": "Channel type",
            "in": "query",
            "name": "advertisingChannelType",
            "required": true,
            "schema": {
              "example": "SEARCH",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get target interests",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-get-target-interests"
      }
    },
    "/ad-publishing/google/targeting/search": {
      "get": {
        "description": "Search Google geo-locations for ad targeting",
        "operationId": "google-search-targeting",
        "parameters": [
          {
            "description": "Search type",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "example": "geolocation",
              "type": "string"
            }
          },
          {
            "description": "Search query",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "New York",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Search targeting options",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "google-search-targeting"
      }
    },
    "/ad-publishing/linkedin/ad-account": {
      "delete": {
        "description": "Remove a LinkedIn ad account connection from a location",
        "operationId": "li-delete-ad-account",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Ad account identifier",
            "in": "query",
            "name": "adAccountId",
            "required": true,
            "schema": {
              "example": "12345678",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Delete ad account",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-delete-ad-account"
      },
      "get": {
        "description": "Retrieve details of a specific LinkedIn ad account",
        "operationId": "li-get-ad-account-details",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Ad account identifier",
            "in": "query",
            "name": "adAccountId",
            "required": true,
            "schema": {
              "example": "12345678",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get ad account details",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-ad-account-details"
      }
    },
    "/ad-publishing/linkedin/ad-accounts": {
      "get": {
        "description": "Retrieve LinkedIn Ads accounts available for the connected user",
        "operationId": "li-get-ad-accounts",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get LinkedIn ad accounts",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-ad-accounts"
      }
    },
    "/ad-publishing/linkedin/ads": {
      "put": {
        "description": "Create or update a LinkedIn ad campaign group with campaigns and ads",
        "operationId": "li-upsert-campaign-group",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AdCampaignGroupDataDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Upsert ad campaign group",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-upsert-campaign-group"
      }
    },
    "/ad-publishing/linkedin/ads/{adId}": {
      "get": {
        "description": "Retrieve a LinkedIn ad campaign group by ID",
        "operationId": "li-get-campaign-group",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get ad campaign group",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-campaign-group"
      }
    },
    "/ad-publishing/linkedin/ads/{adId}/publish": {
      "post": {
        "description": "Publish a LinkedIn ad campaign group and push it live",
        "operationId": "li-publish-campaign-group",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationIdBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Publish ad campaign group",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-publish-campaign-group"
      }
    },
    "/ad-publishing/linkedin/integration": {
      "get": {
        "description": "Retrieve the LinkedIn Ads integration details for a location",
        "operationId": "li-get-integration",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get LinkedIn integration",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-integration"
      },
      "post": {
        "description": "Create a LinkedIn Ads integration for a location with ad account details",
        "operationId": "li-create-integration",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLinkedinIntegrationDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Create LinkedIn integration",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-create-integration"
      }
    },
    "/ad-publishing/linkedin/me": {
      "get": {
        "description": "Retrieve the authenticated LinkedIn user info for a location",
        "operationId": "li-get-current-user",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get current LinkedIn user",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-current-user"
      }
    },
    "/ad-publishing/linkedin/reporting": {
      "get": {
        "description": "Retrieve LinkedIn Ads analytics data with configurable pivot and time grouping",
        "operationId": "li-get-ad-analytics",
        "parameters": [
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Analytics pivot type",
            "in": "query",
            "name": "pivot",
            "required": false,
            "schema": {
              "default": "ACCOUNT",
              "enum": [
                "ACCOUNT",
                "CAMPAIGN",
                "CAMPAIGN_GROUP",
                "CREATIVE"
              ],
              "example": "ACCOUNT",
              "type": "string"
            }
          },
          {
            "description": "Time granularity for analytics",
            "in": "query",
            "name": "groupBy",
            "required": false,
            "schema": {
              "default": "day",
              "enum": [
                "day",
                "month",
                "year"
              ],
              "example": "day",
              "type": "string"
            }
          },
          {
            "description": "Start date in yyyy-mm-dd format",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2024-01-01",
              "type": "string"
            }
          },
          {
            "description": "End date in yyyy-mm-dd format",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2024-01-31",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of entity URNs",
            "in": "query",
            "name": "entityUrns",
            "required": false,
            "schema": {
              "example": "urn:li:sponsoredCampaign:123,urn:li:sponsoredCampaign:456",
              "type": "string"
            }
          },
          {
            "description": "Reporting fields. Pass as comma-separated values on the wire (e.g. ?fields=impressions,clicks).",
            "in": "query",
            "name": "fields",
            "required": false,
            "schema": {
              "example": [
                "impressions",
                "clicks",
                "costInUsd"
              ],
              "items": {
                "enum": [
                  "clicks",
                  "oneClickLeads",
                  "costInLocalCurrency",
                  "impressions",
                  "costInUsd",
                  "ctr",
                  "cpc",
                  "cpm",
                  "cpl",
                  "externalWebsitePostClickConversions",
                  "conversionRate"
                ],
                "type": "string"
              },
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get ad analytics",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-ad-analytics"
      }
    },
    "/ad-publishing/linkedin/reporting/campaign-group/{campaignGroupId}": {
      "get": {
        "description": "Retrieve reporting metrics for a specific LinkedIn campaign group",
        "operationId": "li-get-campaign-group-reporting",
        "parameters": [
          {
            "description": "Campaign group identifier",
            "in": "path",
            "name": "campaignGroupId",
            "required": true,
            "schema": {
              "example": "12345678",
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "Start date in yyyy-mm-dd format",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2024-01-01",
              "type": "string"
            }
          },
          {
            "description": "End date in yyyy-mm-dd format",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2024-01-31",
              "type": "string"
            }
          },
          {
            "description": "Reporting fields. Pass as comma-separated values on the wire (e.g. ?fields=impressions,clicks).",
            "in": "query",
            "name": "fields",
            "required": false,
            "schema": {
              "example": [
                "impressions",
                "clicks"
              ],
              "items": {
                "enum": [
                  "clicks",
                  "oneClickLeads",
                  "costInLocalCurrency",
                  "impressions",
                  "costInUsd",
                  "ctr",
                  "cpc",
                  "cpm",
                  "cpl",
                  "externalWebsitePostClickConversions",
                  "conversionRate"
                ],
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "Campaign group ID",
            "in": "query",
            "name": "campaignGroupId",
            "required": false,
            "schema": {
              "example": "87654321",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get campaign group reporting",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-campaign-group-reporting"
      }
    },
    "/ad-publishing/linkedin/reporting/list": {
      "get": {
        "description": "Retrieve a list of LinkedIn campaigns or campaign groups with reporting data",
        "operationId": "li-get-reporting-list",
        "parameters": [
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "loc_abc123",
              "type": "string"
            }
          },
          {
            "description": "List type",
            "in": "query",
            "name": "listType",
            "required": true,
            "schema": {
              "example": "campaigns",
              "type": "string"
            }
          },
          {
            "description": "Campaign ID",
            "in": "query",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "12345678",
              "type": "string"
            }
          },
          {
            "description": "Campaign group ID",
            "in": "query",
            "name": "campaignGroupId",
            "required": true,
            "schema": {
              "example": "87654321",
              "type": "string"
            }
          },
          {
            "description": "Start date in yyyy-mm-dd format",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": "2024-01-01",
              "type": "string"
            }
          },
          {
            "description": "End date in yyyy-mm-dd format",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": "2024-01-31",
              "type": "string"
            }
          },
          {
            "description": "Reporting fields. Pass as comma-separated values on the wire (e.g. ?fields=impressions,clicks).",
            "in": "query",
            "name": "fields",
            "required": false,
            "schema": {
              "example": [
                "impressions",
                "clicks"
              ],
              "items": {
                "enum": [
                  "clicks",
                  "oneClickLeads",
                  "costInLocalCurrency",
                  "impressions",
                  "costInUsd",
                  "ctr",
                  "cpc",
                  "cpm",
                  "cpl",
                  "externalWebsitePostClickConversions",
                  "conversionRate"
                ],
                "type": "string"
              },
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get reporting list",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-reporting-list"
      }
    },
    "/ad-publishing/linkedin/targeting/search": {
      "get": {
        "description": "Search LinkedIn targeting facets such as locations, industries, and job titles",
        "operationId": "li-search-targeting",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Targeting facet",
            "in": "query",
            "name": "facet",
            "required": true,
            "schema": {
              "example": "locations",
              "type": "string"
            }
          },
          {
            "description": "Search query",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "software",
              "type": "string"
            }
          },
          {
            "description": "Query parameter",
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "example": "typeahead",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Search targeting options",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-search-targeting"
      }
    },
    "/ad-publishing/linkedin/{accountId}/form": {
      "post": {
        "description": "Create a new LinkedIn lead gen form for an ad account",
        "operationId": "li-create-lead-form",
        "parameters": [
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          },
          {
            "in": "path",
            "name": "accountId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LinkedInCreateLeadFormBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Create lead form",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-create-lead-form"
      }
    },
    "/ad-publishing/linkedin/{accountId}/forms": {
      "get": {
        "description": "Retrieve LinkedIn lead gen forms for an ad account",
        "operationId": "li-get-lead-forms",
        "parameters": [
          {
            "description": "Account identifier",
            "in": "path",
            "name": "accountId",
            "required": true,
            "schema": {
              "example": "12345678",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.readonly"
            ]
          }
        ],
        "summary": "Get lead forms",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-get-lead-forms"
      }
    },
    "/ad-publishing/linkedin/{adId}/status": {
      "patch": {
        "description": "Pause or resume a LinkedIn ad, campaign, or ad group",
        "operationId": "li-update-ad-status",
        "parameters": [
          {
            "description": "Ad identifier",
            "in": "path",
            "name": "adId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location identifier",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "HChooFuiyPpVYzeJ4HMe",
              "type": "string"
            }
          },
          {
            "description": "Is draft",
            "in": "query",
            "name": "isDraft",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LinkedInUpdateAdStatusBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "adPublishing.write"
            ]
          }
        ],
        "summary": "Update ad status",
        "tags": [
          "ad-publishing"
        ],
        "x-ghl-operation-id": "li-update-ad-status"
      }
    },
    "/affiliate-manager/{locationId}/affiliates": {
      "get": {
        "description": "Retrieve the list of affiliates for a location.",
        "operationId": "list-affiliates",
        "parameters": [
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "John",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "active",
            "required": false,
            "schema": {
              "default": false,
              "example": true,
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "63d376de11be1d26d38f7369",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "Maximum number of records to return. Maximum allowed value is 100.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "fromDate",
            "required": false,
            "schema": {
              "example": "2023-10-01",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "toDate",
            "required": false,
            "schema": {
              "example": "2023-10-01",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAffiliatesResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "affiliate-manager.readonly"
            ]
          }
        ],
        "summary": "List Affiliates",
        "tags": [
          "affiliate-manager"
        ],
        "x-ghl-operation-id": "list-affiliates"
      }
    },
    "/affiliate-manager/{locationId}/affiliates/{affiliateId}": {
      "get": {
        "description": "Retrieve a single affiliate by id for a location.",
        "operationId": "get-affiliate",
        "parameters": [
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Affiliate Id",
            "in": "path",
            "name": "affiliateId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAffiliateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "affiliate-manager.readonly"
            ]
          }
        ],
        "summary": "Get Affiliate",
        "tags": [
          "affiliate-manager"
        ],
        "x-ghl-operation-id": "get-affiliate"
      }
    },
    "/affiliate-manager/{locationId}/commissions": {
      "get": {
        "description": "Retrieve the list of commissions for a location.",
        "operationId": "list-commissions",
        "parameters": [
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign Id",
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "6385d230f6d19db03eef6fb2",
              "type": "string"
            }
          },
          {
            "description": "Affiliate Id",
            "in": "query",
            "name": "affiliateId",
            "required": false,
            "schema": {
              "example": "6385d230f6d19db03eef6fb2",
              "type": "string"
            }
          },
          {
            "description": "Status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "example": "pending",
              "type": "string"
            }
          },
          {
            "description": "Query",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "affiliate@example.com",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "Maximum number of records to return. Maximum allowed value is 100.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "fromDate",
            "required": false,
            "schema": {
              "example": "2023-10-01",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "toDate",
            "required": false,
            "schema": {
              "example": "2023-10-01",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCommissionListResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "affiliate-manager.readonly"
            ]
          }
        ],
        "summary": "List Commissions",
        "tags": [
          "affiliate-manager"
        ],
        "x-ghl-operation-id": "list-commissions"
      }
    },
    "/affiliate-manager/{locationId}/payouts": {
      "get": {
        "description": "Retrieve the list of payouts for a location.",
        "operationId": "list-payouts",
        "parameters": [
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Payout status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "example": "pending",
              "type": "string"
            }
          },
          {
            "description": "query",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "john",
              "type": "string"
            }
          },
          {
            "description": "Affiliate Id",
            "in": "query",
            "name": "affiliateId",
            "required": false,
            "schema": {
              "example": "65df04201e428a0c5ebb6572",
              "type": "string"
            }
          },
          {
            "description": "Campaign Id",
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "65df04201e428a0c5ebb6573",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "example": 1,
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "start",
            "required": false,
            "schema": {
              "example": "2022-12-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "end",
            "required": false,
            "schema": {
              "example": "2022-12-31T23:59:59.999Z",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPayoutListResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "affiliate-manager.readonly"
            ]
          }
        ],
        "summary": "List Payouts",
        "tags": [
          "affiliate-manager"
        ],
        "x-ghl-operation-id": "list-payouts"
      }
    },
    "/agent-studio/agent": {
      "get": {
        "description": "Lists all active agents for the specified location. locationId is required parameter to ensure optimal performance. Supports pagination using limit and offset. Optionally filter by isPublished=true to return only agents with a published production version.",
        "operationId": "getAgents",
        "parameters": [
          {
            "example": "C2QujeCh8ZnC7al2InWR",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Optional filter to return only agents with a published production version",
            "example": "true",
            "in": "query",
            "name": "isPublished",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "20",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "0",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPublishedAgentsResponseDTO"
                }
              }
            },
            "description": "Agents retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request - locationId is required"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.readonly"
            ]
          }
        ],
        "summary": "List Agents",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "getAgents"
      },
      "post": {
        "description": "Creates a new agent with staging version. The agent will be created with an initial staging version that can later be promoted to production. ",
        "operationId": "createAgent",
        "parameters": [
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePublicAgentDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatePublicAgentResponseDTO"
                }
              }
            },
            "description": "Agent created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.write"
            ]
          }
        ],
        "summary": "Create Agent",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "createAgent"
      }
    },
    "/agent-studio/agent/versions/{versionId}": {
      "patch": {
        "description": "Updates a specific agent version by versionId. Supports updating nodes, edges, variables, and configuration. ",
        "operationId": "updateAgentVersion",
        "parameters": [
          {
            "example": "v1a2b3c4d5e6f7g8h9i0",
            "in": "path",
            "name": "versionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePublicAgentVersionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdatePublicAgentResponseDTO"
                }
              }
            },
            "description": "Version updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "Version not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.write"
            ]
          }
        ],
        "summary": "Update Agent",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "updateAgentVersion"
      }
    },
    "/agent-studio/agent/versions/{versionId}/publish": {
      "post": {
        "description": "Promotes a draft version to production.",
        "operationId": "promoteAndPublish",
        "parameters": [
          {
            "example": "v1a2b3c4d5e6f7g8h9i0",
            "in": "path",
            "name": "versionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PromoteAndPublishDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PromoteAndPublishResponseDTO"
                }
              }
            },
            "description": "Version promoted and published successfully"
          },
          "400": {
            "description": "Bad Request - Only draft versions can be promoted"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "Version not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.write"
            ]
          }
        ],
        "summary": "Promote to Production",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "promoteAndPublish"
      }
    },
    "/agent-studio/agent/{agentId}": {
      "delete": {
        "description": "Deletes an agent and all its versions. ",
        "operationId": "deleteAgent",
        "parameters": [
          {
            "example": "p1q2r3s4t5u6v7w8x9y0z1a2",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "C2QujeCh8ZnC7al2InWR",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeletePublicAgentResponseDTO"
                }
              }
            },
            "description": "Agent deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "Agent not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.write"
            ]
          }
        ],
        "summary": "Delete Agent",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "deleteAgent"
      },
      "get": {
        "description": "Gets a specific agent by its ID for the specified location with all its versions. Returns complete agent metadata and all non-deleted versions (draft, staging, production). locationId is required parameter. The agent must have active status.",
        "operationId": "getAgentById",
        "parameters": [
          {
            "example": "p1q2r3s4t5u6v7w8x9y0z1a2",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "C2QujeCh8ZnC7al2InWR",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAgentByIdResponseDTO"
                }
              }
            },
            "description": "Agent retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request - locationId is required"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "Agent not found or not available"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.readonly"
            ]
          }
        ],
        "summary": "Get Agent",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "getAgentById"
      },
      "patch": {
        "description": "Updates agent metadata such as name, description, and status. ",
        "operationId": "updateAgentMetadata",
        "parameters": [
          {
            "example": "p1q2r3s4t5u6v7w8x9y0z1a2",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePublicAgentMetadataDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdatePublicAgentResponseDTO"
                }
              }
            },
            "description": "Agent metadata updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "Agent not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.write"
            ]
          }
        ],
        "summary": "Update Agent Metadata",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "updateAgentMetadata"
      }
    },
    "/agent-studio/agent/{agentId}/execute": {
      "post": {
        "description": "Executes the specified agent and returns a non-streaming JSON response with the complete agent output. The agent must be in active status and belong to the specified location. locationId is required in the request body. \n\n**Session Management:**\n- For the first message in a new session, do not include the `executionId` in the request payload.\n- The API will return an `executionId` along with the agent response, which uniquely identifies this conversation session.\n- To continue the conversation within the same session, include the `executionId` from the previous response in subsequent requests. This allows the agent to maintain conversation context and history across multiple interactions.",
        "operationId": "executeAgent",
        "parameters": [
          {
            "example": "p1q2r3s4t5u6v7w8x9y0z1a2",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExecutePublicAgentDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExecutePublicAgentResponseDTO"
                }
              }
            },
            "description": "Agent executed successfully"
          },
          "400": {
            "description": "Agent is not active or invalid request - locationId is required"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "User does not have required scopes to execute this agent"
          },
          "404": {
            "description": "Agent not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.write"
            ]
          }
        ],
        "summary": "Execute Agent",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "executeAgent"
      }
    },
    "/agent-studio/public-api/agents": {
      "get": {
        "deprecated": true,
        "description": "**Deprecated endpoint - use GET /agent instead.**\n\nLists all active agents that have a published production version for the specified location. locationId is required parameter. Supports pagination using limit and offset.",
        "operationId": "getAgents-deprecated",
        "parameters": [
          {
            "example": "C2QujeCh8ZnC7al2InWR",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "20",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "0",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPublishedAgentsResponseDTO"
                }
              }
            },
            "description": "Agents retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request - locationId is required"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.readonly"
            ]
          }
        ],
        "summary": "List Agents (Deprecated)",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "getAgents-deprecated"
      }
    },
    "/agent-studio/public-api/agents/{agentId}": {
      "get": {
        "deprecated": true,
        "description": "**Deprecated endpoint - use GET /agent/:agentId instead.**\n\nGets a specific agent by its ID for the specified location with all its versions. locationId is required parameter. The agent must have active status.",
        "operationId": "getAgentById-deprecated",
        "parameters": [
          {
            "example": "p1q2r3s4t5u6v7w8x9y0z1a2",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "C2QujeCh8ZnC7al2InWR",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAgentByIdResponseDTO"
                }
              }
            },
            "description": "Agent retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request - locationId is required"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "Agent not found or not available"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.readonly"
            ]
          }
        ],
        "summary": "Get Agent (Deprecated)",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "getAgentById-deprecated"
      }
    },
    "/agent-studio/public-api/agents/{agentId}/execute": {
      "post": {
        "deprecated": true,
        "description": "**Deprecated endpoint - use POST /agent/:agentId/execute instead.**\n\nExecutes the specified agent and returns a non-streaming JSON response with the complete agent output. The agent must be in active status and belong to the specified location. locationId is required in the request body. \n\n**Session Management:**\n- For the first message in a new session, do not include the `executionId` in the request payload.\n- The API will return an `executionId` along with the agent response, which uniquely identifies this conversation session.\n- To continue the conversation within the same session, include the `executionId` from the previous response in subsequent requests.",
        "operationId": "executeAgent-deprecated",
        "parameters": [
          {
            "example": "p1q2r3s4t5u6v7w8x9y0z1a2",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "api",
            "in": "query",
            "name": "source",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExecutePublicAgentDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExecutePublicAgentResponseDTO"
                }
              }
            },
            "description": "Agent executed successfully"
          },
          "400": {
            "description": "Agent is not active or invalid request - locationId is required"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "User does not have required scopes to execute this agent"
          },
          "404": {
            "description": "Agent not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AgentStudioInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": [
              "agent-studio.write"
            ]
          }
        ],
        "summary": "Execute Agent (Deprecated)",
        "tags": [
          "agent-studio"
        ],
        "x-ghl-operation-id": "executeAgent-deprecated"
      }
    },
    "/associations/": {
      "get": {
        "description": "Get all Associations",
        "operationId": "find-associations",
        "parameters": [
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "string",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "skip",
            "required": true,
            "schema": {
              "example": "10",
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": "100",
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations.readonly"
            ]
          }
        ],
        "summary": "Get all associations for a sub-account / location",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "find-associations"
      },
      "post": {
        "description": "Allow you to create contact - contact , contact - custom objects associations, will add more in the future.Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3"
        },
        "operationId": "associations.create-association",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/createAssociationReqDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations.write"
            ]
          }
        ],
        "summary": "Create Association",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "create-association"
      }
    },
    "/associations/key/{key_name}": {
      "get": {
        "description": "Using this api you can get standard / user defined association by key",
        "operationId": "get-association-key-by-key-name",
        "parameters": [
          {
            "in": "path",
            "name": "key_name",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations.readonly"
            ]
          }
        ],
        "summary": "Get association key by key name",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "get-association-key-by-key-name"
      }
    },
    "/associations/objectKey/{objectKey}": {
      "get": {
        "description": "Get association by object keys like contacts, custom objects and opportunities. Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3"
        },
        "operationId": "get-association-by-object-keys",
        "parameters": [
          {
            "in": "path",
            "name": "objectKey",
            "required": true,
            "schema": {
              "example": "custom_objects.car",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations.readonly"
            ]
          }
        ],
        "summary": "Get association by object keys",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "get-association-by-object-keys"
      }
    },
    "/associations/relations": {
      "post": {
        "description": "Create Relation.Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3"
        },
        "operationId": "create-relation",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/createRelationReqDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations/relation.write"
            ]
          }
        ],
        "summary": "Create Relation for you associated entities.",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "create-relation"
      }
    },
    "/associations/relations/{recordId}": {
      "get": {
        "description": "Get all relations by record Id",
        "operationId": "get-relations-by-record-id",
        "parameters": [
          {
            "in": "path",
            "name": "recordId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Your Sub Account's ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "clF1LD04GTUKN3b3XuOj",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "skip",
            "required": true,
            "schema": {
              "example": "10",
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": "100",
              "type": "number"
            }
          },
          {
            "description": "Association Ids",
            "in": "query",
            "name": "associationIds",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations/relation.readonly"
            ]
          }
        ],
        "summary": "Get all relations By record Id",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "get-relations-by-record-id"
      }
    },
    "/associations/relations/{relationId}": {
      "delete": {
        "description": "Delete Relation",
        "operationId": "delete-relation",
        "parameters": [
          {
            "in": "path",
            "name": "relationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Your Sub Account's ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "clF1LD04GTUKN3b3XuOj",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations/relation.write"
            ]
          }
        ],
        "summary": "Delete Relation",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "delete-relation"
      }
    },
    "/associations/{associationId}": {
      "delete": {
        "description": "Delete USER_DEFINED Association By Id, deleting an association will also all the relations for that association",
        "operationId": "delete-association",
        "parameters": [
          {
            "in": "path",
            "name": "associationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteAssociationsResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations.write"
            ]
          }
        ],
        "summary": "Delete Association",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "delete-association"
      },
      "get": {
        "description": "Using this api you can get SYSTEM_DEFINED / USER_DEFINED association by id ",
        "operationId": "get-association-by-ID",
        "parameters": [
          {
            "in": "path",
            "name": "associationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations.readonly"
            ]
          }
        ],
        "summary": "Get association by ID",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "get-association-by-ID"
      },
      "put": {
        "description": "Update Association , Allows you to update labels of an associations. Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-293776/cd0f4122abc04d3"
        },
        "operationId": "update-association",
        "parameters": [
          {
            "in": "path",
            "name": "associationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAssociationReqDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssociationsGetPostSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "associations.write"
            ]
          }
        ],
        "summary": "Update Association By Id",
        "tags": [
          "associations"
        ],
        "x-ghl-operation-id": "update-association"
      }
    },
    "/blogs/authors": {
      "get": {
        "description": "The \"Get all authors\" Api return the blog authors for a given location ID. Please use \"blogs/author.readonly\" ",
        "operationId": "get-all-blog-authors-by-location",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Number of authors to show in the listing",
            "example": 5,
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Number of authors to skip in listing",
            "example": 0,
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthorsResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "blogs/author.readonly"
            ]
          }
        ],
        "summary": "Get all authors",
        "tags": [
          "blogs"
        ],
        "x-ghl-operation-id": "get-all-blog-authors-by-location"
      }
    },
    "/blogs/categories": {
      "get": {
        "description": "The \"Get all categories\" Api return the blog categoies for a given location ID. Please use \"blogs/category.readonly\" ",
        "operationId": "get-all-categories-by-location",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Number of categories to show in the listing",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Number of categories to skip in listing",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CategoriesResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "blogs/category.readonly"
            ]
          }
        ],
        "summary": "Get all categories",
        "tags": [
          "blogs"
        ],
        "x-ghl-operation-id": "get-all-categories-by-location"
      }
    },
    "/blogs/posts": {
      "post": {
        "description": "The \"Create Blog Post\" API allows you create blog post for any given blog site. Please use blogs/post.write",
        "operationId": "create-blog-post",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBlogPostParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlogPostCreateResponseWrapperDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "blogs/post.write"
            ]
          }
        ],
        "summary": "Create Blog Post",
        "tags": [
          "blogs"
        ],
        "x-ghl-operation-id": "create-blog-post"
      }
    },
    "/blogs/posts/all": {
      "get": {
        "description": "The \"Get Blog posts by Blog ID\" API allows you get blog posts for any given blog site using blog ID.Please use blogs/posts.readonly",
        "operationId": "get-blog-post",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "66f429b8afdce84227a4610d",
            "in": "query",
            "name": "blogId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": 4,
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "example": 0,
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "search for any post by name",
            "example": "ai news",
            "in": "query",
            "name": "searchTerm",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "PUBLISHED",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "ALL",
                "PUBLISHED",
                "SCHEDULED",
                "ARCHIVED",
                "DRAFT"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlogPostGetResponseWrapperDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "blogs/posts.readonly"
            ]
          }
        ],
        "summary": "Get Blog posts by Blog ID",
        "tags": [
          "blogs"
        ],
        "x-ghl-operation-id": "get-blog-post"
      }
    },
    "/blogs/posts/url-slug-exists": {
      "get": {
        "description": "The \"Check url slug\" API allows check the blog slug validation which is needed before publishing any blog post. Please use blogs/check-slug.readonly. you can find the POST ID from the post edit url.",
        "operationId": "check-url-slug-exists",
        "parameters": [
          {
            "in": "query",
            "name": "urlSlug",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "66f429b8afdce84227a4610d",
            "in": "query",
            "name": "postId",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UrlSlugCheckResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "blogs/check-slug.readonly"
            ]
          }
        ],
        "summary": "Check url slug",
        "tags": [
          "blogs"
        ],
        "x-ghl-operation-id": "check-url-slug-exists"
      }
    },
    "/blogs/posts/{postId}": {
      "put": {
        "description": "The \"Update Blog Post\" API allows you update blog post for any given blog site. Please use blogs/post-update.write",
        "operationId": "update-blog-post",
        "parameters": [
          {
            "in": "path",
            "name": "postId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBlogPostParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlogPostUpdateResponseWrapperDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "blogs/post-update.write"
            ]
          }
        ],
        "summary": "Update Blog Post",
        "tags": [
          "blogs"
        ],
        "x-ghl-operation-id": "update-blog-post"
      }
    },
    "/blogs/site/all": {
      "get": {
        "description": "The \"Get Blogs by Location ID\" API allows you get blogs using Location ID.Please use blogs/list.readonly",
        "operationId": "get-blogs",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": 0,
            "in": "query",
            "name": "skip",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "example": 4,
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "search for any post by name",
            "example": "ai news",
            "in": "query",
            "name": "searchTerm",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlogGetResponseWrapperDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "blogs/list.readonly"
            ]
          }
        ],
        "summary": "Get Blogs by Location ID",
        "tags": [
          "blogs"
        ],
        "x-ghl-operation-id": "get-blogs"
      }
    },
    "/brand-boards/": {
      "post": {
        "description": "Creates a new brand board with logos, colors, and fonts",
        "operationId": "createBrandBoard",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBrandBoardParam"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBrandBoardSuccessDTO"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "brand-boards/design-kit.write"
            ]
          }
        ],
        "summary": "Create a new brand board",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "createBrandBoard"
      }
    },
    "/brand-boards/locations/{locationId}/brand-voices": {
      "get": {
        "description": "Get list of brand voices for a location",
        "operationId": "list-brand-voices",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "oHJiAh0wDG3BzmzACVD6",
              "type": "string"
            }
          },
          {
            "description": "Number of brand voices to return. Defaults to 10, minimum is 1, maximum is 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "maximum": 20,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of brand voices to skip for pagination. Defaults to 0, minimum is 0",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Search text for brand voice name",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "My Brand Voice",
              "type": "string"
            }
          },
          {
            "description": "Whether to return deleted brand voices. Defaults to false",
            "in": "query",
            "name": "deleted",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBrandVoicesPublicV1ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "List Brand Voices",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "list-brand-voices",
        "x-version-added": "v3"
      },
      "post": {
        "description": "Create a brand voice for a location",
        "operationId": "create-brand-voice",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "oHJiAh0wDG3BzmzACVD6",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBrandVoicePublicV1BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBrandVoicePublicV1ResponseDto"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create Brand Voice",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "create-brand-voice",
        "x-version-added": "v3"
      }
    },
    "/brand-boards/locations/{locationId}/brand-voices/{brandVoiceId}": {
      "delete": {
        "description": "Delete a brand voice by ID",
        "operationId": "delete-brand-voice",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "oHJiAh0wDG3BzmzACVD6",
              "type": "string"
            }
          },
          {
            "description": "Brand voice ID",
            "in": "path",
            "name": "brandVoiceId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteBrandVoicePublicV1ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Delete Brand Voice",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "delete-brand-voice",
        "x-version-added": "v3"
      },
      "get": {
        "description": "Get a brand voice by ID",
        "operationId": "get-brand-voice",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "oHJiAh0wDG3BzmzACVD6",
              "type": "string"
            }
          },
          {
            "description": "Brand voice ID",
            "in": "path",
            "name": "brandVoiceId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBrandVoicePublicV1ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get Brand Voice",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "get-brand-voice",
        "x-version-added": "v3"
      },
      "patch": {
        "description": "Update a brand voice by ID",
        "operationId": "update-brand-voice",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "oHJiAh0wDG3BzmzACVD6",
              "type": "string"
            }
          },
          {
            "description": "Brand voice ID",
            "in": "path",
            "name": "brandVoiceId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBrandVoicePublicV1BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateBrandVoicePublicV1ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update Brand Voice",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "update-brand-voice",
        "x-version-added": "v3"
      }
    },
    "/brand-boards/locations/{locationId}/brand-voices/{brandVoiceId}/default": {
      "post": {
        "description": "Set a brand voice as the default for a location. The previous default will be unset.",
        "operationId": "set-default-brand-voice",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "oHJiAh0wDG3BzmzACVD6",
              "type": "string"
            }
          },
          {
            "description": "Brand voice ID",
            "in": "path",
            "name": "brandVoiceId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SetDefaultBrandVoicePublicV1ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Set Default Brand Voice",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "set-default-brand-voice",
        "x-version-added": "v3"
      }
    },
    "/brand-boards/{locationId}": {
      "get": {
        "description": "Retrieves all Brand Boards for a specific location",
        "operationId": "getBrandBoardsByLocation",
        "parameters": [
          {
            "description": "Location ID where the brand boards exist",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Maximum number of brand boards to return",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "type": "number"
            }
          },
          {
            "description": "Number of brand boards to skip for pagination",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Search term to filter brand boards by name",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "default": "",
              "example": "brandboard",
              "type": "string"
            }
          },
          {
            "description": "Include deleted brand boards in results",
            "in": "query",
            "name": "deleted",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBrandBoardsByLocationSuccessDTO"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "brand-boards/design-kit.readonly"
            ]
          }
        ],
        "summary": "Get Brand Boards",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "getBrandBoardsByLocation"
      }
    },
    "/brand-boards/{locationId}/{id}": {
      "delete": {
        "description": "Deletes a Brand Board",
        "operationId": "deleteBrandBoard",
        "parameters": [
          {
            "description": "Location ID where the brand board exists",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Brand board ID to update, retrieve, or delete",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBrandBoardSuccessDTO"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "brand-boards/design-kit.write"
            ]
          }
        ],
        "summary": "Delete a Brand Board",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "deleteBrandBoard"
      },
      "get": {
        "description": "Retrieves a specific Brand Board by its ID",
        "operationId": "getBrandBoardById",
        "parameters": [
          {
            "description": "Location ID where the brand board exists",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Brand board ID to update, retrieve, or delete",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBrandBoardSuccessDTO"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "brand-boards/design-kit.readonly"
            ]
          }
        ],
        "summary": "Get Brand Board",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "getBrandBoardById"
      },
      "patch": {
        "description": "Updates an existing Brand Board",
        "operationId": "updateBrandBoard",
        "parameters": [
          {
            "description": "Location ID where the brand board exists",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Brand board ID to update, retrieve, or delete",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBrandBoardBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBrandBoardSuccessDTO"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "brand-boards/design-kit.write"
            ]
          }
        ],
        "summary": "Update a Brand Board",
        "tags": [
          "brand-boards"
        ],
        "x-ghl-operation-id": "updateBrandBoard"
      }
    },
    "/businesses/": {
      "get": {
        "description": "Get Businesses by Location",
        "operationId": "get-businesses-by-location",
        "parameters": [
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "5DP4iH6HLkQsiKESj6rh",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": "100",
              "example": "100",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": "0",
              "example": "10",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBusinessByLocationResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "businesses.readonly"
            ]
          }
        ],
        "summary": "Get Businesses by Location",
        "tags": [
          "businesses"
        ],
        "x-ghl-operation-id": "get-businesses-by-location"
      },
      "post": {
        "description": "Create Business",
        "operationId": "create-business",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBusinessDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateBusinessResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "businesses.write"
            ]
          }
        ],
        "summary": "Create Business",
        "tags": [
          "businesses"
        ],
        "x-ghl-operation-id": "create-business"
      }
    },
    "/businesses/{businessId}": {
      "delete": {
        "description": "Delete Business",
        "operationId": "delete-Business",
        "parameters": [
          {
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "businessId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteBusinessResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "businesses.write"
            ]
          }
        ],
        "summary": "Delete Business",
        "tags": [
          "businesses"
        ],
        "x-ghl-operation-id": "delete-Business"
      },
      "get": {
        "description": "Get Business",
        "operationId": "get-business",
        "parameters": [
          {
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "businessId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBusinessByIdResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "businesses.readonly"
            ]
          }
        ],
        "summary": "Get Business",
        "tags": [
          "businesses"
        ],
        "x-ghl-operation-id": "get-business"
      },
      "put": {
        "description": "Update Business",
        "operationId": "update-business",
        "parameters": [
          {
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "businessId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBusinessDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateBusinessResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "businesses.write"
            ]
          }
        ],
        "summary": "Update Business",
        "tags": [
          "businesses"
        ],
        "x-ghl-operation-id": "update-business"
      }
    },
    "/calendars/": {
      "get": {
        "description": "Get all calendars in a location.",
        "operationId": "get-calendars",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Group Id",
            "in": "query",
            "name": "groupId",
            "required": false,
            "schema": {
              "example": "BqTwX8QFwXzpegMve9EQ",
              "type": "string"
            }
          },
          {
            "description": "Show drafted",
            "in": "query",
            "name": "showDrafted",
            "required": false,
            "schema": {
              "default": true,
              "example": false,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarsGetSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get Calendars",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-calendars"
      },
      "post": {
        "description": "Create calendar in a location.",
        "operationId": "create-calendar",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CalendarCreateDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarByIdSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Create Calendar",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-calendar"
      }
    },
    "/calendars/appointments/{appointmentId}/notes": {
      "get": {
        "description": "Get Appointment Notes",
        "operationId": "get-appointment-notes",
        "parameters": [
          {
            "description": "Limit of notes to fetch",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": 10,
              "maximum": 20,
              "type": "number"
            }
          },
          {
            "description": "Offset of notes to fetch",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Appointment ID",
            "in": "path",
            "name": "appointmentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarsGetNotesListSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get Notes",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-appointment-notes"
      },
      "post": {
        "description": "Create Note",
        "operationId": "create-appointment-note",
        "parameters": [
          {
            "description": "Appointment ID",
            "in": "path",
            "name": "appointmentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CalendarsNotesDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarsGetCreateUpdateNoteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Create Note",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-appointment-note"
      }
    },
    "/calendars/appointments/{appointmentId}/notes/{noteId}": {
      "delete": {
        "description": "Delete Note",
        "operationId": "delete-appointment-note",
        "parameters": [
          {
            "description": "Appointment ID",
            "in": "path",
            "name": "appointmentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "noteId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarsDeleteNoteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Delete Note",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-appointment-note"
      },
      "put": {
        "description": "Update Note",
        "operationId": "update-appointment-note",
        "parameters": [
          {
            "description": "Appointment ID",
            "in": "path",
            "name": "appointmentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "noteId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CalendarsNotesDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarsGetCreateUpdateNoteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Update Note",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "update-appointment-note"
      }
    },
    "/calendars/blocked-slots": {
      "get": {
        "description": "Get Blocked Slots",
        "operationId": "get-blocked-slots",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "0007BWpSzSwfiuSl0tR2",
              "type": "string"
            }
          },
          {
            "description": "User Id - Owner of an appointment. Either of userId, groupId or calendarId is required",
            "in": "query",
            "name": "userId",
            "required": false,
            "schema": {
              "example": "CVokAlI8fgw4WYWoCtQz",
              "type": "string"
            }
          },
          {
            "description": "Either of calendarId, userId or groupId is required",
            "in": "query",
            "name": "calendarId",
            "required": false,
            "schema": {
              "example": "BqTwX8QFwXzpegMve9EQ",
              "type": "string"
            }
          },
          {
            "description": "Either of groupId, calendarId or userId is required",
            "in": "query",
            "name": "groupId",
            "required": false,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          },
          {
            "description": "Start Time (in millis)",
            "in": "query",
            "name": "startTime",
            "required": true,
            "schema": {
              "example": "1680373800000",
              "type": "string"
            }
          },
          {
            "description": "End Time (in millis)",
            "in": "query",
            "name": "endTime",
            "required": true,
            "schema": {
              "example": "1680978599999",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCalendarEventsSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get Blocked Slots",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-blocked-slots"
      }
    },
    "/calendars/events": {
      "get": {
        "description": "Get Calendar Events",
        "operationId": "get-calendar-events",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "0007BWpSzSwfiuSl0tR2",
              "type": "string"
            }
          },
          {
            "description": "User Id - Owner of an appointment. Either of userId, groupId or calendarId is required",
            "in": "query",
            "name": "userId",
            "required": false,
            "schema": {
              "example": "CVokAlI8fgw4WYWoCtQz",
              "type": "string"
            }
          },
          {
            "description": "Either of calendarId, userId or groupId is required",
            "in": "query",
            "name": "calendarId",
            "required": false,
            "schema": {
              "example": "BqTwX8QFwXzpegMve9EQ",
              "type": "string"
            }
          },
          {
            "description": "Either of groupId, calendarId or userId is required",
            "in": "query",
            "name": "groupId",
            "required": false,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          },
          {
            "description": "Start Time (in millis)",
            "in": "query",
            "name": "startTime",
            "required": true,
            "schema": {
              "example": "1680373800000",
              "type": "string"
            }
          },
          {
            "description": "End Time (in millis)",
            "in": "query",
            "name": "endTime",
            "required": true,
            "schema": {
              "example": "1680978599999",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCalendarEventsSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get Calendar Events",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-calendar-events"
      }
    },
    "/calendars/events/appointments": {
      "post": {
        "description": "Create appointment",
        "operationId": "create-appointment",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AppointmentCreateSchema"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppointmentSchemaResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Create appointment",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-appointment"
      }
    },
    "/calendars/events/appointments/{eventId}": {
      "get": {
        "description": "Get appointment by ID",
        "operationId": "get-appointment",
        "parameters": [
          {
            "description": "Event Id or Instance id. For recurring appointments send masterEventId to modify original series.",
            "examples": {
              "example1": {
                "summary": "Event ID",
                "value": "ocQHyuzHvysMo5N5VsXc"
              },
              "example2": {
                "summary": "Recurring Instance ID",
                "value": "ocQHyuzHvysMo5N5VsXc_1729821600000_1800"
              }
            },
            "in": "path",
            "name": "eventId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCalendarEventSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get Appointment",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-appointment"
      },
      "put": {
        "description": "Update appointment",
        "operationId": "edit-appointment",
        "parameters": [
          {
            "description": "Event Id or Instance id. For recurring appointments send masterEventId to modify original series.",
            "examples": {
              "example1": {
                "summary": "Event ID",
                "value": "ocQHyuzHvysMo5N5VsXc"
              },
              "example2": {
                "summary": "Recurring Instance ID",
                "value": "ocQHyuzHvysMo5N5VsXc_1729821600000_1800"
              }
            },
            "in": "path",
            "name": "eventId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AppointmentEditSchema"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppointmentSchemaResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Update Appointment",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "edit-appointment"
      }
    },
    "/calendars/events/block-slots": {
      "post": {
        "description": "Create block slot",
        "operationId": "create-block-slot",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BlockSlotCreateRequestDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlockedSlotSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Create Block Slot",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-block-slot"
      }
    },
    "/calendars/events/block-slots/{eventId}": {
      "put": {
        "description": "Update block slot by ID",
        "operationId": "edit-block-slot",
        "parameters": [
          {
            "description": "Event Id or Instance id. For recurring appointments send masterEventId to modify original series.",
            "examples": {
              "example1": {
                "summary": "Event ID",
                "value": "ocQHyuzHvysMo5N5VsXc"
              },
              "example2": {
                "summary": "Recurring Instance ID",
                "value": "ocQHyuzHvysMo5N5VsXc_1729821600000_1800"
              }
            },
            "in": "path",
            "name": "eventId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BlockSlotEditRequestDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlockedSlotSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Update Block Slot",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "edit-block-slot"
      }
    },
    "/calendars/events/{eventId}": {
      "delete": {
        "description": "Delete event by ID",
        "operationId": "delete-event",
        "parameters": [
          {
            "description": "Event Id or Instance id. For recurring appointments send masterEventId to modify original series.",
            "examples": {
              "example1": {
                "summary": "Event ID",
                "value": "ocQHyuzHvysMo5N5VsXc"
              },
              "example2": {
                "summary": "Recurring Instance ID",
                "value": "ocQHyuzHvysMo5N5VsXc_1729821600000_1800"
              }
            },
            "in": "path",
            "name": "eventId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteAppointmentSchema"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteEventSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Delete Event",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-event"
      }
    },
    "/calendars/groups": {
      "get": {
        "description": "Get all calendar groups in a location.",
        "operationId": "get-groups",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AllGroupsSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/groups.readonly"
            ]
          }
        ],
        "summary": "Get Groups",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-groups"
      },
      "post": {
        "description": "Create Calendar Group",
        "operationId": "create-calendar-group",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GroupCreateDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GroupCreateSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/groups.write"
            ]
          }
        ],
        "summary": "Create Calendar Group",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-calendar-group"
      }
    },
    "/calendars/groups/validate-slug": {
      "post": {
        "description": "Validate if group slug is available or not.",
        "operationId": "validate-groups-slug",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ValidateGroupSlugPostBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidateGroupSlugSuccessResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/groups.write"
            ]
          }
        ],
        "summary": "Validate group slug",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "validate-groups-slug"
      }
    },
    "/calendars/groups/{groupId}": {
      "delete": {
        "description": "Delete Group",
        "operationId": "delete-group",
        "parameters": [
          {
            "description": "Group Id",
            "in": "path",
            "name": "groupId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GroupSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/groups.write"
            ]
          }
        ],
        "summary": "Delete Group",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-group"
      },
      "put": {
        "description": "Update Group by group ID",
        "operationId": "edit-group",
        "parameters": [
          {
            "description": "Group Id",
            "in": "path",
            "name": "groupId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GroupUpdateDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GroupCreateSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/groups.write"
            ]
          }
        ],
        "summary": "Update Group",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "edit-group"
      }
    },
    "/calendars/groups/{groupId}/status": {
      "put": {
        "description": "Disable Group",
        "operationId": "disable-group",
        "parameters": [
          {
            "description": "Group Id",
            "in": "path",
            "name": "groupId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GroupStatusUpdateParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GroupSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/groups.write"
            ]
          }
        ],
        "summary": "Disable Group",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "disable-group"
      }
    },
    "/calendars/resources/{resourceType}": {
      "get": {
        "deprecated": true,
        "description": "List calendar resources by resource type and location ID (Services V1)",
        "operationId": "fetch-calendar-resources",
        "parameters": [
          {
            "description": "Calendar Resource Type",
            "in": "path",
            "name": "resourceType",
            "required": true,
            "schema": {
              "enum": [
                "equipments",
                "rooms"
              ],
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "skip",
            "required": true,
            "schema": {
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/CalendarResourceByIdResponseDTO"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Calendar resources listed"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": [
              "calendars/resources.readonly"
            ]
          }
        ],
        "summary": "List Calendar Resources",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "fetch-calendar-resources"
      },
      "post": {
        "deprecated": true,
        "description": "Create calendar resource by resource type (Services V1)",
        "operationId": "create-calendar-resource",
        "parameters": [
          {
            "description": "Calendar Resource Type",
            "in": "path",
            "name": "resourceType",
            "required": true,
            "schema": {
              "enum": [
                "equipments",
                "rooms"
              ],
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCalendarResourceDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarResourceByIdResponseDTO"
                }
              }
            },
            "description": "Calendar resource created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": [
              "calendars/resources.write"
            ]
          }
        ],
        "summary": "Create Calendar Resource",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-calendar-resource"
      }
    },
    "/calendars/resources/{resourceType}/{id}": {
      "delete": {
        "deprecated": true,
        "description": "Delete calendar resource by ID (Services V1)",
        "operationId": "delete-calendar-resource",
        "parameters": [
          {
            "description": "Calendar Resource Type",
            "in": "path",
            "name": "resourceType",
            "required": true,
            "schema": {
              "enum": [
                "equipments",
                "rooms"
              ],
              "type": "string"
            }
          },
          {
            "description": "Calendar Resource ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceDeleteResponseDTO"
                }
              }
            },
            "description": "Calendar resource deleted"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": [
              "calendars/resources.write"
            ]
          }
        ],
        "summary": "Delete Calendar Resource",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-calendar-resource"
      },
      "get": {
        "deprecated": true,
        "description": "Get calendar resource by ID (Services V1)",
        "operationId": "get-calendar-resource",
        "parameters": [
          {
            "description": "Calendar Resource Type",
            "in": "path",
            "name": "resourceType",
            "required": true,
            "schema": {
              "enum": [
                "equipments",
                "rooms"
              ],
              "type": "string"
            }
          },
          {
            "description": "Calendar Resource ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarResourceByIdResponseDTO"
                }
              }
            },
            "description": "Calendar resource fetched"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": [
              "calendars/resources.readonly"
            ]
          }
        ],
        "summary": "Get Calendar Resource",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-calendar-resource"
      },
      "put": {
        "deprecated": true,
        "description": "Update calendar resource by ID (Services V1)",
        "operationId": "update-calendar-resource",
        "parameters": [
          {
            "description": "Calendar Resource Type",
            "in": "path",
            "name": "resourceType",
            "required": true,
            "schema": {
              "enum": [
                "equipments",
                "rooms"
              ],
              "type": "string"
            }
          },
          {
            "description": "Calendar Resource ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCalendarResourceDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarResourceResponseDTO"
                }
              }
            },
            "description": "Calendar resource updated"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": [
              "calendars/resources.write"
            ]
          }
        ],
        "summary": "Update Calendar Resource",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "update-calendar-resource"
      }
    },
    "/calendars/schedules": {
      "post": {
        "description": "Create new schedule with specified rules, timezone, location, user and calendar associations.",
        "operationId": "createSchedule",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateScheduleDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScheduleResponseDTO"
                }
              }
            },
            "description": "Schedule created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Validation errors in schedule rules or conflicting data"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Create user availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "createSchedule"
      }
    },
    "/calendars/schedules/event-calendar/{calendarId}": {
      "get": {
        "description": "Retrieve the availability schedule for a specific event calendar. Returns the schedule associated with the calendar ID provided in the path.",
        "operationId": "getCalendarSchedule",
        "parameters": [
          {
            "description": "Unique identifier of the event calendar",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "WvVX9LpvlBO6K506xLbp",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EventCalendarScheduleWrapperDTO"
                }
              }
            },
            "description": "Schedule retrieved successfully for the event calendar"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "description": "Event calendar or schedule with the specified ID was not found"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get event calendar availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "getCalendarSchedule"
      },
      "post": {
        "description": "Create a new availability schedule specifically for an event calendar. The calendar ID is provided in the path, and schedule rules and timezone are provided in the request body.",
        "operationId": "createCalendarSchedule",
        "parameters": [
          {
            "description": "Unique identifier of the event calendar",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "WvVX9LpvlBO6K506xLbp",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEventCalendarScheduleDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EventCalendarScheduleWrapperDTO"
                }
              }
            },
            "description": "Schedule created successfully for the event calendar"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "description": "Event calendar with the specified ID was not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Validation errors in schedule rules or conflicting data"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Create event calendar availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "createCalendarSchedule"
      },
      "put": {
        "description": "Update the availability schedule for a specific event calendar. Only provided fields will be updated. The calendar ID is provided in the path.",
        "operationId": "updateCalendarSchedule",
        "parameters": [
          {
            "description": "Unique identifier of the event calendar",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "WvVX9LpvlBO6K506xLbp",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateEventCalendarScheduleDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EventCalendarScheduleWrapperDTO"
                }
              }
            },
            "description": "Schedule updated successfully for the event calendar"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "description": "Event calendar or schedule with the specified ID was not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Validation errors in schedule rules or conflicting data"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Update event calendar availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "updateCalendarSchedule"
      }
    },
    "/calendars/schedules/search": {
      "get": {
        "description": "Retrieve user availability schedules based on various filters including location, calendar, and user. Supports pagination.",
        "operationId": "getAllSchedules",
        "parameters": [
          {
            "description": "Location ID to filter schedules by",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          },
          {
            "description": "User ID to filter schedules by specific user",
            "in": "query",
            "name": "userId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          },
          {
            "description": "Calendar ID for filtering schedules by specific calendar",
            "in": "query",
            "name": "calendarId",
            "required": false,
            "schema": {
              "example": "WvVX9LpvlBO6K506xLbp",
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip for pagination",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Maximum number of items to return (max 500)",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 50,
              "example": 50,
              "maximum": 500,
              "minimum": 1,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllSchedulesResponseDTO"
                }
              }
            },
            "description": "Schedules retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "List user availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "getAllSchedules"
      }
    },
    "/calendars/schedules/{id}": {
      "delete": {
        "description": "Permanently remove a schedule and all its associated rules. This action cannot be undone.",
        "operationId": "deleteSchedule",
        "parameters": [
          {
            "description": "Unique identifier of the schedule to delete",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "sch123def456ghi789",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "success": {
                      "description": "Whether the deletion was successful",
                      "example": true,
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Schedule deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "description": "Schedule with the specified ID was not found"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Delete user availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "deleteSchedule"
      },
      "get": {
        "description": "Retrieve a specific schedule by its unique identifier. Returns detailed information including rules, timezone, and associated calendars/users.",
        "operationId": "getScheduleById",
        "parameters": [
          {
            "description": "Unique identifier of the schedule",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScheduleResponseDTO"
                }
              }
            },
            "description": "Schedule found and retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "description": "Schedule with the specified ID was not found"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get user availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "getScheduleById"
      },
      "put": {
        "description": "Modify an existing schedule by updating its rules, timezone, and name All fields are optional - only provided fields will be updated.",
        "operationId": "updateSchedule",
        "parameters": [
          {
            "description": "Unique identifier of the schedule to update",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "sch123def456ghi789",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateScheduleDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScheduleResponseDTO"
                }
              }
            },
            "description": "Schedule updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "description": "Schedule with the specified ID was not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Validation errors in schedule rules or conflicting data"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Update user availability schedule",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "updateSchedule"
      }
    },
    "/calendars/schedules/{id}/associations/{calendarId}": {
      "delete": {
        "description": "Removes the association between a team calendar and the given schedule by removing the calendarId from the schedule",
        "operationId": "remove-calendar-from-schedule",
        "parameters": [
          {
            "description": "Unique identifier of the schedule",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          },
          {
            "description": "Unique identifier of the calendar to remove from the schedule",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "WvVX9LpvlBO6K506xLbp",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "success": {
                      "example": true,
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Calendar successfully removed from schedule"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Schedule and calendar must belong to the same location"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Schedule or calendar not found"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Remove user availability schedule from a calendar",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "remove-calendar-from-schedule"
      },
      "put": {
        "description": "Associates a calendar with the given schedule by adding the calendarId to a schedule",
        "operationId": "add-calendar-to-schedule",
        "parameters": [
          {
            "description": "Unique identifier of the schedule",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          },
          {
            "description": "Unique identifier of the team calendar to add to the schedule",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "WvVX9LpvlBO6K506xLbp",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "success": {
                      "example": true,
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Calendar successfully added to schedule"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Schedule and calendar must belong to the same location"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Schedule or calendar not found"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Apply user availability schedule to a calendar",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "add-calendar-to-schedule"
      }
    },
    "/calendars/services/bookings": {
      "get": {
        "description": "Retrieve service bookings for a location within a given date range, with an optional service location filter.",
        "operationId": "get-service-bookings",
        "parameters": [
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "0007BWpSzSwfiuSl0tR2",
              "type": "string"
            }
          },
          {
            "description": "Start Time (timestamp in milliseconds as string)",
            "in": "query",
            "name": "startTime",
            "required": true,
            "schema": {
              "example": "1704110400000",
              "type": "string"
            }
          },
          {
            "description": "End Time (timestamp in milliseconds as string)",
            "in": "query",
            "name": "endTime",
            "required": true,
            "schema": {
              "example": "1704114000000",
              "type": "string"
            }
          },
          {
            "description": "Timezone",
            "in": "query",
            "name": "timezone",
            "required": false,
            "schema": {
              "example": "America/New_York",
              "type": "string"
            }
          },
          {
            "description": "Service Location ID",
            "in": "query",
            "name": "serviceLocationId",
            "required": false,
            "schema": {
              "example": "65e5f6dfacf123513228d384",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceBookingsListResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get Service Bookings",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-service-bookings"
      },
      "post": {
        "description": "Create a new service booking",
        "operationId": "create-service-booking",
        "parameters": [
          {
            "description": "If true the time slot validation would be avoided for any booking creation/update (even the skipSchedulingNotice)",
            "in": "query",
            "name": "overrideAvailability",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "If set to true, the minimum scheduling notice and date range would be ignored",
            "in": "query",
            "name": "skipSchedulingNotice",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePublicServiceBookingDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrUpdateServiceBookingResponseDTO"
                }
              }
            },
            "description": "Booking created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Create Service Booking",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-service-booking"
      }
    },
    "/calendars/services/bookings/{bookingId}": {
      "delete": {
        "description": "Delete a service booking by ID",
        "operationId": "delete-service-booking",
        "parameters": [
          {
            "description": "Unique Service Booking ID",
            "in": "path",
            "name": "bookingId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteServiceBookingResponseDTO"
                }
              }
            },
            "description": "Booking deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Delete Service Booking",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-service-booking"
      },
      "get": {
        "description": "Get a specific service booking by ID",
        "operationId": "get-service-booking-by-id",
        "parameters": [
          {
            "description": "Unique Service Booking ID",
            "in": "path",
            "name": "bookingId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceBookingResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get Service Booking by ID",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-service-booking-by-id"
      },
      "put": {
        "description": "Update an existing service booking",
        "operationId": "update-service-booking",
        "parameters": [
          {
            "description": "Unique Service Booking ID",
            "in": "path",
            "name": "bookingId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          },
          {
            "description": "If true the time slot validation would be avoided for any booking creation/update (even the skipSchedulingNotice)",
            "in": "query",
            "name": "overrideAvailability",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "If set to true, the minimum scheduling notice and date range would be ignored",
            "in": "query",
            "name": "skipSchedulingNotice",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateServiceBookingDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrUpdateServiceBookingResponseDTO"
                }
              }
            },
            "description": "Booking updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Update Service Booking",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "update-service-booking"
      }
    },
    "/calendars/services/catalog": {
      "get": {
        "description": "Get all services in a location.",
        "operationId": "get-services-catalog",
        "parameters": [
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "0007BWpSzSwfiuSl0tR2",
              "type": "string"
            }
          },
          {
            "description": "Filter by service category ID",
            "in": "query",
            "name": "serviceCategoryId",
            "required": false,
            "schema": {
              "example": "65e5f6dfacf123513228d384",
              "type": "string"
            }
          },
          {
            "description": "Filter services: true = private only, false = public only, unset = all services",
            "in": "query",
            "name": "isPrivate",
            "required": false,
            "schema": {
              "example": false,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServicesListResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get Services",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-services-catalog"
      },
      "post": {
        "description": "Create new service in a location.",
        "operationId": "create-service-catalog",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateServiceDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceResponseWrapperDTO"
                }
              }
            },
            "description": "Service created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Create Service",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-service-catalog"
      }
    },
    "/calendars/services/catalog/{serviceId}": {
      "delete": {
        "description": "Delete service by ID.",
        "operationId": "delete-service-catalog",
        "parameters": [
          {
            "description": "Service ID",
            "in": "path",
            "name": "serviceId",
            "required": true,
            "schema": {
              "example": "65e5f6dfacf123513228d384",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteServiceResponseDTO"
                }
              }
            },
            "description": "Service deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Delete Service",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-service-catalog"
      },
      "get": {
        "description": "Get service by ID.",
        "operationId": "get-service-catalog-by-id",
        "parameters": [
          {
            "description": "Service ID",
            "in": "path",
            "name": "serviceId",
            "required": true,
            "schema": {
              "example": "65e5f6dfacf123513228d384",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceResponseWrapperDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get Service by ID",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-service-catalog-by-id"
      },
      "put": {
        "description": "Update service by ID.",
        "operationId": "update-service-catalog",
        "parameters": [
          {
            "description": "Service ID",
            "in": "path",
            "name": "serviceId",
            "required": true,
            "schema": {
              "example": "65e5f6dfacf123513228d384",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateServiceDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceResponseWrapperDTO"
                }
              }
            },
            "description": "Service updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Invalid request parameters"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Update Service",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "update-service-catalog"
      }
    },
    "/calendars/services/locations": {
      "get": {
        "description": "Get all service locations",
        "operationId": "get-service-locations",
        "parameters": [
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "0007BWpSzSwfiuSl0tR2",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceLocationListResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get Service Locations",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-service-locations"
      },
      "post": {
        "description": "Create a new service location",
        "operationId": "create-service-location",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateServiceLocationDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceLocationResponseDTO"
                }
              }
            },
            "description": "Service location created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Create Service Location",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-service-location"
      }
    },
    "/calendars/services/locations/{serviceLocationId}": {
      "delete": {
        "description": "Delete a service location by ID",
        "operationId": "delete-service-location",
        "parameters": [
          {
            "description": "Unique Service Location ID",
            "in": "path",
            "name": "serviceLocationId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteServiceLocationResponseDTO"
                }
              }
            },
            "description": "Service location deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Delete Service Location",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-service-location"
      },
      "get": {
        "description": "Get service location by ID",
        "operationId": "get-service-location-by-id",
        "parameters": [
          {
            "description": "Unique Service Location ID",
            "in": "path",
            "name": "serviceLocationId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceLocationResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get Service Location by ID",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-service-location-by-id"
      },
      "put": {
        "description": "Update an existing service location",
        "operationId": "update-service-location",
        "parameters": [
          {
            "description": "Unique Service Location ID",
            "in": "path",
            "name": "serviceLocationId",
            "required": true,
            "schema": {
              "example": "IkqiJlXJ7o9h61tCHHod",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateServiceLocationDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceLocationResponseDTO"
                }
              }
            },
            "description": "Service location updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "User not authenticated"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Update Service Location",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "update-service-location"
      }
    },
    "/calendars/{calendarId}": {
      "delete": {
        "description": "Delete calendar by ID",
        "operationId": "delete-calendar",
        "parameters": [
          {
            "description": "Calendar Id",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarDeleteSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Delete Calendar",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-calendar"
      },
      "get": {
        "description": "Get calendar by ID",
        "operationId": "get-calendar",
        "parameters": [
          {
            "description": "Calendar Id",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarByIdSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get Calendar",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-calendar"
      },
      "put": {
        "description": "Update calendar by ID.",
        "operationId": "update-calendar",
        "parameters": [
          {
            "description": "Calendar Id",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CalendarUpdateDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarByIdSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.write"
            ]
          }
        ],
        "summary": "Update Calendar",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "update-calendar"
      }
    },
    "/calendars/{calendarId}/free-slots": {
      "get": {
        "description": "Get free slots for a calendar between a date range. Optionally a consumer can also request free slots in a particular timezone and also for a particular user.",
        "operationId": "get-slots",
        "parameters": [
          {
            "description": "Calendar Id",
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          },
          {
            "description": "Start Date (**⚠️ Important:** Date range cannot be more than 31 days)",
            "in": "query",
            "name": "startDate",
            "required": true,
            "schema": {
              "example": 1548898600000,
              "type": "number"
            }
          },
          {
            "description": "End Date (**⚠️ Important:** Date range cannot be more than 31 days)",
            "in": "query",
            "name": "endDate",
            "required": true,
            "schema": {
              "example": 1601490599999,
              "type": "number"
            }
          },
          {
            "description": "The timezone in which the free slots are returned",
            "in": "query",
            "name": "timezone",
            "required": false,
            "schema": {
              "example": "America/Chihuahua",
              "type": "string"
            }
          },
          {
            "description": "The user for whom the free slots are returned",
            "in": "query",
            "name": "userId",
            "required": false,
            "schema": {
              "example": "082goXVW3lIExEQPOnd3",
              "type": "string"
            }
          },
          {
            "description": "The users for whom the free slots are returned",
            "in": "query",
            "name": "userIds",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": {
                    "$ref": "#/components/schemas/SlotsSchema"
                  },
                  "example": {
                    "2024-10-28": {
                      "slots": [
                        "2024-10-28T10:00:00-05:00",
                        "2024-10-28T11:00:00-05:00"
                      ]
                    },
                    "2024-10-29": {
                      "slots": [
                        "2024-10-29T10:00:00-05:00",
                        "2024-10-29T14:30:00-05:00"
                      ]
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Availability map keyed by date (YYYY-MM-DD)"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars.readonly"
            ]
          }
        ],
        "summary": "Get Free Slots",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-slots"
      }
    },
    "/calendars/{calendarId}/notifications": {
      "get": {
        "description": "Get calendar notifications based on query",
        "operationId": "get-event-notification",
        "parameters": [
          {
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "isActive",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "deleted",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Number of records to return",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "type": "number"
            }
          },
          {
            "description": "Number of records to skip",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/CalendarNotificationResponseDTO"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get notifications",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "get-event-notification"
      },
      "post": {
        "description": "Create Calendar notifications, either one or multiple. All notification settings must be for single calendar only",
        "operationId": "create-event-notification",
        "parameters": [
          {
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "items": {
                  "$ref": "#/components/schemas/CreateCalendarNotificationDTO"
                },
                "type": "array"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/CalendarNotificationResponseDTO"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Create notification",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "create-event-notification"
      }
    },
    "/calendars/{calendarId}/notifications/{notificationId}": {
      "delete": {
        "description": "Delete notification",
        "operationId": "delete-event-notification",
        "parameters": [
          {
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "notificationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarNotificationDeleteResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Delete Notification",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "delete-event-notification"
      },
      "get": {
        "description": "Find Event notification by notificationId",
        "operationId": "find-event-notification",
        "parameters": [
          {
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "notificationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarNotificationResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.readonly"
            ]
          }
        ],
        "summary": "Get notification",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "find-event-notification"
      },
      "put": {
        "description": "Update Event notification by id",
        "operationId": "update-event-notification",
        "parameters": [
          {
            "in": "path",
            "name": "calendarId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "notificationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCalendarNotificationsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalendarNotificationDeleteResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "calendars/events.write"
            ]
          }
        ],
        "summary": "Update notification",
        "tags": [
          "calendars"
        ],
        "x-ghl-operation-id": "update-event-notification"
      }
    },
    "/campaigns/": {
      "get": {
        "description": "Get Campaigns",
        "operationId": "get-campaigns",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "draft",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CampaignsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "campaigns.readonly"
            ]
          }
        ],
        "summary": "Get Campaigns",
        "tags": [
          "campaigns"
        ],
        "x-ghl-operation-id": "get-campaigns"
      }
    },
    "/chat-widget/": {
      "post": {
        "description": "Creates a new chat widget for the given sub-account.",
        "operationId": "createChatWidget",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "examples": {
                "basicCreate": {
                  "summary": "Create a chat widget (minimum required fields)",
                  "value": {
                    "chatType": "emailChat",
                    "locationId": "oHJiAh0wDG3BzmzACVD6",
                    "name": "Chat Widget 1",
                    "version": 2
                  }
                }
              },
              "schema": {
                "$ref": "#/components/schemas/CreateWidgetDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "chat-widget.write"
            ]
          }
        ],
        "summary": "Create Chat Widget",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "createChatWidget"
      }
    },
    "/chat-widget/clone": {
      "post": {
        "description": "Creates a copy of an existing chat widget in the same sub-account.",
        "operationId": "cloneChatWidget",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "example": {
                "chatWidgetId": "ve9EPM428h8vShlRWsss",
                "locationId": "oHJiAh0wDG3BzmzACVD6"
              },
              "schema": {
                "$ref": "#/components/schemas/CloneChatWidgetDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonNotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "chat-widget.write"
            ]
          }
        ],
        "summary": "Clone Chat Widget",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "cloneChatWidget"
      }
    },
    "/chat-widget/data/{locationId}/{id}": {
      "get": {
        "description": "Returns a single chat widget by ID.",
        "operationId": "getChatWidget",
        "parameters": [
          {
            "description": "The chat widget ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          },
          {
            "description": "The location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonNotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "chat-widget.readonly"
            ]
          }
        ],
        "summary": "Get Chat Widget",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "getChatWidget"
      },
      "patch": {
        "description": "Partial update of a chat widget resource.",
        "operationId": "patchChatWidget",
        "parameters": [
          {
            "description": "The chat widget ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          },
          {
            "description": "The location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "example": {
                "settings": {
                  "chatType": "emailChat"
                }
              },
              "schema": {
                "$ref": "#/components/schemas/UpdateWidgetDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonNotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "chat-widget.write"
            ]
          }
        ],
        "summary": "Patch Chat Widget",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "patchChatWidget"
      },
      "put": {
        "description": "Full update of a chat widget resource.",
        "operationId": "updateChatWidget",
        "parameters": [
          {
            "description": "The chat widget ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          },
          {
            "description": "The location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "example": {
                "name": "Renamed Chat Widget"
              },
              "schema": {
                "$ref": "#/components/schemas/UpdateWidgetDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonNotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "chat-widget.write"
            ]
          }
        ],
        "summary": "Update Chat Widget",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "updateChatWidget"
      }
    },
    "/chat-widget/list": {
      "get": {
        "description": "Returns chat widgets for the sub-account with pagination and optional filters.",
        "operationId": "listChatWidget",
        "parameters": [
          {
            "description": "The location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          },
          {
            "description": "Offset",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "description": "Limit",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": 0,
              "type": "string"
            }
          },
          {
            "description": "The type of chat widget. Supports normal ChatType values, plus the virtual umbrella \"webChat\" (maps to facebookChat/emailChat/instagramChat/waChat).",
            "in": "query",
            "name": "chatType",
            "required": false,
            "schema": {
              "enum": [
                "liveChat",
                "waChat",
                "emailChat",
                "allInOneChat",
                "voiceAiChat",
                "facebookChat",
                "instagramChat",
                "webChat"
              ],
              "example": "emailChat",
              "type": "string"
            }
          },
          {
            "description": "The type of chat widget",
            "in": "query",
            "name": "excludeChatType",
            "required": false,
            "schema": {
              "enum": [
                "liveChat",
                "waChat",
                "emailChat",
                "allInOneChat",
                "voiceAiChat",
                "facebookChat",
                "instagramChat"
              ],
              "example": "voiceAiChat",
              "type": "string"
            }
          },
          {
            "description": "The voice AI agent ID",
            "in": "query",
            "name": "voiceAiAgentId",
            "required": false,
            "schema": {
              "example": "66597c9a41106ba6eb4eac3c",
              "type": "string"
            }
          },
          {
            "description": "All-in-one chat type to filter by. Only applies when chatType is \"allInOneChat\". Supports normal ChatType values plus the virtual umbrella \"webChat\" (maps to facebookChat/emailChat/instagramChat/waChat).",
            "in": "query",
            "name": "allInOneChatTypes",
            "required": false,
            "schema": {
              "enum": [
                "liveChat",
                "waChat",
                "emailChat",
                "allInOneChat",
                "voiceAiChat",
                "facebookChat",
                "instagramChat",
                "webChat"
              ],
              "example": "emailChat",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonNotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "chat-widget.readonly"
            ]
          }
        ],
        "summary": "List Chat Widgets",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "listChatWidget"
      }
    },
    "/chat-widget/public/config/{id}": {
      "get": {
        "description": "Returns widget configuration by ID.",
        "operationId": "getWidget",
        "parameters": [
          {
            "description": "The chat widget ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "version",
            "required": false,
            "schema": {
              "default": "2",
              "example": "3",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonNotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get Widget Config",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "getWidget"
      }
    },
    "/chat-widget/{locationId}/{id}": {
      "delete": {
        "description": "Soft-deletes a chat widget. If it was the default, another widget may be promoted.",
        "operationId": "chat-widget.delete",
        "parameters": [
          {
            "description": "The chat widget ID",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          },
          {
            "description": "The location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRWsss",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonNotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "chat-widget.write"
            ]
          }
        ],
        "summary": "Delete Chat Widget",
        "tags": [
          "chat-widget"
        ],
        "x-ghl-operation-id": "delete"
      }
    },
    "/companies/{companyId}": {
      "get": {
        "description": "Get Comapny",
        "operationId": "get-company",
        "parameters": [
          {
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCompanyByIdSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "companies.readonly"
            ]
          }
        ],
        "summary": "Get Company",
        "tags": [
          "companies"
        ],
        "x-ghl-operation-id": "get-company"
      }
    },
    "/contacts/": {
      "post": {
        "description": "Create a new contact",
        "operationId": "create-contact",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateContactDtoV3"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateContactsSuccessfulResponseDtoV3"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Create Contact",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "create-contact",
        "x-version-added": "v3"
      }
    },
    "/contacts/bulk/business": {
      "post": {
        "description": "Add/Remove Contacts From Business . Passing a `null` businessId will remove the businessId from the contacts",
        "operationId": "add-remove-contact-from-business",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContactsBusinessUpdate"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsBulkUpateResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Add/Remove Contacts From Business",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "add-remove-contact-from-business"
      }
    },
    "/contacts/bulk/tags/update/{type}": {
      "post": {
        "description": "Allows you to update tags to multiple contacts at once, you can add or remove tags from the contacts",
        "operationId": "contacts.bulk-update-tags",
        "parameters": [
          {
            "in": "path",
            "name": "type",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTagsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTagsResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Update Contacts Tags",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "create-association"
      }
    },
    "/contacts/business/{businessId}": {
      "get": {
        "description": "Get Contacts By BusinessId",
        "operationId": "get-contacts-by-businessId",
        "parameters": [
          {
            "description": "Business Id",
            "in": "path",
            "name": "businessId",
            "required": true,
            "schema": {
              "example": "641c094001436dbc2081e642",
              "type": "string"
            }
          },
          {
            "description": "Maximum number of records per page (up to 100, default 25)",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": "10",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "5DP4iH6HLkQsiKESj6rh",
              "type": "string"
            }
          },
          {
            "description": "Number of records to skip",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "example": "10",
              "type": "string"
            }
          },
          {
            "description": "Search query (name, email, phone)",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "John",
              "type": "string"
            }
          },
          {
            "description": "Cursor for pagination (comma-separated name,id pair)",
            "in": "query",
            "name": "startAfter",
            "oneOf": [
              {
                "example": "eleanor sakai,xurJiljRhcxpwRYXbxUU",
                "type": "string"
              },
              {
                "example": [
                  "eleanor sakai",
                  "xurJiljRhcxpwRYXbxUU"
                ],
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ],
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsSearchSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get Contacts By BusinessId",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-contacts-by-businessId"
      }
    },
    "/contacts/search": {
      "post": {
        "description": "Search contacts based on combinations of advanced filters. Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-158396/6e629989abe7fad",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-158396/6e629989abe7fad"
        },
        "operationId": "search-contacts-advanced",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchBodyV2DTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Search Contacts",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "search-contacts-advanced"
      }
    },
    "/contacts/search/duplicate": {
      "get": {
        "description": "Get Duplicate Contact.<br/><br/>If `Allow Duplicate Contact` is disabled under Settings, the global unique identifier will be used for searching the contact. If the setting is enabled, first priority for search is `email` and the second priority will be `phone`.",
        "operationId": "get-duplicate-contact",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Phone Number — URL-encoded. E.g. +1423164516 → %2B1423164516",
            "in": "query",
            "name": "number",
            "required": false,
            "schema": {
              "example": "%2B1423164516",
              "type": "string"
            }
          },
          {
            "description": "Email — URL-encoded. E.g. test+abc@example.com → test%2Babc%40gmail.com",
            "in": "query",
            "name": "email",
            "required": false,
            "schema": {
              "example": "test%2Babc%40gmail.com",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get Duplicate Contact",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-duplicate-contact"
      }
    },
    "/contacts/upsert": {
      "post": {
        "description": "The Upsert API will adhere to the configuration defined under the \"Allow Duplicate Contact\" setting at the Location level. If the setting is configured to check both Email and Phone, the API will attempt to identify an existing contact based on the priority sequence specified in the setting, and will create or update the contact accordingly.<br/><br/>If two separate contacts already exist—one with the same email and another with the same phone—and an upsert request includes both the email and phone, the API will update the contact that matches the first field in the configured sequence, and ignore the second field to prevent duplication.",
        "operationId": "upsert-contact",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertContactDtoV3"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpsertContactsSuccessfulResponseDtoV3"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Upsert Contact",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "upsert-contact",
        "x-version-added": "v3"
      }
    },
    "/contacts/{contactId}": {
      "delete": {
        "description": "Delete Contact",
        "operationId": "delete-contact",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteContactsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Delete Contact",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "delete-contact"
      },
      "get": {
        "description": "Retrieves a contact by its unique identifier.",
        "operationId": "get-contact",
        "parameters": [
          {
            "description": "Unique identifier of the contact",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsByIdSuccessfulResponseDtoV3"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get Contact",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-contact",
        "x-version-added": "v3"
      },
      "put": {
        "description": "Update a contact using contactId",
        "operationId": "update-contact",
        "parameters": [
          {
            "description": "Unique identifier of the contact",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateContactDtoV3"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateContactsSuccessfulResponseDtoV3"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Update Contact",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "update-contact",
        "x-version-added": "v3"
      }
    },
    "/contacts/{contactId}/appointments": {
      "get": {
        "description": "Get Appointments for Contact",
        "operationId": "get-appointments-for-contact",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetEventsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get Appointments for Contact",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-appointments-for-contact"
      }
    },
    "/contacts/{contactId}/campaigns/remove-all": {
      "delete": {
        "description": "Removes the contact from every campaign it is enrolled in.",
        "operationId": "remove-contact-from-every-campaign",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteCantactsCampaignsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Remove Contact From Every Campaign",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "remove-contact-from-every-campaign",
        "x-version-added": "v3"
      }
    },
    "/contacts/{contactId}/campaigns/{campaignId}": {
      "delete": {
        "description": "Remove Contact From Campaign",
        "operationId": "remove-contact-from-campaign",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign Id",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "Y5AMhDEE4L6EuVmmDTKZ",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteCantactsCampaignsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Remove Contact From Campaign",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "remove-contact-from-campaign"
      },
      "post": {
        "description": "Add contact to Campaign",
        "operationId": "add-contact-to-campaign",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign Id",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "Y5AMhDEE4L6EuVmmDTKZ",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddContactToCampaignDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteCantactsCampaignsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Add Contact to Campaign",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "add-contact-to-campaign"
      }
    },
    "/contacts/{contactId}/followers": {
      "delete": {
        "description": "Remove Followers",
        "operationId": "remove-followers-contact",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContactsFollowersDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsDeleteFollowersSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Remove Followers",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "remove-followers-contact"
      },
      "post": {
        "description": "Add Followers",
        "operationId": "add-followers-contact",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContactsFollowersDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsCreateAddFollowersSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Add Followers",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "add-followers-contact"
      }
    },
    "/contacts/{contactId}/notes": {
      "get": {
        "description": "Get All Notes",
        "operationId": "get-all-notes",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsGetNotesListSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get All Notes",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-all-notes"
      },
      "post": {
        "description": "Create Note",
        "operationId": "create-note",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContactsNotesDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsGetCreateUpdateNoteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Create Note",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "create-note"
      }
    },
    "/contacts/{contactId}/notes/{id}": {
      "delete": {
        "description": "Delete Note",
        "operationId": "delete-note",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Note Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsDeleteNoteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Delete Note",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "delete-note"
      },
      "get": {
        "description": "Get Note",
        "operationId": "get-note",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Note Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsGetCreateUpdateNoteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get Note",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-note"
      },
      "put": {
        "description": "Update Note",
        "operationId": "update-note",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Note Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNoteDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsGetCreateUpdateNoteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Update Note",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "update-note"
      }
    },
    "/contacts/{contactId}/tags": {
      "delete": {
        "description": "Remove Tags",
        "operationId": "remove-tags",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TagsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDeleteTagSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Remove Tags",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "remove-tags"
      },
      "post": {
        "description": "Add Tags",
        "operationId": "add-tags",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TagsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAddTagSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Add Tags",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "add-tags"
      }
    },
    "/contacts/{contactId}/tasks": {
      "get": {
        "description": "Get all Tasks",
        "operationId": "get-all-tasks",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TasksListSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get all Tasks",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-all-tasks"
      },
      "post": {
        "description": "Create Task",
        "operationId": "create-task",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTaskParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskByIsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Create Task",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "create-task"
      }
    },
    "/contacts/{contactId}/tasks/{taskId}": {
      "delete": {
        "description": "Delete Task",
        "operationId": "delete-task",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Task Id",
            "in": "path",
            "name": "taskId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteTaskSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Delete Task",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "delete-task"
      },
      "get": {
        "description": "Get Task",
        "operationId": "get-task",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Task Id",
            "in": "path",
            "name": "taskId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskByIsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.readonly"
            ]
          }
        ],
        "summary": "Get Task",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "get-task"
      },
      "put": {
        "description": "Update Task",
        "operationId": "update-task",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Task Id",
            "in": "path",
            "name": "taskId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTaskBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskByIsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Update Task",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "update-task"
      }
    },
    "/contacts/{contactId}/tasks/{taskId}/completed": {
      "put": {
        "description": "Update Task Completed",
        "operationId": "update-task-completed",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Task Id",
            "in": "path",
            "name": "taskId",
            "required": true,
            "schema": {
              "example": "ocQHyuzHvysMo5N5VsXc",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTaskStatusParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskByIsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Update Task Completed",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "update-task-completed"
      }
    },
    "/contacts/{contactId}/workflow/{workflowId}": {
      "delete": {
        "description": "Delete Contact from Workflow",
        "operationId": "delete-contact-from-workflow",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Workflow Id",
            "in": "path",
            "name": "workflowId",
            "required": true,
            "schema": {
              "example": "f5a2ab74-4c1c-4ede-9c43-2ef1e01e0b38",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWorkflowDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsWorkflowSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Delete Contact from Workflow",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "delete-contact-from-workflow"
      },
      "post": {
        "description": "Add Contact to Workflow",
        "operationId": "add-contact-to-workflow",
        "parameters": [
          {
            "description": "Contact Id",
            "in": "path",
            "name": "contactId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Workflow Id",
            "in": "path",
            "name": "workflowId",
            "required": true,
            "schema": {
              "example": "f5a2ab74-4c1c-4ede-9c43-2ef1e01e0b38",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWorkflowDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactsWorkflowSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "contacts.write"
            ]
          }
        ],
        "summary": "Add Contact to Workflow",
        "tags": [
          "contacts"
        ],
        "x-ghl-operation-id": "add-contact-to-workflow"
      }
    },
    "/conversation-ai/agents": {
      "post": {
        "description": "Creates a new AI agent for the location. The agent will be created with the specified configuration including name, role, actions, and behavior settings.",
        "operationId": "conversation-ai.create-agent",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEmployeeDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.write"
            ]
          }
        ],
        "summary": "Create an Agent",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "create-agent"
      }
    },
    "/conversation-ai/agents/search": {
      "get": {
        "description": "Searches for AI agents based on various criteria including name, status, and configuration. Supports advanced filtering and full-text search capabilities.",
        "operationId": "search-agent",
        "parameters": [
          {
            "description": "Start after is the agent id to start after, Serving as skip, send empty when first page",
            "in": "query",
            "name": "startAfter",
            "required": false,
            "schema": {
              "example": "Exampleee123",
              "type": "string"
            }
          },
          {
            "description": "Records per page",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "query to search on agent name, must be provided in lowercase",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "booking",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchEmployeeResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.readonly"
            ]
          }
        ],
        "summary": "Search Agents",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "search-agent"
      }
    },
    "/conversation-ai/agents/{agentId}": {
      "delete": {
        "description": "Deletes an AI agent permanently. This action cannot be undone. All associated configurations and conversation history will be removed.",
        "operationId": "conversation-ai.delete-agent",
        "parameters": [
          {
            "description": "Conversations AI agent id",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "example": "EmployeeId123",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteEmployeeResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.write"
            ]
          }
        ],
        "summary": "Delete Agent",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "delete-agent"
      },
      "get": {
        "description": "Retrieves a specific AI agent by its ID. Returns the complete agent configuration including name, status, actions, and settings.",
        "operationId": "conversation-ai.get-agent",
        "parameters": [
          {
            "description": "Conversations AI agent id",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "example": "EmployeeId123",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.readonly"
            ]
          }
        ],
        "summary": "Get Agent",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "get-agent"
      },
      "put": {
        "description": "Updates an existing AI agent's configuration. All fields in the agent configuration can be updated including name, status, actions, and behavior settings.",
        "operationId": "update-agent",
        "parameters": [
          {
            "description": "Conversations AI agent id",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateEmployeeDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmployeeResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.write"
            ]
          }
        ],
        "summary": "Update Agent",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "update-agent"
      }
    },
    "/conversation-ai/agents/{agentId}/actions": {
      "post": {
        "description": "Creates and attach a new action for an AI agent. Actions define specific tasks or behaviors that the agent can perform, such as booking appointments, sending follow-ups, or collecting information.",
        "operationId": "conversation-ai.create-action",
        "parameters": [
          {
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateActionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationAicreateActionResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.write"
            ]
          }
        ],
        "summary": "Attach Action to Agent",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "create-action"
      }
    },
    "/conversation-ai/agents/{agentId}/actions/list": {
      "get": {
        "description": "List for actions for an agent",
        "operationId": "list-actions",
        "parameters": [
          {
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/fetchActionsForEmployeeResponseDTO"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.readonly"
            ]
          }
        ],
        "summary": "List Actions for an Agent",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "list-actions"
      }
    },
    "/conversation-ai/agents/{agentId}/actions/{actionId}": {
      "delete": {
        "description": "Permanently deletes an action. This will remove the action from all associated agents and cannot be undone.",
        "operationId": "conversation-ai.delete-action",
        "parameters": [
          {
            "description": "The unique identifier of the action ID Attached to the agent",
            "in": "path",
            "name": "actionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/deleteActionResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.write"
            ]
          }
        ],
        "summary": "Remove Action from Agent",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "delete-action"
      },
      "get": {
        "description": "Retrieves detailed information about a specific action using its unique identifier. Returns the action configuration, associated agents, and performance metrics.",
        "operationId": "get-action-by-id",
        "parameters": [
          {
            "description": "The unique identifier of the action ID Attached to the agent",
            "in": "path",
            "name": "actionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/fetchActionDetailsResponseDTO"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.readonly"
            ]
          }
        ],
        "summary": "Get Action by ID",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "get-action-by-id"
      },
      "put": {
        "description": "Updates an existing action's configuration. This includes modifying the action name, description, trigger conditions, and behavior settings.",
        "operationId": "conversation-ai.update-action",
        "parameters": [
          {
            "description": "The unique identifier of the action ID Attached to the agent",
            "in": "path",
            "name": "actionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateActionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationAiupdateActionResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.write"
            ]
          }
        ],
        "summary": "Update Action",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "update-action"
      }
    },
    "/conversation-ai/agents/{agentId}/followup-settings": {
      "patch": {
        "description": "Update the followup settings for an action",
        "operationId": "update-followup-settings",
        "parameters": [
          {
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFollowupSettingsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversationAiupdateActionResponseDTO"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.write"
            ]
          }
        ],
        "summary": "Update Followup Settings",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "update-followup-settings"
      }
    },
    "/conversation-ai/generations": {
      "get": {
        "description": "Retrieves detailed information about AI responses including the System Prompt, Conversation history, Knowledge base, website, FAQ chunks, and Rich Text chunks.",
        "operationId": "get-generation-details",
        "parameters": [
          {
            "description": "Message Id",
            "in": "query",
            "name": "messageId",
            "required": true,
            "schema": {
              "example": "messageId123",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "source",
            "required": true,
            "schema": {
              "enum": [
                "conversation",
                "workflow"
              ],
              "example": "conversation",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FetchAIResponseDetailsResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "conversation-ai.readonly"
            ]
          }
        ],
        "summary": "Get the generation details",
        "tags": [
          "conversation-ai"
        ],
        "x-ghl-operation-id": "get-generation-details"
      }
    },
    "/conversations/": {
      "post": {
        "description": "Creates a new conversation with the data provided",
        "operationId": "create-conversation",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateConversationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateConversationSuccessResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations.write"
            ]
          }
        ],
        "summary": "Create Conversation",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "create-conversation"
      }
    },
    "/conversations/locations/{locationId}/messages/{messageId}/transcription": {
      "get": {
        "description": "Get the recording transcription for a message by passing the message id",
        "operationId": "get-message-transcription",
        "parameters": [
          {
            "description": "Location ID as string",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Message ID as string",
            "in": "path",
            "name": "messageId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMessageTranscriptionResponseDto"
                }
              }
            },
            "description": "Gives the attached recording transcription to the message"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.readonly"
            ]
          },
          {
            "Location-Access": [
              "conversations/message.readonly"
            ]
          }
        ],
        "summary": "Get transcription by Message ID",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "get-message-transcription"
      }
    },
    "/conversations/locations/{locationId}/messages/{messageId}/transcription/download": {
      "get": {
        "description": "Download the recording transcription for a message by passing the message id",
        "operationId": "download-message-transcription",
        "parameters": [
          {
            "description": "Location ID as string",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Message ID as string",
            "in": "path",
            "name": "messageId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Downloads the attached transcription of the message",
            "headers": {
              "Content-Disposition": {
                "description": "Attachment; filename=\"transcription.txt\""
              },
              "Content-Type": {
                "description": "text/plain"
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.readonly"
            ]
          },
          {
            "Location-Access": [
              "conversations/message.readonly"
            ]
          }
        ],
        "summary": "Download transcription by Message ID",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "download-message-transcription"
      }
    },
    "/conversations/messages": {
      "post": {
        "description": "Post the necessary fields for the API to send a new message.",
        "operationId": "send-a-new-message",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendMessageResponseDto"
                }
              }
            },
            "description": "Created the message"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Send a new message",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "send-a-new-message"
      }
    },
    "/conversations/messages/email/{emailMessageId}/schedule": {
      "delete": {
        "description": "Post the messageId for the API to delete a scheduled email message. <br />",
        "operationId": "cancel-scheduled-email-message",
        "parameters": [
          {
            "description": "Email Message Id",
            "in": "path",
            "name": "emailMessageId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CancelScheduledResponseDto"
                }
              }
            },
            "description": "The scheduled email message was cancelled successfully"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Cancel a scheduled email message.",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "cancel-scheduled-email-message"
      }
    },
    "/conversations/messages/email/{id}": {
      "get": {
        "description": "Get email by Id",
        "operationId": "get-email-by-id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetEmailMessageResponseDto"
                }
              }
            },
            "description": "Email object for the id given."
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.readonly"
            ]
          }
        ],
        "summary": "Get email by Id",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "get-email-by-id"
      }
    },
    "/conversations/messages/email/{id}/status": {
      "put": {
        "description": "Update delivery events, per-recipient statuses, and the overall message status for an email sent via a custom conversation provider.\n\n### Authorization\n- Requires the `conversations/message.write` OAuth scope.\n- The calling OAuth app must own the conversation provider that originally sent the email.\n- Attempts to update emails sent via LC Email or Mailgun will return `403 Forbidden`.\n\n### Updatable Fields\n**`status`** is required on every request. You may also include **`events`** and/or **`recipients`**.\n\n**`events`** — Aggregate delivery event counters (integers). Counters are merged into the existing values (not replaced). Setting a counter to `0` is treated as no-op and will **not** reset the stored value.\n\n**`recipients`** — Per-recipient delivery statuses. Each entry maps a recipient email address to a `MessageStatus` value. Use `failReason` to capture bounce or rejection details when the status is `failed`.\n\n**`status`** — The overall message status. Accepts any `MessageStatus` enum value.\n\n### Event Inference\nThe API automatically infers related events to maintain data consistency:\n- **`clicked`, `complained`, `unsubscribed`, or `replied`** → implies `opened` (set to 1 if not already provided and open tracking is enabled) and `delivered` (set to 1).\n- **`opened`** → implies `delivered` (set to 1 if not provided).\n- **`delivered`, `permanent_fail`, or `temporary_fail`** → implies `accepted` (set to 1 if not provided).\n\n### Timestamps\nThe API automatically records server-side timestamps on first occurrence for `delivered`, `opened`, and `clicked` events. Subsequent updates to these counters do not overwrite the original timestamp.",
        "operationId": "update-email-message-status",
        "parameters": [
          {
            "description": "Email message id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateEmailMessageStatusDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateEmailMessageStatusResponseDto"
                }
              }
            },
            "description": "Email message status updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonForbiddenDTO"
                }
              }
            },
            "description": "Forbidden - status updates are only supported for custom conversation provider emails"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Update email message status",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "update-email-message-status"
      }
    },
    "/conversations/messages/export": {
      "get": {
        "description": "Export messages for a specific location with cursor-based pagination support. Response includes messageType (string), source, and subType fields. The channel parameter is optional - if not provided, all non-email message types will be returned including activity messages (opportunity updates, appointments, etc.).",
        "operationId": "export-messages-by-location",
        "parameters": [
          {
            "description": "Location ID to filter messages by",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Number of messages to return per page",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "example": 100,
              "maximum": 500,
              "minimum": 10,
              "type": "number"
            }
          },
          {
            "description": "Cursor for pagination. Pass the nextCursor from previous response to get next page.",
            "in": "query",
            "name": "cursor",
            "required": false,
            "schema": {
              "example": "a748514c-f49e-4fa8-9954-b53afc78d81d",
              "type": "string"
            }
          },
          {
            "description": "Field to sort by",
            "in": "query",
            "name": "sortBy",
            "required": false,
            "schema": {
              "default": "createdAt",
              "enum": [
                "createdAt",
                "updatedAt"
              ],
              "example": "createdAt",
              "type": "string"
            }
          },
          {
            "description": "Sort order",
            "in": "query",
            "name": "sortOrder",
            "required": false,
            "schema": {
              "default": "desc",
              "enum": [
                "asc",
                "desc"
              ],
              "example": "desc",
              "type": "string"
            }
          },
          {
            "description": "Filter messages by conversation ID",
            "in": "query",
            "name": "conversationId",
            "required": false,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Filter messages by contact ID",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Filter by message channel. Optional - when not provided, all non-email message types will be returned including activity messages (opportunity updates, appointments, etc.). To fetch email messages, you must explicitly set channel=Email.",
            "in": "query",
            "name": "channel",
            "required": false,
            "schema": {
              "enum": [
                "Call",
                "SMS",
                "Email",
                "WhatsApp",
                "Instagram",
                "Facebook"
              ],
              "example": "SMS",
              "type": "string"
            }
          },
          {
            "description": "Start date to filter messages by",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": "2024-03-27T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "description": "End date to filter messages by",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": "2024-03-28T00:00:00.000Z",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExportMessagesResponseDto"
                }
              }
            },
            "description": "List of messages for the location with pagination details."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.readonly"
            ]
          }
        ],
        "summary": "Export messages by location ID",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "export-messages-by-location"
      }
    },
    "/conversations/messages/inbound": {
      "post": {
        "description": "Post the necessary fields for the API to add a new inbound message. <br />",
        "operationId": "add-an-inbound-message",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProcessMessageBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProcessMessageResponseDto"
                }
              }
            },
            "description": "Created the message"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Add an inbound message",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "add-an-inbound-message"
      }
    },
    "/conversations/messages/outbound": {
      "post": {
        "description": "Post the necessary fields for the API to add a new outbound call.",
        "operationId": "add-an-outbound-message",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProcessOutboundMessageBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProcessMessageResponseDto"
                }
              }
            },
            "description": "Created the message"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Add an external outbound call",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "add-an-outbound-message"
      }
    },
    "/conversations/messages/upload": {
      "post": {
        "description": "Post the necessary fields for the API to upload files. The files need to be a buffer with the key \"fileAttachment\". <br /><br /> The allowed file types are: <br/> <ul><li>JPG</li><li>JPEG</li><li>PNG</li><li>MP4</li><li>MPEG</li><li>ZIP</li><li>RAR</li><li>PDF</li><li>DOC</li><li>DOCX</li><li>TXT</li><li>MP3</li><li>WAV</li></ul> <br /><br /> The API will return an object with the URLs",
        "operationId": "upload-file-attachments",
        "parameters": [],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/UploadFilesDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadFilesResponseDto"
                }
              }
            },
            "description": "Uploaded the file successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "413": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadFilesErrorResponseDto"
                }
              }
            },
            "description": "Payload Too Large"
          },
          "415": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UploadFilesErrorResponseDto"
                }
              }
            },
            "description": "Unsupported Media Type"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Upload file attachments",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "upload-file-attachments"
      }
    },
    "/conversations/messages/{id}": {
      "get": {
        "description": "Get message by message id.",
        "operationId": "get-message",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMessageResponseDto"
                }
              }
            },
            "description": "Message object for the id given."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.readonly"
            ]
          }
        ],
        "summary": "Get message by message id",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "get-message"
      }
    },
    "/conversations/messages/{messageId}/attachments": {
      "put": {
        "description": "Set attachments on an existing message (replaces existing). Maximum 5 URLs. Supported for TYPE_CUSTOM_CALL (34) and TYPE_CALL (1) with subType EXTERNAL_CALL.",
        "operationId": "add-message-attachments",
        "parameters": [
          {
            "description": "Message Id",
            "in": "path",
            "name": "messageId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMessageAttachmentsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successfully set message attachments"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "Message type does not support attachment updates"
          },
          "404": {
            "description": "Message not found"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Add message attachments",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "add-message-attachments"
      }
    },
    "/conversations/messages/{messageId}/locations/{locationId}/recording": {
      "get": {
        "description": "Get the recording for a message by passing the message id",
        "operationId": "get-message-recording",
        "parameters": [
          {
            "description": "Location ID as string",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Message ID as string",
            "in": "path",
            "name": "messageId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Gives the attached recording to the message",
            "headers": {
              "Content-Disposition": {
                "description": "Attachment; filename=audio.wav"
              },
              "Content-Type": {
                "description": "audio/x-wav"
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.readonly"
            ]
          },
          {
            "Location-Access": [
              "conversations/message.readonly"
            ]
          }
        ],
        "summary": "Get Recording by Message ID",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "get-message-recording"
      }
    },
    "/conversations/messages/{messageId}/schedule": {
      "delete": {
        "description": "Post the messageId for the API to delete a scheduled message. <br />",
        "operationId": "cancel-scheduled-message",
        "parameters": [
          {
            "description": "Message Id",
            "in": "path",
            "name": "messageId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CancelScheduledResponseDto"
                }
              }
            },
            "description": "The scheduled message was cancelled successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Cancel a scheduled message.",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "cancel-scheduled-message"
      }
    },
    "/conversations/messages/{messageId}/status": {
      "put": {
        "description": "Post the necessary fields for the API to update message status.",
        "operationId": "update-message-status",
        "parameters": [
          {
            "description": "Message Id",
            "in": "path",
            "name": "messageId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMessageStatusDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendMessageResponseDto"
                }
              }
            },
            "description": "Created the message"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.write"
            ]
          }
        ],
        "summary": "Update message status",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "update-message-status"
      }
    },
    "/conversations/providers/live-chat/typing": {
      "post": {
        "description": "Agent/AI-Bot will call this when they are typing a message in live chat message",
        "operationId": "live-chat-agent-typing",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserTypingBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateLiveChatMessageFeedbackResponse"
                }
              }
            },
            "description": "Show typing indicator for live chat"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "conversations/livechat.write"
            ]
          }
        ],
        "summary": "Agent/Ai-Bot is typing a message indicator for live chat",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "live-chat-agent-typing"
      }
    },
    "/conversations/search": {
      "get": {
        "description": "Returns a list of all conversations matching the search criteria along with the sort and filter options selected.",
        "operationId": "search-conversation",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "string"
            }
          },
          {
            "description": "Contact Id",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "9VEmS0si86GW6gXWU89b",
              "type": "string"
            }
          },
          {
            "description": "User IDs that conversations are assigned to. Multiple IDs can be provided as comma-separated values. Use \"unassigned\" to fetch conversations not assigned to any user.",
            "in": "query",
            "name": "assignedTo",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK,fGiae4CHkzoskh8thsik",
              "type": "string"
            }
          },
          {
            "description": "User IDs of followers to filter conversations by. Multiple IDs can be provided as comma-separated values.",
            "in": "query",
            "name": "followers",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK,fGiae4CHkzoskh8thsik",
              "type": "string"
            }
          },
          {
            "description": "User Id of the mention. Multiple values are comma separated.",
            "in": "query",
            "name": "mentions",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK,fGiae4CHkzoskh8thsik",
              "type": "string"
            }
          },
          {
            "description": "Search paramater as a string",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "Search string",
              "type": "string"
            }
          },
          {
            "description": "Sort paramater - asc or desc",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "example": "asc",
              "type": "string"
            }
          },
          {
            "anyOf": [
              {
                "$ref": "#/components/schemas/StartAfterNumberSchema"
              },
              {
                "$ref": "#/components/schemas/StartAfterArrayNumberSchema"
              }
            ],
            "description": "Search to begin after the specified date - should contain the sort value of the last document",
            "in": "query",
            "name": "startAfterDate",
            "required": false,
            "schema": {
              "example": 1600854
            }
          },
          {
            "description": "Id of the conversation",
            "in": "query",
            "name": "id",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "string"
            }
          },
          {
            "description": "Limit of conversations - Default is 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "Type of the last message in the conversation as a string",
            "in": "query",
            "name": "lastMessageType",
            "required": false,
            "schema": {
              "enum": [
                "TYPE_CALL",
                "TYPE_SMS",
                "TYPE_RCS",
                "TYPE_EMAIL",
                "TYPE_SMS_REVIEW_REQUEST",
                "TYPE_WEBCHAT",
                "TYPE_SMS_NO_SHOW_REQUEST",
                "TYPE_CAMPAIGN_SMS",
                "TYPE_CAMPAIGN_CALL",
                "TYPE_CAMPAIGN_EMAIL",
                "TYPE_CAMPAIGN_VOICEMAIL",
                "TYPE_FACEBOOK",
                "TYPE_CAMPAIGN_FACEBOOK",
                "TYPE_CAMPAIGN_MANUAL_CALL",
                "TYPE_CAMPAIGN_MANUAL_SMS",
                "TYPE_GMB",
                "TYPE_CAMPAIGN_GMB",
                "TYPE_REVIEW",
                "TYPE_INSTAGRAM",
                "TYPE_WHATSAPP",
                "TYPE_CUSTOM_SMS",
                "TYPE_CUSTOM_EMAIL",
                "TYPE_CUSTOM_PROVIDER_SMS",
                "TYPE_CUSTOM_PROVIDER_EMAIL",
                "TYPE_IVR_CALL",
                "TYPE_ACTIVITY_CONTACT",
                "TYPE_ACTIVITY_INVOICE",
                "TYPE_ACTIVITY_PAYMENT",
                "TYPE_ACTIVITY_OPPORTUNITY",
                "TYPE_LIVE_CHAT",
                "TYPE_LIVE_CHAT_INFO_MESSAGE",
                "TYPE_ACTIVITY_APPOINTMENT",
                "TYPE_FACEBOOK_COMMENT",
                "TYPE_INSTAGRAM_COMMENT",
                "TYPE_CUSTOM_CALL",
                "TYPE_INTERNAL_COMMENT",
                "TYPE_ACTIVITY_EMPLOYEE_ACTION_LOG",
                "TYPE_TIKTOK",
                "TYPE_TIKTOK_COMMENT",
                "TYPE_ACTIVITY_WHATSAPP",
                "TYPE_FORM_SUBMISSION",
                "TYPE_SMS_REACTION"
              ],
              "example": "TYPE_SMS",
              "type": "string"
            }
          },
          {
            "description": "Action of the last outbound message in the conversation as string.",
            "in": "query",
            "name": "lastMessageAction",
            "required": false,
            "schema": {
              "enum": [
                "automated",
                "manual"
              ],
              "example": "manual",
              "type": "string"
            }
          },
          {
            "description": "Direction of the last message in the conversation as string.",
            "in": "query",
            "name": "lastMessageDirection",
            "required": false,
            "schema": {
              "enum": [
                "inbound",
                "outbound"
              ],
              "example": "inbound",
              "type": "string"
            }
          },
          {
            "description": "The status of the conversation to be filtered - all, read, unread, starred ",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "all",
                "read",
                "unread",
                "starred",
                "recents"
              ],
              "example": "all",
              "type": "string"
            }
          },
          {
            "description": "The sorting of the conversation to be filtered as - manual messages or all messages",
            "in": "query",
            "name": "sortBy",
            "required": false,
            "schema": {
              "enum": [
                "last_manual_message_date",
                "last_message_date",
                "score_profile",
                "overdue_at",
                "due_at"
              ],
              "example": "last_message_date",
              "type": "string"
            }
          },
          {
            "description": "Id of score profile on which sortBy.ScoreProfile should sort on",
            "in": "query",
            "name": "sortScoreProfile",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "string"
            }
          },
          {
            "description": "Id of score profile on which conversations should get filtered out, works with scoreProfileMin & scoreProfileMax",
            "in": "query",
            "name": "scoreProfile",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "string"
            }
          },
          {
            "description": "Minimum value for score",
            "in": "query",
            "name": "scoreProfileMin",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "number"
            }
          },
          {
            "description": "Maximum value for score",
            "in": "query",
            "name": "scoreProfileMax",
            "required": false,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "number"
            }
          },
          {
            "description": "Start date filter for dateAdded field (Unix timestamp in milliseconds)",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": 1640995200000,
              "type": "number"
            }
          },
          {
            "description": "End date filter for dateAdded field (Unix timestamp in milliseconds)",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": 1672531199000,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendConversationResponseDto"
                }
              }
            },
            "description": "Successfully fetched the conversations"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations.readonly"
            ]
          }
        ],
        "summary": "Search Conversations",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "search-conversation"
      }
    },
    "/conversations/{conversationId}": {
      "delete": {
        "description": "Delete the conversation details based on the conversation ID",
        "operationId": "delete-conversation",
        "parameters": [
          {
            "description": "Conversation ID as string",
            "in": "path",
            "name": "conversationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteConversationSuccessfulResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations.write"
            ]
          }
        ],
        "summary": "Delete Conversation",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "delete-conversation"
      },
      "get": {
        "description": "Get the conversation details based on the conversation ID",
        "operationId": "get-conversation",
        "parameters": [
          {
            "description": "Conversation ID as string",
            "in": "path",
            "name": "conversationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetConversationByIdResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations.readonly"
            ]
          }
        ],
        "summary": "Get Conversation",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "get-conversation"
      },
      "put": {
        "description": "Update the conversation details based on the conversation ID",
        "operationId": "update-conversation",
        "parameters": [
          {
            "description": "Conversation ID as string",
            "in": "path",
            "name": "conversationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateConversationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetConversationSuccessfulResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations.write"
            ]
          }
        ],
        "summary": "Update Conversation",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "update-conversation"
      }
    },
    "/conversations/{conversationId}/messages": {
      "get": {
        "description": "Get messages by conversation id.",
        "operationId": "get-messages",
        "parameters": [
          {
            "description": "Conversation ID as string",
            "in": "path",
            "name": "conversationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Message ID of the last message in the list as a string",
            "in": "query",
            "name": "lastMessageId",
            "required": false,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Number of messages to be fetched from the conversation. Default limit is 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "Types of message to fetched separated with comma",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "enum": [
                "TYPE_CALL",
                "TYPE_SMS",
                "TYPE_RCS",
                "TYPE_EMAIL",
                "TYPE_FACEBOOK",
                "TYPE_GMB",
                "TYPE_INSTAGRAM",
                "TYPE_WHATSAPP",
                "TYPE_ACTIVITY_APPOINTMENT",
                "TYPE_ACTIVITY_CONTACT",
                "TYPE_ACTIVITY_INVOICE",
                "TYPE_ACTIVITY_PAYMENT",
                "TYPE_ACTIVITY_OPPORTUNITY",
                "TYPE_LIVE_CHAT",
                "TYPE_INTERNAL_COMMENTS",
                "TYPE_ACTIVITY_EMPLOYEE_ACTION_LOG",
                "TYPE_TIKTOK",
                "TYPE_ACTIVITY_WHATSAPP",
                "TYPE_FORM_SUBMISSION"
              ],
              "example": "TYPE_SMS,TYPE_CALL",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMessagesByConversationResponseDto"
                }
              }
            },
            "description": "List of messages for the conversation id of the given type."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "conversations/message.readonly"
            ]
          }
        ],
        "summary": "Get messages by conversation id",
        "tags": [
          "conversations"
        ],
        "x-ghl-operation-id": "get-messages"
      }
    },
    "/courses/courses-exporter/public/import": {
      "post": {
        "description": "Import Courses through public channels",
        "operationId": "import-courses",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PublicExporterPayload"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Import Courses",
        "tags": [
          "courses"
        ],
        "x-ghl-operation-id": "import-courses"
      }
    },
    "/custom-fields/": {
      "post": {
        "description": "<div>\n<p> Create Custom Field </p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "custom-fields.create-custom-field",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomFieldsCreateCustomFieldsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldsCustomFieldSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Create Custom Field",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "create-custom-field"
      }
    },
    "/custom-fields/folder": {
      "post": {
        "description": "<div>\n <p> Create Custom Field Folder </p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "create-custom-field-folder",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateFolder"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ICustomFieldFolder"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Create Custom Field Folder",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "create-custom-field-folder"
      }
    },
    "/custom-fields/folder/{id}": {
      "delete": {
        "description": "<div>\n<p> Create Custom Field Folder </p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "delete-custom-field-folder",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFolderDeleteResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Delete Custom Field Folder",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "delete-custom-field-folder"
      },
      "put": {
        "description": "<div>\n <p> Create Custom Field Folder </p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "update-custom-field-folder",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFolder"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ICustomFieldFolder"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Update Custom Field Folder Name",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "update-custom-field-folder"
      }
    },
    "/custom-fields/object-key/{objectKey}": {
      "get": {
        "description": "<div>\n <p> Get Custom Fields By Object Key </p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "get-custom-fields-by-object-key",
        "parameters": [
          {
            "description": "key of the Object. Must include \"custom_objects.\" prefix for custom objects. Available on the Custom Objects details Page under settings",
            "example": "custom_objects.pet",
            "in": "path",
            "name": "objectKey",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldsResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.readonly"
            ]
          }
        ],
        "summary": "Get Custom Fields By Object Key",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "get-custom-fields-by-object-key"
      }
    },
    "/custom-fields/{id}": {
      "delete": {
        "description": "<div>\n <p> Delete Custom Field By Id </p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "custom-fields.delete-custom-field",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFolderDeleteResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Delete Custom Field By Id",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "delete-custom-field"
      },
      "get": {
        "description": "<div>\n<p> Get Custom Field / Folder By Id.</p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "get-custom-field-by-id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldsCustomFieldSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.readonly"
            ]
          }
        ],
        "summary": "Get Custom Field / Folder By Id",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "get-custom-field-by-id"
      },
      "put": {
        "description": "<div>\n <p> Update Custom Field By Id </p> \n </div> \n :::info\n Only supports Custom Objects and Company (Business) today. Will be extended to other Standard Objects in the future.\n :::",
        "operationId": "custom-fields.update-custom-field",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomFieldsUpdateCustomFieldsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldsCustomFieldSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Update Custom Field By Id",
        "tags": [
          "custom-fields"
        ],
        "x-ghl-operation-id": "update-custom-field"
      }
    },
    "/custom-menus/": {
      "get": {
        "description": "Fetches a collection of custom menus based on specified criteria. This endpoint allows clients to retrieve custom menu configurations, which may include menu items, categories, and associated metadata. The response can be tailored using query parameters for filtering, sorting, and pagination.",
        "operationId": "get-custom-menus",
        "parameters": [
          {
            "description": "Unique identifier of the location",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "5DP4iH6HLkQsiKESj6rh",
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip for pagination",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Maximum number of items to return",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 20,
              "example": 10,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Search query to filter custom menus by name, supports partial || full names",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "custom-menu-link-name",
              "type": "string"
            }
          },
          {
            "description": "Filter to show only agency-level menu links. When omitted, fetches both agency and sub-account menu links. Ignored if locationId is provided",
            "in": "query",
            "name": "showOnCompany",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCustomMenusResponseDTO"
                }
              }
            },
            "description": "Successfully retrieved custom menus. Returns an array of custom menu objects, potentially including their structure, items, and relevant metadata."
          },
          "400": {
            "description": "Bad Request. Invalid query parameters provided."
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden. The client does not have necessary permissions to access custom menus."
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "custom-menu-link.readonly"
            ]
          }
        ],
        "summary": "Get Custom Menu Links",
        "tags": [
          "custom-menus"
        ],
        "x-ghl-operation-id": "get-custom-menus"
      },
      "post": {
        "description": "Creates a new custom menu for a company. Requires authentication and proper permissions. For Icon Usage Details please refer to  https://doc.clickup.com/8631005/d/h/87cpx-243696/d60fa70db6b92b2",
        "operationId": "create-custom-menu",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomMenuDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSingleCustomMenusSuccessfulResponseDTO"
                }
              }
            },
            "description": "Custom menu successfully created"
          },
          "400": {
            "description": "Bad Request - Invalid input"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden - Insufficient permissions"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "custom-menu-link.write"
            ]
          }
        ],
        "summary": "Create Custom Menu Link",
        "tags": [
          "custom-menus"
        ],
        "x-ghl-operation-id": "create-custom-menu"
      }
    },
    "/custom-menus/{customMenuId}": {
      "delete": {
        "description": "Removes a specific custom menu from the system. This operation requires authentication and proper permissions. The custom menu is identified by its unique ID, and the operation is performed within the context of a specific company.",
        "operationId": "delete-custom-menu",
        "parameters": [
          {
            "description": "ID of the custom menu to delete",
            "in": "path",
            "name": "customMenuId",
            "required": true,
            "schema": {
              "example": "62e589c1-c456-47e1-a9a7-cb8900014311",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteCustomMenuSuccessfulResponseDTO"
                }
              }
            },
            "description": "Custom menu successfully deleted"
          },
          "400": {
            "description": "Bad Request. Invalid parameters provided."
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden. The client does not have necessary permissions to delete this custom menu."
          },
          "404": {
            "description": "Not Found. The specified custom menu does not exist or has already been deleted."
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "custom-menu-link.write"
            ]
          }
        ],
        "summary": "Delete Custom Menu Link",
        "tags": [
          "custom-menus"
        ],
        "x-ghl-operation-id": "delete-custom-menu"
      },
      "get": {
        "description": "Fetches a single custom menus based on id. This endpoint allows clients to retrieve custom menu configurations, which may include menu items, categories, and associated metadata",
        "operationId": "get-custom-menu-by-id",
        "parameters": [
          {
            "description": "Unique identifier of the custom menu",
            "in": "path",
            "name": "customMenuId",
            "required": true,
            "schema": {
              "example": "62e589c1-c456-47e1-a9a7-cb8900014311",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSingleCustomMenusSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successfully retrieved custom menu. Returns a single custom menu object, potentially including its structure, items, and relevant metadata."
          },
          "400": {
            "description": "Bad Request. Invalid query parameters provided."
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden. The client does not have necessary permissions to access custom menu."
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "custom-menu-link.readonly"
            ]
          }
        ],
        "summary": "Get Custom Menu Link",
        "tags": [
          "custom-menus"
        ],
        "x-ghl-operation-id": "get-custom-menu-by-id"
      },
      "put": {
        "description": "Updates an existing custom menu for a given company. Requires authentication and proper permissions.",
        "operationId": "update-custom-menu",
        "parameters": [
          {
            "description": "ID of the custom menu to update",
            "in": "path",
            "name": "customMenuId",
            "required": true,
            "schema": {
              "example": "62e589c1-c456-47e1-a9a7-cb8900014311",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomMenuDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCustomMenuLinkResponseDTO"
                }
              }
            },
            "description": "Custom menu successfully updated"
          },
          "400": {
            "description": "Bad Request - Invalid input"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden - Insufficient permissions"
          },
          "404": {
            "description": "Not Found - Custom menu or company not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "custom-menu-link.write"
            ]
          }
        ],
        "summary": "Update Custom Menu Link",
        "tags": [
          "custom-menus"
        ],
        "x-ghl-operation-id": "update-custom-menu"
      }
    },
    "/email/verify": {
      "post": {
        "description": "Verify Email",
        "operationId": "verify-email",
        "parameters": [
          {
            "description": "Location Id, The email verification charges will be deducted from this location (if rebilling is enabled) / company wallet",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "5DP4iH6HLkQsiKESj6rh",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerificationBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/EmailVerifiedV3ResponseDto"
                    },
                    {
                      "$ref": "#/components/schemas/EmailNotVerifiedResponseDto"
                    },
                    {
                      "$ref": "#/components/schemas/LeadConnectorRecommendationDto"
                    }
                  ]
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "lc-email.readonly"
            ]
          }
        ],
        "summary": "Email Verification",
        "tags": [
          "email-isv"
        ],
        "x-ghl-operation-id": "verify-email",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/bulk-actions": {
      "get": {
        "description": "Get list of bulk action campaigns for a location",
        "operationId": "list-bulk-action-campaigns",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Number of campaigns to return. Defaults to 10, minimum is 1, maximum is 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "maximum": 20,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of campaigns to skip for pagination. Defaults to 0, minimum is 0",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Search query to filter campaigns.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "default": "",
              "example": "action",
              "type": "string"
            }
          },
          {
            "description": "Filter by start date (ISO 8601 format)",
            "in": "query",
            "name": "dateFrom",
            "required": false,
            "schema": {
              "example": "2024-01-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "description": "Filter by end date (ISO 8601 format)",
            "in": "query",
            "name": "dateTo",
            "required": false,
            "schema": {
              "example": "2024-12-31T23:59:59.999Z",
              "type": "string"
            }
          },
          {
            "description": "Filter by status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "processing",
                "scheduled",
                "paused",
                "complete",
                "cancelled"
              ],
              "example": "complete",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBulkActionCampaignsPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.readonly"
            ]
          }
        ],
        "summary": "List Bulk Action Campaigns",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "list-bulk-action-campaigns",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/bulk-actions/{campaignId}": {
      "get": {
        "description": "Get a single bulk action campaign by its ID",
        "operationId": "get-bulk-action-campaign",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign ID",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "OI72xYec4Mho6VBykTvj",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBulkActionCampaignPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.readonly"
            ]
          }
        ],
        "summary": "Get Bulk Action Campaign by ID",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "get-bulk-action-campaign",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/emails": {
      "get": {
        "description": "Get list of email campaigns for a location",
        "operationId": "list-email-campaigns",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Number of campaigns to return. Defaults to 10, minimum is 1, maximum is 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "maximum": 20,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of campaigns to skip for pagination. Defaults to 0, minimum is 0",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Search text for campaign name",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "newsletter",
              "type": "string"
            }
          },
          {
            "description": "Filter by campaign status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "all",
                "sent",
                "failed",
                "archived",
                "draft",
                "processing",
                "scheduled",
                "cancelled",
                "paused"
              ],
              "example": "all",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListEmailCampaignsPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.readonly"
            ]
          }
        ],
        "summary": "List Email Campaigns",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "list-email-campaigns",
        "x-version-added": "v3"
      },
      "post": {
        "description": "Create a new email campaign",
        "operationId": "create-email-campaign",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEmailCampaignPublicV2BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateEmailCampaignPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.write"
            ]
          }
        ],
        "summary": "Create Email Campaign",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "create-email-campaign",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/emails/{campaignId}": {
      "delete": {
        "description": "Delete a campaign",
        "operationId": "delete-campaign",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign ID",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "zYy3YOUuHxgomU1uYJty",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteCampaignPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.write"
            ]
          }
        ],
        "summary": "Delete Campaign",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "delete-campaign",
        "x-version-added": "v3"
      },
      "get": {
        "description": "Get a single email campaign by its ID",
        "operationId": "get-email-campaign",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign ID",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "67f15c2ae99226d5bcccb8f3",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetEmailCampaignPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.readonly"
            ]
          }
        ],
        "summary": "Get Email Campaign by ID",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "get-email-campaign",
        "x-version-added": "v3"
      },
      "patch": {
        "description": "Update an email campaign draft",
        "operationId": "update-email-campaign",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign ID",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "67f15c2ae99226d5bcccb8f3",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateEmailCampaignPublicV2BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateEmailCampaignPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.write"
            ]
          }
        ],
        "summary": "Update Email Campaign",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "update-email-campaign",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/emails/{campaignId}/schedule": {
      "post": {
        "description": "Schedule or start an email campaign. The campaign must be in draft, cancelled, or paused status.",
        "operationId": "schedule-campaign",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign ID",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "67f15c2ae99226d5bcccb8f3",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScheduleCampaignPublicV2BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScheduleCampaignPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "description": "Conflict - Campaign is already scheduled or being processed"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.write"
            ]
          }
        ],
        "summary": "Schedule Campaign",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "schedule-campaign",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/stats/{source}/{sourceId}": {
      "get": {
        "description": "Get statistics for email campaigns, workflows, or bulk actions",
        "operationId": "get-campaign-stats",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Source type: email-campaigns, workflow-campaigns, or bulk-actions",
            "in": "path",
            "name": "source",
            "required": true,
            "schema": {
              "enum": [
                "email-campaigns",
                "workflow-campaigns",
                "bulk-actions"
              ],
              "example": "email-campaigns",
              "type": "string"
            }
          },
          {
            "description": "Source ID of the email campaign, workflow campaign, or bulk action",
            "in": "path",
            "name": "sourceId",
            "required": true,
            "schema": {
              "example": "abc123",
              "type": "string"
            }
          },
          {
            "description": "Workflow action ID. Only valid when source is `workflow-campaigns`",
            "in": "query",
            "name": "subSourceId",
            "required": false,
            "schema": {
              "example": "step001",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCampaignStatsPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/stats.readonly"
            ]
          }
        ],
        "summary": "Get Campaign Statistics",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "get-campaign-stats",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/workflows": {
      "get": {
        "description": "Get list of workflow campaigns for a location",
        "operationId": "list-workflow-campaigns",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "k23k23jl23l32l",
              "type": "string"
            }
          },
          {
            "description": "Number of campaigns to return. Defaults to 10, minimum is 1, maximum is 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "maximum": 20,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of items to skip for pagination. Defaults to 0, minimum is 0",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Search query to filter campaigns.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "default": "",
              "example": "workflow",
              "type": "string"
            }
          },
          {
            "description": "Filter by campaign status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "published",
                "draft"
              ],
              "example": "published",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListWorkflowCampaignsPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.readonly"
            ]
          }
        ],
        "summary": "List Workflow Campaigns",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "list-workflow-campaigns",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/campaigns/workflows/{campaignId}": {
      "get": {
        "description": "Get a single workflow campaign by its ID",
        "operationId": "get-workflow-campaign",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Campaign ID",
            "in": "path",
            "name": "campaignId",
            "required": true,
            "schema": {
              "example": "693bd14ea6b50a8df0180e9a",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetWorkflowCampaignPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/campaigns.readonly"
            ]
          }
        ],
        "summary": "Get Workflow Campaign by ID",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "get-workflow-campaign",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/templates": {
      "get": {
        "description": "Get list of templates by location",
        "operationId": "list-email-templates",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Number of templates to return",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "maximum": 20,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of templates to skip",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Search by template name",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "newsletter",
              "type": "string"
            }
          },
          {
            "description": "Field to sort by",
            "in": "query",
            "name": "sortBy",
            "required": false,
            "schema": {
              "default": "updatedAt",
              "enum": [
                "updatedAt"
              ],
              "example": "updatedAt",
              "type": "string"
            }
          },
          {
            "description": "Sort direction",
            "in": "query",
            "name": "sortOrder",
            "required": false,
            "schema": {
              "default": "desc",
              "enum": [
                "asc",
                "desc"
              ],
              "example": "desc",
              "type": "string"
            }
          },
          {
            "description": "Return archived templates",
            "in": "query",
            "name": "archived",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "Folder to list templates from. Use 'root' for top-level listing.",
            "in": "query",
            "name": "folderId",
            "required": false,
            "schema": {
              "example": "root",
              "type": "string"
            }
          },
          {
            "description": "Whether to include templates, folders, or both in the response. `templates` will return only templates, `folders` will return only folders, and `all` will return both.",
            "in": "query",
            "name": "include",
            "required": false,
            "schema": {
              "default": "all",
              "enum": [
                "all",
                "templates",
                "folders"
              ],
              "example": "all",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListTemplatesPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/templates.readonly"
            ]
          }
        ],
        "summary": "List templates",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "list-email-templates",
        "x-version-added": "v3"
      },
      "post": {
        "description": "Create a new email template",
        "operationId": "create-email-template",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplatePublicV2BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTemplatePublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/templates.write"
            ]
          }
        ],
        "summary": "Create an email template",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "create-email-template",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/templates/folders": {
      "post": {
        "description": "Create a new template folder",
        "operationId": "create-template-folder",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateFolderPublicV2BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTemplateFolderPublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/templates.write"
            ]
          }
        ],
        "summary": "Create a template folder",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "create-template-folder",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/templates/import": {
      "post": {
        "description": "Import a template from a provider URL",
        "operationId": "import-email-template",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImportTemplatePublicV2BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImportTemplatePublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/templates.write"
            ]
          }
        ],
        "summary": "Import an email template",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "import-email-template",
        "x-version-added": "v3"
      }
    },
    "/emails/locations/{locationId}/templates/{templateId}": {
      "delete": {
        "description": "Delete a template",
        "operationId": "delete-email-template",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Template ID",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "zYy3YOUuHxgomU1uYJty",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteTemplatePublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/templates.write"
            ]
          }
        ],
        "summary": "Delete a template",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "delete-email-template",
        "x-version-added": "v3"
      },
      "get": {
        "description": "Get a single email template by its ID",
        "operationId": "get-email-template",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Template ID",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTemplatePublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/templates.readonly"
            ]
          }
        ],
        "summary": "Get Email Template by ID",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "get-email-template",
        "x-version-added": "v3"
      },
      "patch": {
        "description": "Update email template",
        "operationId": "update-email-template",
        "parameters": [
          {
            "description": "Location ID",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Template ID",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "zYy3YOUuHxgomU1uYJty",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTemplatePublicV2BodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTemplatePublicV2ResponseDto"
                }
              }
            },
            "description": "Success"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvalidLocationDTO"
                }
              }
            },
            "description": "The token does not have access to this location"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundDTO"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "emails/templates.write"
            ]
          }
        ],
        "summary": "Update an email template",
        "tags": [
          "emails"
        ],
        "x-ghl-operation-id": "update-email-template",
        "x-version-added": "v3"
      }
    },
    "/forms/": {
      "get": {
        "description": "Get Forms",
        "operationId": "get-forms",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": 0,
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Limit Per Page records count. will allow maximum up to 50 and default will be 10",
            "example": 20,
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "type": "number"
            }
          },
          {
            "example": "folder",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FormsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "forms.readonly"
            ]
          }
        ],
        "summary": "Get Forms",
        "tags": [
          "forms"
        ],
        "x-ghl-operation-id": "get-forms"
      }
    },
    "/forms/submissions": {
      "get": {
        "description": "Get Forms Submissions",
        "operationId": "get-forms-submissions",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Page No. By default it will be 1",
            "example": 1,
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "description": "Limit Per Page records count. will allow maximum up to 100 and default will be 20",
            "example": 20,
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "description": "Filter submission by form id",
            "example": "jjusM6EOngDExnbo2DbU",
            "in": "query",
            "name": "formId",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by contactId, name, email or phone no.",
            "example": "john@example.com",
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Get submission by starting of this date. By default it will be same date of last month(YYYY-MM-DD).",
            "example": "2020-11-14",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Get submission by ending of this date. By default it will be current date(YYYY-MM-DD).",
            "example": "2020-12-14",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FormsSubmissionsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "forms.readonly"
            ]
          }
        ],
        "summary": "Get Forms Submissions",
        "tags": [
          "forms"
        ],
        "x-ghl-operation-id": "get-forms-submissions"
      }
    },
    "/forms/upload-custom-files": {
      "post": {
        "description": "Post the necessary fields for the API to upload files. The files need to be a buffer with the key \"< custom_field_id >_< file_id >\". <br /> Here custom field id is the ID of your custom field and file id is a randomly generated id (or uuid) <br /> There is support for multiple file uploads as well. Have multiple fields in the format mentioned.<br />File size is limited to 50 MB.<br /><br /> The allowed file types are: <br/> <ul><li>PDF</li><li>DOCX</li><li>DOC</li><li>JPG</li><li>JPEG</li><li>PNG</li><li>GIF</li><li>CSV</li><li>XLSX</li><li>XLS</li><li>MP4</li><li>MPEG</li><li>ZIP</li><li>RAR</li><li>TXT</li><li>SVG</li></ul> <br /><br /> The API will return the updated contact object.",
        "operationId": "upload-to-custom-fields",
        "parameters": [
          {
            "description": "Contact ID to upload the file to.",
            "example": "dtEv6KtI27yF92YPm3Zz",
            "in": "query",
            "name": "contactId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location ID of the contact.",
            "example": "quXmPY59n1zgGBabY1bZ",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "additionalProperties": {
                  "format": "binary",
                  "type": "string"
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "forms.write"
            ]
          },
          {
            "Location-Access": [
              "forms.write"
            ]
          }
        ],
        "summary": "Upload files to custom fields",
        "tags": [
          "forms"
        ],
        "x-ghl-operation-id": "upload-to-custom-fields"
      }
    },
    "/funnels/funnel/list": {
      "get": {
        "description": "Retrieves a list of all funnels based on the given query parameters.",
        "operationId": "getFunnels",
        "parameters": [
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "category",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "parentId",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "name",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FunnelListResponseDTO"
                }
              }
            },
            "description": "Successful response - List of funnels returned"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Fetch List of Funnels",
        "tags": [
          "funnels"
        ],
        "x-ghl-operation-id": "getFunnels"
      }
    },
    "/funnels/lookup/redirect": {
      "post": {
        "description": "The \"Create Redirect\" API Allows adding a new url redirect to the system. Use this endpoint to create a url redirect with the specified details. Ensure that the required information is provided in the request payload.",
        "operationId": "create-redirect",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRedirectParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRedirectResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "funnels/redirect.write"
            ]
          }
        ],
        "summary": "Create Redirect",
        "tags": [
          "funnels"
        ],
        "x-ghl-operation-id": "create-redirect"
      }
    },
    "/funnels/lookup/redirect/list": {
      "get": {
        "description": "Retrieves a list of all URL redirects based on the given query parameters.",
        "operationId": "fetch-redirects-list",
        "parameters": [
          {
            "example": "6p2RxpgtMKQwO3E6IUaT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": 20,
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "example": 10,
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "example": "example.com/test",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RedirectListResponseDTO"
                }
              }
            },
            "description": "Successful response - List of URL redirects returned"
          },
          "422": {
            "description": "Unprocessable Entity - The provided data is invalid or incomplete"
          }
        },
        "security": [
          {
            "Location-Access": [
              "funnels/redirect.readonly"
            ]
          }
        ],
        "summary": "Fetch List of Redirects",
        "tags": [
          "funnels"
        ],
        "x-ghl-operation-id": "fetch-redirects-list"
      }
    },
    "/funnels/lookup/redirect/{id}": {
      "delete": {
        "description": "The \"Delete Redirect By Id\" API Allows deletion of a URL redirect from the system using its unique identifier. Use this endpoint to delete a URL redirect with the specified ID using details provided in the request payload.",
        "operationId": "delete-redirect-by-id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": "6p2RxpgtMKQwO3E6IUaT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteRedirectResponseDTO"
                }
              }
            },
            "description": "Successful response - URL redirect deleted successfully"
          },
          "422": {
            "description": "Unprocessable Entity - The provided data is invalid or incomplete"
          }
        },
        "security": [
          {
            "Location-Access": [
              "funnels/redirect.write"
            ]
          }
        ],
        "summary": "Delete Redirect By Id",
        "tags": [
          "funnels"
        ],
        "x-ghl-operation-id": "delete-redirect-by-id"
      },
      "patch": {
        "description": "The \"Update Redirect By Id\" API Allows updating an existing URL redirect in the system. Use this endpoint to modify a URL redirect with the specified ID using details provided in the request payload.",
        "operationId": "update-redirect-by-id",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRedirectParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateRedirectResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "funnels/redirect.write"
            ]
          }
        ],
        "summary": "Update Redirect By Id",
        "tags": [
          "funnels"
        ],
        "x-ghl-operation-id": "update-redirect-by-id"
      }
    },
    "/funnels/page": {
      "get": {
        "description": "Retrieves a list of all funnel pages based on the given query parameters.",
        "operationId": "getPagesByFunnelId",
        "parameters": [
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "funnelId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "name",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FunnelPageResponseDTO"
                }
              }
            },
            "description": "Successful response - List of funnel pages returned"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Fetch list of funnel pages",
        "tags": [
          "funnels"
        ],
        "x-ghl-operation-id": "getPagesByFunnelId"
      }
    },
    "/funnels/page/count": {
      "get": {
        "description": "Retrieves count of all funnel pages based on the given query parameters.",
        "operationId": "getPagesCountByFunnelId",
        "parameters": [
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "funnelId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "name",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FunnelPageCountResponseDTO"
                }
              }
            },
            "description": "Successful response - Count of funnel pages returned"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Fetch count of funnel pages",
        "tags": [
          "funnels"
        ],
        "x-ghl-operation-id": "getPagesCountByFunnelId"
      }
    },
    "/invoices/": {
      "get": {
        "description": "API to get list of invoices",
        "operationId": "invoices.list-invoices",
        "parameters": [
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "status to be filtered",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "startAt in YYYY-MM-DD format",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "endAt in YYYY-MM-DD format",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "To search for an invoice by id / name / email / phoneNo",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Alex",
              "type": "string"
            }
          },
          {
            "description": "payment mode",
            "in": "query",
            "name": "paymentMode",
            "required": false,
            "schema": {
              "enum": [
                "default",
                "live",
                "test"
              ],
              "example": "live",
              "type": "string"
            }
          },
          {
            "description": "Contact ID for the invoice",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "AmuzcoPBpgKeccNsFlib",
              "type": "string"
            }
          },
          {
            "description": "Limit the number of items to return",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "description": "The field on which sorting should be applied",
            "in": "query",
            "name": "sortField",
            "required": false,
            "schema": {
              "enum": [
                "issueDate"
              ],
              "example": "issueDate",
              "type": "string"
            }
          },
          {
            "description": "The order of sort which should be applied for the sortField",
            "in": "query",
            "name": "sortOrder",
            "required": false,
            "schema": {
              "enum": [
                "ascend",
                "descend"
              ],
              "example": "descend",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListInvoicesResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices.readonly"
            ]
          }
        ],
        "summary": "List invoices",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "list-invoices"
      },
      "post": {
        "description": "API to create an invoice",
        "operationId": "create-invoice",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInvoiceDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices.write"
            ]
          }
        ],
        "summary": "Create Invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "create-invoice"
      }
    },
    "/invoices/estimate": {
      "post": {
        "description": "Create a new estimate with the provided details",
        "operationId": "create-new-estimate",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEstimatesDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateResponseDto"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Create New Estimate",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "create-new-estimate"
      }
    },
    "/invoices/estimate/list": {
      "get": {
        "description": "Get a paginated list of estimates",
        "operationId": "list-estimates",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "startAt in YYYY-MM-DD format",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "endAt in YYYY-MM-DD format",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "search text for estimates name",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Home services estimate",
              "type": "string"
            }
          },
          {
            "description": "estimate status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "all",
                "draft",
                "sent",
                "accepted",
                "declined",
                "invoiced",
                "viewed"
              ],
              "example": "sent",
              "type": "string"
            }
          },
          {
            "description": "Contact ID for the estimate",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "AmuzcoPBpgKeccNsFlib",
              "type": "string"
            }
          },
          {
            "description": "Limit the number of items to return",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListEstimatesResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.readonly"
            ]
          }
        ],
        "summary": "List Estimates",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "list-estimates"
      }
    },
    "/invoices/estimate/number/generate": {
      "get": {
        "description": "Get the next estimate number for the given location",
        "operationId": "generate-estimate-number",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GenerateEstimateNumberResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.readonly"
            ]
          }
        ],
        "summary": "Generate Estimate Number",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "generate-estimate-number"
      }
    },
    "/invoices/estimate/stats/last-visited-at": {
      "patch": {
        "description": "API to update estimate last visited at by estimate id",
        "operationId": "update-estimate-last-visited-at",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EstimateIdParam"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update estimate last visited at",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-estimate-last-visited-at"
      }
    },
    "/invoices/estimate/template": {
      "get": {
        "description": "Get a list of estimate templates or a specific template by ID",
        "operationId": "list-estimate-templates",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "To search for an estimate template by id / name",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Alex",
              "type": "string"
            }
          },
          {
            "description": "Limit the number of items to return",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListEstimateTemplateResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.readonly"
            ]
          }
        ],
        "summary": "List Estimate Templates",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "list-estimate-templates"
      },
      "post": {
        "description": "Create a new estimate template",
        "operationId": "create-estimate-template",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EstimateTemplatesDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateTemplateResponseDTO"
                }
              }
            },
            "description": "Successfully created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Create Estimate Template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "create-estimate-template"
      }
    },
    "/invoices/estimate/template/preview": {
      "get": {
        "description": "Get a preview of an estimate template",
        "operationId": "preview-estimate-template",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "Template Id",
            "in": "query",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateTemplateResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.readonly"
            ]
          }
        ],
        "summary": "Preview Estimate Template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "preview-estimate-template"
      }
    },
    "/invoices/estimate/template/{templateId}": {
      "delete": {
        "description": "Delete an existing estimate template",
        "operationId": "delete-estimate-template",
        "parameters": [
          {
            "description": "Template Id",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AltDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateTemplateResponseDTO"
                }
              }
            },
            "description": "Successfully deleted"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Delete Estimate Template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "delete-estimate-template"
      },
      "put": {
        "description": "Update an existing estimate template",
        "operationId": "update-estimate-template",
        "parameters": [
          {
            "description": "Template Id",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EstimateTemplatesDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateTemplateResponseDTO"
                }
              }
            },
            "description": "Successfully updated"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Update Estimate Template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-estimate-template"
      }
    },
    "/invoices/estimate/{estimateId}": {
      "delete": {
        "description": "Delete an existing estimate",
        "operationId": "delete-estimate",
        "parameters": [
          {
            "description": "Estimate Id",
            "in": "path",
            "name": "estimateId",
            "required": true,
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AltDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateResponseDto"
                }
              }
            },
            "description": "Successfully Deleted"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Delete Estimate",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "delete-estimate"
      },
      "put": {
        "description": "Update an existing estimate with new details",
        "operationId": "update-estimate",
        "parameters": [
          {
            "description": "Estimate Id",
            "in": "path",
            "name": "estimateId",
            "required": true,
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateEstimateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateResponseDto"
                }
              }
            },
            "description": "Successfully updated"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Update Estimate",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-estimate"
      }
    },
    "/invoices/estimate/{estimateId}/invoice": {
      "post": {
        "description": "Create a new invoice from an existing estimate",
        "operationId": "create-invoice-from-estimate",
        "parameters": [
          {
            "description": "Estimate Id",
            "in": "path",
            "name": "estimateId",
            "required": true,
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInvoiceFromEstimateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceFromEstimateResponseDTO"
                }
              }
            },
            "description": "Successfully Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Create Invoice from Estimate",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "create-invoice-from-estimate"
      }
    },
    "/invoices/estimate/{estimateId}/send": {
      "post": {
        "description": "API to send estimate by estimate id",
        "operationId": "send-estimate",
        "parameters": [
          {
            "description": "Estimate Id",
            "in": "path",
            "name": "estimateId",
            "required": true,
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendEstimateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateResponseDto"
                }
              }
            },
            "description": "Created"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/estimate.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/estimate.write"
            ]
          }
        ],
        "summary": "Send Estimate",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "send-estimate"
      }
    },
    "/invoices/generate-invoice-number": {
      "get": {
        "description": "Get the next invoice number for the given location",
        "operationId": "generate-invoice-number",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GenerateInvoiceNumberResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices.readonly"
            ]
          }
        ],
        "summary": "Generate Invoice Number",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "generate-invoice-number"
      }
    },
    "/invoices/schedule": {
      "get": {
        "description": "API to get list of schedules",
        "operationId": "list-invoice-schedules",
        "parameters": [
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "status to be filtered",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "startAt in YYYY-MM-DD format",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "endAt in YYYY-MM-DD format",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "To search for an invoice by id / name / email / phoneNo",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Alex",
              "type": "string"
            }
          },
          {
            "description": "payment mode",
            "in": "query",
            "name": "paymentMode",
            "required": false,
            "schema": {
              "enum": [
                "default",
                "live",
                "test"
              ],
              "example": "live",
              "type": "string"
            }
          },
          {
            "description": "Limit the number of items to return",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListSchedulesResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.readonly"
            ]
          }
        ],
        "summary": "List schedules",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "list-invoice-schedules"
      },
      "post": {
        "description": "API to create an invoice Schedule",
        "operationId": "create-invoice-schedule",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInvoiceScheduleDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.write"
            ]
          }
        ],
        "summary": "Create Invoice Schedule",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "create-invoice-schedule"
      }
    },
    "/invoices/schedule/{scheduleId}": {
      "delete": {
        "description": "API to delete an schedule by schedule id",
        "operationId": "delete-invoice-schedule",
        "parameters": [
          {
            "description": "Schedule Id",
            "in": "path",
            "name": "scheduleId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteInvoiceScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.write"
            ]
          }
        ],
        "summary": "Delete schedule",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "delete-invoice-schedule"
      },
      "get": {
        "description": "API to get an schedule by schedule id",
        "operationId": "get-invoice-schedule",
        "parameters": [
          {
            "description": "Schedule Id",
            "in": "path",
            "name": "scheduleId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.readonly"
            ]
          }
        ],
        "summary": "Get an schedule",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "get-invoice-schedule"
      },
      "put": {
        "description": "API to update an schedule by schedule id",
        "operationId": "update-invoice-schedule",
        "parameters": [
          {
            "description": "Schedule Id",
            "in": "path",
            "name": "scheduleId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInvoiceScheduleDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateInvoiceScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.write"
            ]
          }
        ],
        "summary": "Update schedule",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-invoice-schedule"
      }
    },
    "/invoices/schedule/{scheduleId}/auto-payment": {
      "post": {
        "description": "API to manage auto payment for a schedule",
        "operationId": "auto-payment-invoice-schedule",
        "parameters": [
          {
            "description": "Schedule Id",
            "in": "path",
            "name": "scheduleId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AutoPaymentScheduleDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AutoPaymentInvoiceScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.write"
            ]
          }
        ],
        "summary": "Manage Auto payment for an schedule invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "auto-payment-invoice-schedule"
      }
    },
    "/invoices/schedule/{scheduleId}/cancel": {
      "post": {
        "description": "API to cancel a scheduled invoice by schedule id",
        "operationId": "cancel-invoice-schedule",
        "parameters": [
          {
            "description": "Schedule Id",
            "in": "path",
            "name": "scheduleId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CancelInvoiceScheduleDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CancelInvoiceScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.write"
            ]
          }
        ],
        "summary": "Cancel an scheduled invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "cancel-invoice-schedule"
      }
    },
    "/invoices/schedule/{scheduleId}/schedule": {
      "post": {
        "description": "API to schedule an schedule invoice to start sending to the customer",
        "operationId": "schedule-invoice-schedule",
        "parameters": [
          {
            "description": "Schedule Id",
            "in": "path",
            "name": "scheduleId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScheduleInvoiceScheduleDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScheduleInvoiceScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.write"
            ]
          }
        ],
        "summary": "Schedule an schedule invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "schedule-invoice-schedule"
      }
    },
    "/invoices/schedule/{scheduleId}/updateAndSchedule": {
      "post": {
        "description": "API to update scheduled recurring invoice",
        "operationId": "update-and-schedule-invoice-schedule",
        "parameters": [
          {
            "description": "Schedule Id",
            "in": "path",
            "name": "scheduleId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateAndScheduleInvoiceScheduleResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/schedule.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/schedule.write"
            ]
          }
        ],
        "summary": "Update scheduled recurring invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-and-schedule-invoice-schedule"
      }
    },
    "/invoices/settings": {
      "get": {
        "description": "Get the invoice settings for the given location",
        "operationId": "get-invoice-settings",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetInvoiceSettingsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices.readonly"
            ]
          }
        ],
        "summary": "Get Invoice Settings",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "get-invoice-settings"
      }
    },
    "/invoices/stats/last-visited-at": {
      "patch": {
        "description": "API to update invoice last visited at by invoice id",
        "operationId": "update-invoice-last-visited-at",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchInvoiceStatsLastViewedDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update invoice last visited at",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-invoice-last-visited-at"
      }
    },
    "/invoices/template": {
      "get": {
        "description": "API to get list of templates",
        "operationId": "list-invoice-templates",
        "parameters": [
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "status to be filtered",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "startAt in YYYY-MM-DD format",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "endAt in YYYY-MM-DD format",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "example": "2023-01-01",
              "type": "string"
            }
          },
          {
            "description": "To search for an invoice by id / name / email / phoneNo",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Alex",
              "type": "string"
            }
          },
          {
            "description": "payment mode",
            "in": "query",
            "name": "paymentMode",
            "required": false,
            "schema": {
              "enum": [
                "default",
                "live",
                "test"
              ],
              "example": "live",
              "type": "string"
            }
          },
          {
            "description": "Limit the number of items to return",
            "in": "query",
            "name": "limit",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip",
            "in": "query",
            "name": "offset",
            "required": true,
            "schema": {
              "example": 10,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListTemplatesResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/template.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/template.readonly"
            ]
          }
        ],
        "summary": "List templates",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "list-invoice-templates"
      },
      "post": {
        "description": "API to create a template",
        "operationId": "create-invoice-template",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateInvoiceTemplateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateInvoiceTemplateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/template.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/template.write"
            ]
          }
        ],
        "summary": "Create template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "create-invoice-template"
      }
    },
    "/invoices/template/{templateId}": {
      "delete": {
        "description": "API to update an template by template id",
        "operationId": "delete-invoice-template",
        "parameters": [
          {
            "description": "Template Id",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteInvoiceTemplateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/template.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/template.write"
            ]
          }
        ],
        "summary": "Delete template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "delete-invoice-template"
      },
      "get": {
        "description": "API to get an template by template id",
        "operationId": "get-invoice-template",
        "parameters": [
          {
            "description": "Template Id",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTemplateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/template.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices/template.readonly"
            ]
          }
        ],
        "summary": "Get an template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "get-invoice-template"
      },
      "put": {
        "description": "API to update an template by template id",
        "operationId": "update-invoice-template",
        "parameters": [
          {
            "description": "Template Id",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInvoiceTemplateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateInvoiceTemplateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices/template.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices/template.write"
            ]
          }
        ],
        "summary": "Update template",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-invoice-template"
      }
    },
    "/invoices/template/{templateId}/late-fees-configuration": {
      "patch": {
        "description": "API to update template late fees configuration by template id",
        "operationId": "update-invoice-template-late-fees-configuration",
        "parameters": [
          {
            "description": "Template Id",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInvoiceLateFeesConfigurationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateInvoiceTemplateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update template late fees configuration",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-invoice-template-late-fees-configuration"
      }
    },
    "/invoices/template/{templateId}/payment-methods-configuration": {
      "patch": {
        "description": "API to update template late fees configuration by template id",
        "operationId": "update-invoice-payment-methods-configuration",
        "parameters": [
          {
            "description": "Template Id",
            "in": "path",
            "name": "templateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePaymentMethodsConfigurationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateInvoiceTemplateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update template late fees configuration",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-invoice-payment-methods-configuration"
      }
    },
    "/invoices/text2pay": {
      "post": {
        "description": "API to create or update a text2pay invoice",
        "operationId": "text2pay-invoice",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Text2PayDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Text2PayInvoiceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.write"
            ]
          }
        ],
        "summary": "Create & Send",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "text2pay-invoice"
      }
    },
    "/invoices/{invoiceId}": {
      "delete": {
        "description": "API to delete invoice by invoice id",
        "operationId": "delete-invoice",
        "parameters": [
          {
            "description": "Invoice Id",
            "in": "path",
            "name": "invoiceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteInvoiceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "DeleteDraftInvoiceBadResponse": {
                    "value": {
                      "message": "Invoice status need to be draft to delete an invoice",
                      "statusCode": 400
                    }
                  },
                  "UnableToFindInvoiceResponse": {
                    "value": {
                      "message": "Unable to find an invoice with the given invoice id",
                      "statusCode": 400
                    }
                  }
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices.write"
            ]
          }
        ],
        "summary": "Delete invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "delete-invoice"
      },
      "get": {
        "description": "API to get invoice by invoice id",
        "operationId": "get-invoice",
        "parameters": [
          {
            "description": "Invoice Id",
            "in": "path",
            "name": "invoiceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetInvoiceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.readonly"
            ]
          },
          {
            "Agency-Access": [
              "invoices.readonly"
            ]
          }
        ],
        "summary": "Get invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "get-invoice"
      },
      "put": {
        "description": "API to update invoice by invoice id",
        "operationId": "update-invoice",
        "parameters": [
          {
            "description": "Invoice Id",
            "in": "path",
            "name": "invoiceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInvoiceDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateInvoiceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices.write"
            ]
          }
        ],
        "summary": "Update invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-invoice"
      }
    },
    "/invoices/{invoiceId}/late-fees-configuration": {
      "patch": {
        "description": "API to update invoice late fees configuration by invoice id",
        "operationId": "update-invoice-late-fees-configuration",
        "parameters": [
          {
            "description": "Invoice Id",
            "in": "path",
            "name": "invoiceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInvoiceLateFeesConfigurationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateInvoiceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update invoice late fees configuration",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "update-invoice-late-fees-configuration"
      }
    },
    "/invoices/{invoiceId}/record-payment": {
      "post": {
        "description": "API to record manual payment for an invoice by invoice id",
        "operationId": "record-invoice",
        "parameters": [
          {
            "description": "Invoice Id",
            "in": "path",
            "name": "invoiceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RecordPaymentDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecordPaymentResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices.write"
            ]
          }
        ],
        "summary": "Record a manual payment for an invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "record-invoice"
      }
    },
    "/invoices/{invoiceId}/send": {
      "post": {
        "description": "API to send invoice by invoice id",
        "operationId": "send-invoice",
        "parameters": [
          {
            "description": "Invoice Id",
            "in": "path",
            "name": "invoiceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendInvoiceDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendInvoicesResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices.write"
            ]
          }
        ],
        "summary": "Send invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "send-invoice"
      }
    },
    "/invoices/{invoiceId}/void": {
      "post": {
        "description": "API to delete invoice by invoice id",
        "operationId": "void-invoice",
        "parameters": [
          {
            "description": "Invoice Id",
            "in": "path",
            "name": "invoiceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VoidInvoiceDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VoidInvoiceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "UnableToFindInvoiceResponse": {
                    "value": {
                      "message": "Unable to find an invoice with the given invoice id",
                      "statusCode": 400
                    }
                  },
                  "VoidDraftInvoiceBadResponse": {
                    "value": {
                      "message": "Can not void draft invoice. You can delete draft invoice!",
                      "statusCode": 400
                    }
                  },
                  "VoidProviderInvoiceBadResponse": {
                    "value": {
                      "message": "To void an invoice which has received payment through the payment provider, the corresponding transaction needs to be refunded first",
                      "statusCode": 400
                    }
                  }
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "invoices.write"
            ]
          },
          {
            "Agency-Access": [
              "invoices.write"
            ]
          }
        ],
        "summary": "Void invoice",
        "tags": [
          "invoices"
        ],
        "x-ghl-operation-id": "void-invoice"
      }
    },
    "/knowledge-bases/": {
      "get": {
        "operationId": "listAllKnowledgeBasesPaginated",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "search query for knowledge base name",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Maximum number of knowledge bases to return",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 20,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "ID of the last knowledge base from the previous page (for pagination)",
            "in": "query",
            "name": "lastKnowledgeBaseId",
            "required": false,
            "schema": {
              "example": "ZwTB8S0yo0FIBY6OPZTD",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllKnowledgeBasesPaginatedResponseDTO"
                }
              }
            },
            "description": "Paginated knowledge bases retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get all knowledge bases for a location by location Id (paginated)",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "listAllKnowledgeBasesPaginated"
      },
      "post": {
        "operationId": "createKnowledgeBase",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateKnowledgeBaseDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateKnowledgeBaseResponseDTO"
                }
              }
            },
            "description": "Knowledge base created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create a new knowledge base (max 15 knowledge bases per location)",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "createKnowledgeBase"
      }
    },
    "/knowledge-bases/crawler": {
      "delete": {
        "operationId": "deleteTrainedUrlsForKnowledgeBase",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteWebsiteUrlRequestDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteWebsiteUrlResponseDTO"
                }
              }
            },
            "description": "Selected pages deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Delete trained pages",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "deleteTrainedUrlsForKnowledgeBase"
      },
      "get": {
        "operationId": "getAllWebsiteUrlsDataByKnowledgeBase",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "knowledge base ID as string",
            "in": "query",
            "name": "knowledgeBaseId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "location ID as string",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Page number",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "Records per page",
            "in": "query",
            "name": "pageLength",
            "required": false,
            "schema": {
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "query to filter on url links",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "www.example.com/",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllUrlsByKnowledgeBaseResponseDTO"
                }
              }
            },
            "description": "Trained page links retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get all trained page links by knowledge base",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "getAllWebsiteUrlsDataByKnowledgeBase"
      },
      "post": {
        "operationId": "discoverWebsite",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DiscoverWebsiteRequestDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DiscoverWebsiteResponseDTO"
                }
              }
            },
            "description": "Crawling and discovery started successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Start crawling and discover pages for training",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "discoverWebsite"
      }
    },
    "/knowledge-bases/crawler/status": {
      "get": {
        "operationId": "getCrawlingStatusForLatestOperation",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "Location ID as string",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "operation id as string",
            "in": "query",
            "name": "operationId",
            "required": true,
            "schema": {
              "example": 1,
              "type": "string"
            }
          },
          {
            "description": "knowledge base id",
            "in": "query",
            "name": "knowledgeBaseId",
            "required": true,
            "schema": {
              "example": "jjkkxftgvbhjmn,",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CrawlingStatusResponseDTO"
                }
              }
            },
            "description": "Operation status fetched successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get crawling status for the latest operation",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "getCrawlingStatusForLatestOperation"
      }
    },
    "/knowledge-bases/crawler/train": {
      "post": {
        "operationId": "trainDiscoveredUrls",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrainDiscoveredUrlsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TrainDiscoveredUrlsResponseDTO"
                }
              }
            },
            "description": "Pages trained successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Train discovered website pages and ingest into the knowledge base",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "trainDiscoveredUrls"
      }
    },
    "/knowledge-bases/faqs": {
      "get": {
        "description": "Retrieves FAQs for a knowledge base. Supports pagination using limit and lastFaqId parameters.",
        "operationId": "list",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "knowledge base ID as string",
            "in": "query",
            "name": "knowledgeBaseId",
            "required": true,
            "schema": {
              "example": "710KoEzy793Fxubft0bc",
              "type": "string"
            }
          },
          {
            "description": "location ID as string",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "qDZpF8GH3qvgJTmKCoL",
              "type": "string"
            }
          },
          {
            "description": "Limit the number of FAQs returned",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "type": "number"
            }
          },
          {
            "description": "Last FAQ ID for pagination (cursor-based)",
            "in": "query",
            "name": "lastFaqId",
            "required": false,
            "schema": {
              "example": "3rzeElC1FOVY91veVBkp",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListFaqsResponseDTO"
                }
              }
            },
            "description": "FAQs retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get all FAQs by knowledge base with pagination support",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "list"
      },
      "post": {
        "operationId": "create",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddFaqDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateFaqResponseDTO"
                }
              }
            },
            "description": "FAQ created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create a new FAQ inside knowledge base",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "create"
      }
    },
    "/knowledge-bases/faqs/{id}": {
      "delete": {
        "operationId": "knowledge-base.delete",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "faq ID as string",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "710KoEzy793Fxubft0bc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteFaqResponseDTO"
                }
              }
            },
            "description": "FAQ deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Delete an existing knowledge base FAQ",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "delete"
      },
      "put": {
        "operationId": "update",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "faq ID as string",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "710KoEzy793Fxubft0bc",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFaqBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateFaqResponseDTO"
                }
              }
            },
            "description": "FAQ updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal Server Error"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update an existing knowledge base FAQ",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "update"
      }
    },
    "/knowledge-bases/{id}": {
      "put": {
        "operationId": "updateKnowledgeBase",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateKnowledgeBaseDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateKnowledgeBaseResponseDTO"
                }
              }
            },
            "description": "Knowledge base updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update a knowledge base",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "updateKnowledgeBase"
      }
    },
    "/knowledge-bases/{knowledgeBaseId}": {
      "delete": {
        "operationId": "deleteKnowledgeBase",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "knowledgeBaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteKnowledgeBaseResponseDTO"
                }
              }
            },
            "description": "Knowledge base deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Delete a knowledge base",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "deleteKnowledgeBase"
      },
      "get": {
        "operationId": "getKnowledgeBaseById",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "knowledgeBaseId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetKnowledgeBaseByIdResponseDTO"
                }
              }
            },
            "description": "Knowledge base by ID retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/KnowledgeBaseUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get knowledge base by ID",
        "tags": [
          "knowledge-base"
        ],
        "x-ghl-operation-id": "getKnowledgeBaseById"
      }
    },
    "/links/": {
      "get": {
        "description": "Get Links",
        "operationId": "get-links",
        "parameters": [
          {
            "description": "Location ID of the business profile",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLinksSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "links.readonly"
            ]
          }
        ],
        "summary": "Get Links",
        "tags": [
          "links"
        ],
        "x-ghl-operation-id": "get-links"
      },
      "post": {
        "description": "Create Link",
        "operationId": "create-link",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LinksDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLinkSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "links.write"
            ]
          }
        ],
        "summary": "Create Link",
        "tags": [
          "links"
        ],
        "x-ghl-operation-id": "create-link"
      }
    },
    "/links/id/{linkId}": {
      "get": {
        "description": "Get a single link by its ID",
        "operationId": "get-link-by-id",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "string"
            }
          },
          {
            "description": "Link Id",
            "in": "path",
            "name": "linkId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLinkSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "links.readonly"
            ]
          }
        ],
        "summary": "Get Link by ID",
        "tags": [
          "links"
        ],
        "x-ghl-operation-id": "get-link-by-id"
      }
    },
    "/links/search": {
      "get": {
        "description": "Get list of links by searching",
        "operationId": "search-trigger-links",
        "parameters": [
          {
            "description": "Access Token",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ABCHkzuJQ8ZMd4Te84GK",
              "type": "string"
            }
          },
          {
            "description": "Search query as a string",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "Search string",
              "type": "string"
            }
          },
          {
            "description": "Numbers of query results to skip",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "Limit on number of search results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 20,
              "example": 10,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLinksSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "links.readonly"
            ]
          }
        ],
        "summary": "Search Trigger Links",
        "tags": [
          "links"
        ],
        "x-ghl-operation-id": "search-trigger-links"
      }
    },
    "/links/{linkId}": {
      "delete": {
        "description": "Delete Link",
        "operationId": "delete-link",
        "parameters": [
          {
            "description": "Link Id",
            "in": "path",
            "name": "linkId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteLinksSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "links.write"
            ]
          }
        ],
        "summary": "Delete Link",
        "tags": [
          "links"
        ],
        "x-ghl-operation-id": "delete-link"
      },
      "put": {
        "description": "Update Link",
        "operationId": "update-link",
        "parameters": [
          {
            "description": "Link Id",
            "in": "path",
            "name": "linkId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LinkUpdateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLinkSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "links.write"
            ]
          }
        ],
        "summary": "Update Link",
        "tags": [
          "links"
        ],
        "x-ghl-operation-id": "update-link"
      }
    },
    "/locations/": {
      "post": {
        "description": "<div>\n                  <p>Create a new Sub-Account (Formerly Location) based on the data provided</p> \n                  <div>\n<span>\n                     :::info\n This feature is only available on Agency Pro ($497) plan.\n :::  \n </span>\n                  </div>\n                </div>\n    ",
        "operationId": "create-location",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLocationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateLocationSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "locations.write"
            ]
          }
        ],
        "summary": "Create Sub-Account (Formerly Location)",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "create-location"
      }
    },
    "/locations/search": {
      "get": {
        "description": "Search Sub-Account (Formerly Location)",
        "operationId": "search-locations",
        "parameters": [
          {
            "description": "The company/agency id on which you want to perform the search",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "query",
            "name": "companyId",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The value by which the results should be skipped. Default will be 0",
            "example": "1",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": "0",
              "type": "string"
            }
          },
          {
            "description": "The value by which the results should be limited. Default will be 10",
            "example": "10",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": "10",
              "type": "string"
            }
          },
          {
            "description": "The order in which the results should be returned - Allowed values asc, desc. Default will be asc",
            "example": "asc",
            "in": "query",
            "name": "order",
            "required": false,
            "schema": {
              "default": "asc",
              "type": "string"
            }
          },
          {
            "example": "johndoe@example.com",
            "in": "query",
            "name": "email",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationsSearchSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "locations.readonly"
            ]
          },
          {
            "Location-Access": [
              "locations.readonly"
            ]
          }
        ],
        "summary": "Search",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "search-locations"
      }
    },
    "/locations/{locationId}": {
      "get": {
        "description": "Get details of a Sub-Account (Formerly Location) by passing the sub-account id",
        "operationId": "get-location",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLocationByIdSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "locations.readonly"
            ]
          },
          {
            "Agency-Access": [
              "locations.readonly"
            ]
          }
        ],
        "summary": "Get Sub-Account (Formerly Location)",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-location"
      },
      "put": {
        "description": "Update a Sub-Account (Formerly Location) based on the data provided",
        "operationId": "put-location",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLocationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateLocationSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful update response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "locations.write"
            ]
          }
        ],
        "summary": "Put Sub-Account (Formerly Location)",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "put-location"
      }
    },
    "/locations/{locationId}/conversationChannels/{type}": {
      "get": {
        "description": "Get the conversation channel providers configured for a location by type (SMS or Email)",
        "operationId": "get-conversation-channel",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Channel type to retrieve providers for",
            "in": "path",
            "name": "type",
            "required": true,
            "schema": {
              "enum": [
                "SMS",
                "Email"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetConversationChannelListSuccessfulResponseDto"
                }
              }
            },
            "description": "Retrieved all the conversation channels"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "locations.readonly"
            ]
          }
        ],
        "summary": "Get Conversation Channel",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-conversation-channel"
      }
    },
    "/locations/{locationId}/customFields": {
      "get": {
        "description": "Get Custom Fields",
        "operationId": "get-custom-fields",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Model of the custom field you want to retrieve",
            "example": "opportunity",
            "in": "query",
            "name": "model",
            "required": false,
            "schema": {
              "enum": [
                "contact",
                "opportunity",
                "all"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldsListSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.readonly"
            ]
          }
        ],
        "summary": "Get Custom Fields",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-custom-fields"
      },
      "post": {
        "description": "Create Custom Field",
        "operationId": "locations.create-custom-field",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationsCreateCustomFieldsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationsCustomFieldSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Create Custom Field",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "create-custom-field"
      }
    },
    "/locations/{locationId}/customFields/upload": {
      "post": {
        "description": "Uploads File to customFields",
        "operationId": "upload-file-customFields",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "$ref": "#/components/schemas/FileUploadBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileUploadResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customFields.write"
            ]
          }
        ],
        "summary": "Uploads File to customFields",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "upload-file-customFields"
      }
    },
    "/locations/{locationId}/customFields/{id}": {
      "delete": {
        "description": "Delete Custom Field",
        "operationId": "locations.delete-custom-field",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Custom Field Id",
            "example": "00NhGCcN1tlO8ZHcu7Wb",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldDeleteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete Custom Field",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "delete-custom-field"
      },
      "get": {
        "description": "Get Custom Field",
        "operationId": "get-custom-field",
        "parameters": [
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "Custom Field Id or Field Key (e.g. \"contact.first_name\" or \"opportunity.pipeline_id\")",
            "examples": {
              "field_key": {
                "summary": "Custom Field Key",
                "value": "contact.first_name"
              },
              "id": {
                "summary": "Custom Field ID",
                "value": "00NhGCcN1tlO8ZHcu7Wb"
              }
            },
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationsCustomFieldSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get Custom Field",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-custom-field"
      },
      "put": {
        "description": "Update Custom Field",
        "operationId": "locations.update-custom-field",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Custom Field Id",
            "example": "00NhGCcN1tlO8ZHcu7Wb",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocationsUpdateCustomFieldsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationsCustomFieldSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update Custom Field",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "update-custom-field"
      }
    },
    "/locations/{locationId}/customValues": {
      "get": {
        "description": "Get Custom Values",
        "operationId": "get-custom-values",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomValuesListSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customValues.readonly"
            ]
          }
        ],
        "summary": "Get Custom Values",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-custom-values"
      },
      "post": {
        "description": "Create Custom Value",
        "operationId": "create-custom-value",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/customValuesDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomValueIdSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/customValues.write"
            ]
          }
        ],
        "summary": "Create Custom Value",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "create-custom-value"
      }
    },
    "/locations/{locationId}/customValues/{id}": {
      "delete": {
        "description": "Delete Custom Value",
        "operationId": "delete-custom-value",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Custom Value Id",
            "example": "kOBjMVAJhFuUeYIojVet",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomValueDeleteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete Custom Value",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "delete-custom-value"
      },
      "get": {
        "description": "Get Custom Value",
        "operationId": "get-custom-value",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Custom Value Id",
            "example": "kOBjMVAJhFuUeYIojVet",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomValueIdSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get Custom Value",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-custom-value"
      },
      "put": {
        "description": "Update Custom Value",
        "operationId": "update-custom-value",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Custom Value Id",
            "example": "kOBjMVAJhFuUeYIojVet",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/customValuesDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomValueIdSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update Custom Value",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "update-custom-value"
      }
    },
    "/locations/{locationId}/permissions": {
      "get": {
        "description": "Get Sub-Account (Formerly Location) permissions",
        "operationId": "get-location-permissions",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "locations/write"
            ]
          }
        ],
        "summary": "Get Permissions",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-location-permissions"
      },
      "put": {
        "description": "Update Sub-Account (Formerly Location) permissions",
        "operationId": "update-location-permissions",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePermissionsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "locations/write"
            ]
          }
        ],
        "summary": "Update Permissions",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "update-location-permissions"
      }
    },
    "/locations/{locationId}/recurring-tasks": {
      "post": {
        "description": "Create Recurring Task",
        "operationId": "create-recurring-task",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RecurringTaskCreateDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecurringTaskSingleResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Create Recurring Task",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "create-recurring-task"
      }
    },
    "/locations/{locationId}/recurring-tasks/{id}": {
      "delete": {
        "description": "Delete Recurring Task",
        "operationId": "delete-recurring-task",
        "parameters": [
          {
            "description": "Recurring Task Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteRecurringTaskResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete Recurring Task",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "delete-recurring-task"
      },
      "get": {
        "description": "Get Recurring Task By Id",
        "operationId": "get-recurring-task-by-id",
        "parameters": [
          {
            "description": "Recurring Task Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecurringTaskSingleResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get Recurring Task By Id",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-recurring-task-by-id"
      },
      "put": {
        "description": "Update Recurring Task",
        "operationId": "update-recurring-task",
        "parameters": [
          {
            "description": "Recurring Task Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RecurringTaskUpdateDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecurringTaskSingleResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update Recurring Task",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "update-recurring-task"
      }
    },
    "/locations/{locationId}/tags": {
      "get": {
        "description": "Get Sub-Account (Formerly Location) Tags",
        "operationId": "get-location-tags",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationTagsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/tags.readonly"
            ]
          }
        ],
        "summary": "Get Tags",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-location-tags"
      },
      "post": {
        "description": "Create tag",
        "operationId": "create-tag",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/tagBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationTagSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/tags.write"
            ]
          }
        ],
        "summary": "Create Tag",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "create-tag"
      }
    },
    "/locations/{locationId}/tags/{tagId}": {
      "delete": {
        "description": "Delete tag",
        "operationId": "delete-tag",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Tag Id",
            "example": "flGwEuzsfJOia1i1ikRN",
            "in": "path",
            "name": "tagId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationTagDeleteSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete tag",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "delete-tag"
      },
      "get": {
        "description": "Get tag by id",
        "operationId": "get-tag-by-id",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Tag Id",
            "example": "flGwEuzsfJOia1i1ikRN",
            "in": "path",
            "name": "tagId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationTagSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get tag by id",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-tag-by-id"
      },
      "put": {
        "description": "Update tag",
        "operationId": "update-tag",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Tag Id",
            "example": "flGwEuzsfJOia1i1ikRN",
            "in": "path",
            "name": "tagId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/tagBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationTagSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update tag",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "update-tag"
      }
    },
    "/locations/{locationId}/tasks/search": {
      "post": {
        "description": "Task Search",
        "operationId": "task-search",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TaskSearchParamsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationTaskListSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/tasks.readonly"
            ]
          }
        ],
        "summary": "Task Search Filter",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "task-search"
      }
    },
    "/locations/{locationId}/templates": {
      "get": {
        "description": "GET all or email/sms templates",
        "operationId": "GET-all-or-email-sms-templates",
        "parameters": [
          {
            "example": false,
            "in": "query",
            "name": "deleted",
            "required": false,
            "schema": {
              "default": false,
              "type": "boolean"
            }
          },
          {
            "example": "1",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": "0",
              "type": "string"
            }
          },
          {
            "example": "25",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": "25",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "enum": [
                "sms",
                "email",
                "whatsapp"
              ],
              "type": "string"
            }
          },
          {
            "description": "Origin Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "originId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTemplatesSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations/templates.readonly"
            ]
          }
        ],
        "summary": "GET all or email/sms templates",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "GET-all-or-email-sms-templates"
      }
    },
    "/locations/{locationId}/templates/{id}": {
      "delete": {
        "description": "DELETE an email/sms template",
        "operationId": "DELETE-an-email-sms-template",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Template Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "DELETE an email/sms template",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "DELETE-an-email-sms-template"
      }
    },
    "/locations/{locationId}/timezones": {
      "get": {
        "description": "Fetch the available timezones",
        "operationId": "get-timezones",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "locations.readonly"
            ]
          },
          {
            "Location-Access": [
              "locations.readonly"
            ]
          }
        ],
        "summary": "Fetch Timezones",
        "tags": [
          "locations"
        ],
        "x-ghl-operation-id": "get-timezones"
      }
    },
    "/marketplace/app/{appId}/installations": {
      "delete": {
        "description": "Uninstalls an application from your company or a specific location. This will remove the application`s access and stop all its functionalities",
        "operationId": "uninstall-application",
        "parameters": [
          {
            "description": "The application id which is to be uninstalled.",
            "in": "path",
            "name": "appId",
            "required": true,
            "schema": {
              "example": "674587703dfd4161f1e3c557",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteIntegrationBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteIntegrationResponse"
                }
              }
            },
            "description": "Successfully uninstalled the application"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "oauth.write"
            ]
          },
          {
            "Agency-Access": [
              "oauth.write"
            ]
          }
        ],
        "summary": "Uninstall an application",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "uninstall-application"
      },
      "get": {
        "description": "Fetches installer details for the authenticated user. This endpoint returns information about the company, location, user, and installation details associated with the current OAuth token.",
        "operationId": "get-installer-details",
        "parameters": [
          {
            "description": "ID of the app to get installer details",
            "in": "path",
            "name": "appId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetInstallerDetailsResponseDTO"
                }
              }
            },
            "description": "Successfully retrieved installer details. Returns company, location, user, and installation information."
          },
          "400": {
            "description": "Bad Request. Invalid request parameters or missing required data."
          },
          "403": {
            "description": "Forbidden. The client does not have necessary permissions to access installer details."
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "marketplace-installer-details.readonly"
            ]
          },
          {
            "Agency-Access-Only": [
              "marketplace-installer-details.readonly"
            ]
          }
        ],
        "summary": "Get Installer Details",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "get-installer-details"
      }
    },
    "/marketplace/app/{appId}/rebilling-config/location/{locationId}": {
      "get": {
        "description": "Get rebilling config for an app subscription and usage plans for the authenticated sub-account. This endpoint returns the subscription and usage plans for an app.",
        "operationId": "get-rebilling-config-for-app",
        "parameters": [
          {
            "description": "ID of the app to get rebilling config",
            "in": "path",
            "name": "appId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "ID of the Sub-Account location to get rebilling config for",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRebillingConfigResponseDTO"
                }
              }
            },
            "description": "Successfully retrieved rebilling config for the app"
          },
          "400": {
            "description": "Bad Request. Invalid request parameters or missing required data."
          },
          "403": {
            "description": "Forbidden. The client does not have necessary permissions to access installer details."
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "oauth.readonly"
            ]
          }
        ],
        "summary": "Get rebilling config for an app subscription and usage plans",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "get-rebilling-config-for-app"
      }
    },
    "/marketplace/billing/charges": {
      "get": {
        "description": "Get all wallet charges",
        "operationId": "getCharges",
        "parameters": [
          {
            "description": "Billing Meter ID (you can find this on your app's pricing page on the developer portal)",
            "in": "query",
            "name": "meterId",
            "required": false,
            "schema": {
              "example": "680b97022b4a34420f5f9b93",
              "type": "string"
            }
          },
          {
            "description": "Event ID / Transaction ID",
            "in": "query",
            "name": "eventId",
            "required": false,
            "schema": {
              "example": "evt_abc123",
              "type": "string"
            }
          },
          {
            "description": "Filter results by User ID that your server passed via API when the charge was created",
            "in": "query",
            "name": "userId",
            "required": false,
            "schema": {
              "example": "user_abc123",
              "type": "string"
            }
          },
          {
            "description": "Filter results AFTER a specific date. Use this in combination with endDate to filter results in a specific time window.",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": "2025-03-26",
              "type": "string"
            }
          },
          {
            "description": "Filter results BEFORE a specific date. Use this in combination with startDate to filter results in a specific time window.",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": "2025-03-26",
              "type": "string"
            }
          },
          {
            "description": "Number of records to skip",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Maximum number of records to return",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": 10,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "charges": {
                      "description": "List of wallet charges",
                      "example": [],
                      "items": {
                        "properties": {
                          "amountCharged": {
                            "description": "Total amount charged",
                            "example": 0.1,
                            "type": "number"
                          },
                          "appId": {
                            "description": "App ID",
                            "example": "6578278e879ad2646715ba9c",
                            "type": "string"
                          },
                          "chargeId": {
                            "description": "Charge ID",
                            "example": "charge_123",
                            "type": "string"
                          },
                          "createdAt": {
                            "description": "Timestamp when the charge was created in our system",
                            "example": "2025-03-26T00:00:00.000Z",
                            "format": "date-time",
                            "type": "string"
                          },
                          "currency": {
                            "description": "Currency of the transaction. We currently support USD only.",
                            "example": "USD",
                            "type": "string"
                          },
                          "entityId": {
                            "description": "If the entityType is Location, entityld would be locationld.",
                            "example": "ve9EPM428h8vShlRW1KT",
                            "type": "string"
                          },
                          "entityType": {
                            "description": "Indicates who was charged? Currently, we support charges for 'location' only",
                            "example": "location",
                            "type": "string"
                          },
                          "meta": {
                            "description": "meta object contains details that were sent while creating the charge via the API - eventID, description, eventTime, userld",
                            "example": {
                              "description": "Charge for 10 SMS messages",
                              "eventId": "evt_abc123"
                            },
                            "type": "object"
                          },
                          "meterId": {
                            "description": "Billing Meter ID (you can find this on your app's pricing page)",
                            "example": "680b97022b4a34420f5f9b93",
                            "type": "string"
                          },
                          "pricePerUnit": {
                            "description": "Price per unit for the charge",
                            "example": 0.01,
                            "type": "number"
                          },
                          "refunded": {
                            "description": "Value is 'true' if the charge has subsequently been refunded.",
                            "example": false,
                            "type": "boolean"
                          },
                          "transactionType": {
                            "description": "This can be one of two values - 'charge' or 'refund'",
                            "example": "charge",
                            "type": "string"
                          },
                          "units": {
                            "description": "Number of units that the sub-account was charged for",
                            "example": 10,
                            "type": "number"
                          },
                          "updatedAt": {
                            "description": "Timestamp when the charge was last updated in our system",
                            "example": "2025-03-26T00:00:00.000Z",
                            "format": "date-time",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "type": "array"
                    },
                    "count": {
                      "deprecated": true,
                      "description": "Total number of charges",
                      "example": 100,
                      "type": "number"
                    },
                    "pagination": {
                      "description": "Pagination metadata for the charges list",
                      "example": {
                        "limit": 10,
                        "skip": 0,
                        "total": 100
                      },
                      "properties": {
                        "limit": {
                          "description": "Maximum number of records to return",
                          "example": 10,
                          "type": "number"
                        },
                        "skip": {
                          "description": "Number of records to skip",
                          "example": 0,
                          "type": "number"
                        },
                        "total": {
                          "description": "Total number of charges",
                          "example": 100,
                          "type": "number"
                        }
                      },
                      "type": "object"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Returns list of wallet charges"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "charges.readonly"
            ]
          }
        ],
        "summary": "Get all wallet charges",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "getCharges"
      },
      "post": {
        "description": "Create a new wallet charge",
        "operationId": "charge",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RaiseChargeBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "chargeId": {
                      "description": "Unique identifier of the created charge",
                      "example": "charge_123",
                      "type": "string"
                    },
                    "success": {
                      "description": "Indicates whether the charge was created successfully",
                      "example": true,
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Charge created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "message": {
                      "description": "Error message describing the bad request",
                      "example": "Invalid request body",
                      "type": "string"
                    },
                    "statusCode": {
                      "description": "HTTP status code",
                      "example": 400,
                      "type": "number"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Bad request"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "charges.write"
            ]
          }
        ],
        "summary": "Create a new wallet charge",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "charge"
      }
    },
    "/marketplace/billing/charges/has-funds": {
      "get": {
        "description": "Check if account has sufficient funds",
        "operationId": "hasFunds",
        "parameters": [],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "hasFunds": {
                      "description": "Indicates whether the sub-account has sufficient funds to be charged",
                      "example": true,
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Returns fund availability status"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "charges.readonly"
            ]
          }
        ],
        "summary": "Check if account has sufficient funds",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "hasFunds"
      }
    },
    "/marketplace/billing/charges/{chargeId}": {
      "delete": {
        "description": "Delete a wallet charge",
        "operationId": "deleteCharge",
        "parameters": [
          {
            "description": "ID of the charge to delete",
            "in": "path",
            "name": "chargeId",
            "required": true,
            "schema": {
              "example": "charge_123",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "success": {
                      "description": "Indicates whether the charge was deleted successfully",
                      "example": true,
                      "type": "boolean"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Charge deleted successfully"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "message": {
                      "description": "Error message describing why the charge was not found",
                      "example": "Charge not found",
                      "type": "string"
                    },
                    "statusCode": {
                      "description": "HTTP status code",
                      "example": 404,
                      "type": "number"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Charge not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "charges.write"
            ]
          }
        ],
        "summary": "Delete a wallet charge",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "deleteCharge"
      },
      "get": {
        "description": "Get specific wallet charge details",
        "operationId": "getSpecificCharge",
        "parameters": [
          {
            "description": "ID of the charge to retrieve",
            "in": "path",
            "name": "chargeId",
            "required": true,
            "schema": {
              "example": "charge_123",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "amountCharged": {
                      "description": "Total amount charged",
                      "example": 0.1,
                      "type": "number"
                    },
                    "appId": {
                      "description": "App ID",
                      "example": "6578278e879ad2646715ba9c",
                      "type": "string"
                    },
                    "chargeId": {
                      "description": "Charge ID",
                      "example": "charge_123",
                      "type": "string"
                    },
                    "createdAt": {
                      "description": "Timestamp when the charge was created in our system",
                      "example": "2025-03-26T00:00:00.000Z",
                      "format": "date-time",
                      "type": "string"
                    },
                    "currency": {
                      "description": "Currency of the transaction. We currently support USD only.",
                      "example": "USD",
                      "type": "string"
                    },
                    "entityId": {
                      "description": "If the entityType is Location, entityld would be locationld.",
                      "example": "ve9EPM428h8vShlRW1KT",
                      "type": "string"
                    },
                    "entityType": {
                      "description": "Indicates who was charged? Currently, we support charges for 'location' only",
                      "example": "location",
                      "type": "string"
                    },
                    "meta": {
                      "description": "meta object contains details that were sent while creating the charge via the API - eventID, description, eventTime, userld",
                      "example": {
                        "description": "Charge for 10 SMS messages",
                        "eventId": "evt_abc123"
                      },
                      "type": "object"
                    },
                    "meterId": {
                      "description": "Billing Meter ID (you can find this on your app's pricing page)",
                      "example": "680b97022b4a34420f5f9b93",
                      "type": "string"
                    },
                    "pricePerUnit": {
                      "description": "Price per unit for the charge",
                      "example": 0.01,
                      "type": "number"
                    },
                    "refunded": {
                      "description": "Value is 'true' if the charge has subsequently been refunded.",
                      "example": false,
                      "type": "boolean"
                    },
                    "transactionType": {
                      "description": "This can be one of two values - 'charge' or 'refund'",
                      "example": "charge",
                      "type": "string"
                    },
                    "units": {
                      "description": "Number of units that the sub-account was charged for",
                      "example": 10,
                      "type": "number"
                    },
                    "updatedAt": {
                      "description": "Timestamp when the charge was last updated in our system",
                      "example": "2025-03-26T00:00:00.000Z",
                      "format": "date-time",
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Returns charge details"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "message": {
                      "description": "Error message describing why the charge was not found",
                      "example": "Charge not found",
                      "type": "string"
                    },
                    "statusCode": {
                      "description": "HTTP status code",
                      "example": 404,
                      "type": "number"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Charge not found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access-Only": [
              "charges.readonly"
            ]
          }
        ],
        "summary": "Get specific wallet charge details",
        "tags": [
          "marketplace"
        ],
        "x-ghl-operation-id": "getSpecificCharge"
      }
    },
    "/medias/delete-files": {
      "put": {
        "description": "Soft-deletes or trashes multiple files and folders in a single request",
        "operationId": "bulk-delete-media-objects",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteMediaObjectsBodyParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "example": [
                    {
                      "deleted": true,
                      "id": "686f630df0d3166d68fbcec2"
                    }
                  ]
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Bulk Delete / Trash Files or Folders",
        "tags": [
          "medias"
        ],
        "x-ghl-operation-id": "bulk-delete-media-objects"
      }
    },
    "/medias/files": {
      "get": {
        "description": "Fetches list of files and folders from the media storage",
        "operationId": "fetch-media-content",
        "parameters": [
          {
            "description": "Number of files to skip in listing",
            "example": "5",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Number of files to show in the listing",
            "example": "10",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Field to sorting the file listing by",
            "example": "createdAt",
            "in": "query",
            "name": "sortBy",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Direction in which file needs to be sorted",
            "example": "asc",
            "in": "query",
            "name": "sortOrder",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Type",
            "example": "file",
            "in": "query",
            "name": "type",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Query text",
            "example": "Test file",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "AltType",
            "example": "location",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "parent id or folder id",
            "in": "query",
            "name": "parentId",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Fetch all files or folders",
            "example": "false",
            "in": "query",
            "name": "fetchAll",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetFilesResponseDTO"
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Location-Access": [
              "medias.readonly"
            ]
          }
        ],
        "summary": "Get List of Files/ Folders",
        "tags": [
          "medias"
        ],
        "x-ghl-operation-id": "fetch-media-content"
      }
    },
    "/medias/folder": {
      "post": {
        "description": "Creates a new folder in the media storage",
        "operationId": "create-media-folder",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateFolderParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDTO"
                }
              }
            },
            "description": "Returns the newly created folder object"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create Folder",
        "tags": [
          "medias"
        ],
        "x-ghl-operation-id": "create-media-folder"
      }
    },
    "/medias/update-files": {
      "put": {
        "description": "Updates metadata or status of multiple files and folders",
        "operationId": "bulk-update-media-objects",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaObjects"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "example": [
                    {
                      "id": "686f9817f0d3165be9fbcef6",
                      "updated": true
                    }
                  ]
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Bulk Update Files/ Folders",
        "tags": [
          "medias"
        ],
        "x-ghl-operation-id": "bulk-update-media-objects"
      }
    },
    "/medias/upload-file": {
      "post": {
        "description": "If hosted is set to true then fileUrl is required. Else file is required. If adding a file, maximum allowed is 25 MB. For video files, the maximum allowed size is 500 MB.",
        "operationId": "upload-media-content",
        "parameters": [],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "properties": {
                  "file": {
                    "format": "binary",
                    "type": "string"
                  },
                  "fileUrl": {
                    "type": "string"
                  },
                  "hosted": {
                    "type": "boolean"
                  },
                  "name": {
                    "type": "string"
                  },
                  "parentId": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediasUploadFileResponseDTO"
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Location-Access": [
              "medias.write"
            ]
          }
        ],
        "summary": "Upload File into Media Storage",
        "tags": [
          "medias"
        ],
        "x-ghl-operation-id": "upload-media-content"
      }
    },
    "/medias/{id}": {
      "delete": {
        "description": "Deletes specific file or folder from the media storage",
        "operationId": "delete-media-content",
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "AltType",
            "example": "location",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Location-Access": [
              "medias.write"
            ]
          }
        ],
        "summary": "Delete File or Folder",
        "tags": [
          "medias"
        ],
        "x-ghl-operation-id": "delete-media-content"
      },
      "post": {
        "description": "Updates a single file or folder by ID",
        "operationId": "update-media-object",
        "parameters": [
          {
            "description": "Unique identifier of the file or folder to update",
            "example": "686f9817f0d3165be9fbcef6",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateObject"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "example": {
                    "traceId": "33a641a2-c4a6-4123-aa82-c5b84f1a14ee",
                    "updated": true
                  }
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update File/ Folder",
        "tags": [
          "medias"
        ],
        "x-ghl-operation-id": "update-media-object"
      }
    },
    "/oauth/installed-locations": {
      "get": {
        "description": "This API allows you fetch location where app is installed upon",
        "operationId": "get-installed-location",
        "parameters": [
          {
            "description": "Max items per page (1-100). Replaces legacy `limit` parameter per AIP-158.",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "default": 20,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "Opaque token returned in a previous response to fetch the next page. Replaces legacy `skip` parameter per AIP-158.",
            "in": "query",
            "name": "pageToken",
            "required": false,
            "schema": {
              "example": "example-token",
              "type": "string"
            }
          },
          {
            "description": "Parameter to search for the installed location by name",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "location name",
              "type": "string"
            }
          },
          {
            "description": "Filters out location which are installed for specified app under the specified company",
            "in": "query",
            "name": "isInstalled",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          },
          {
            "description": "When true, restricts the list to locations the current user has access to (for restricted agency admins and account admins). When false or omitted, no user-based filter is applied for installed list; for backward compatibility, install list (isInstalled=false) is still filtered by user when this param is omitted.",
            "in": "query",
            "name": "restrictToUserLocations",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          },
          {
            "description": "Parameter to search by the companyId",
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Parameter to search by the appId",
            "in": "query",
            "name": "appId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "VersionId of the app",
            "in": "query",
            "name": "versionId",
            "required": false,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "Filters out locations which are installed for specified app in trial mode",
            "in": "query",
            "name": "onTrial",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          },
          {
            "description": "Filters out location which are installed for specified app under the specified planId",
            "in": "query",
            "name": "planId",
            "required": false,
            "schema": {
              "example": true,
              "type": "string"
            }
          },
          {
            "description": "locationId",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "1245",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetInstalledLocationsV3SuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AipErrorResponseDto"
                }
              }
            },
            "description": "Invalid argument (AIP error envelope)"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AipErrorResponseDto"
                }
              }
            },
            "description": "App not found (AIP error envelope)"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access-Only": [
              "oauth.readonly"
            ]
          }
        ],
        "summary": "Get Location where app is installed",
        "tags": [
          "oauth"
        ],
        "x-ghl-operation-id": "get-installed-location",
        "x-version-added": "v3"
      }
    },
    "/objects/": {
      "get": {
        "description": "Get all objects for a location. Supported Objects are contact, opportunity, business and custom objects.To understand objects and records, please have a look at the documentation here : https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0",
        "externalDocs": {
          "description": "To understand objects and records, please have a look the documentation.",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0"
        },
        "operationId": "get-object-by-location-id",
        "parameters": [
          {
            "description": "location id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "632c34b4c9b7da3358ac9891",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomObjectListResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "objects/schema.readonly"
            ]
          }
        ],
        "summary": "Get all objects for a location",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "get-object-by-location-id"
      },
      "post": {
        "description": "Allows you to create a custom object schema. To understand objects and records, please have a look at the documentation here : https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0",
        "externalDocs": {
          "description": "To understand objects and records, please have a look at the documentation here ",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0"
        },
        "operationId": "create-custom-object-schema",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomObjectSchemaDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomObjectResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "objects/schema.write"
            ]
          }
        ],
        "summary": "Create Custom Object",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "create-custom-object-schema"
      }
    },
    "/objects/{key}": {
      "get": {
        "description": "Retrieve Object Schema by key or ID. This will return the schema of the custom object, including all its fields and properties. Supported objects include contact, opportunity, business and custom objects.To understand objects and records, please have a look the documentation here : https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0",
        "externalDocs": {
          "description": "To understand objects and records, please have a look the documentation.",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0"
        },
        "operationId": "get-object-schema-by-key",
        "parameters": [
          {
            "description": "key of the custom or standard object. For custom objects, the key must include the prefix “custom_objects.”. This key can be found on the Object Details page under Settings in the UI.",
            "in": "path",
            "name": "key",
            "required": true,
            "schema": {
              "example": "custom_objects.pet",
              "type": "string"
            }
          },
          {
            "description": "location id of the sub account",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "632c34b4c9b7da3358ac9891",
              "type": "string"
            }
          },
          {
            "description": "Fetch Properties , Fetches all the standard / custom fields of the object when set to true",
            "in": "query",
            "name": "fetchProperties",
            "required": false,
            "schema": {
              "example": true,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomObjectByIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "objects/schema.readonly"
            ]
          }
        ],
        "summary": "Get Object Schema by key / id",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "get-object-schema-by-key"
      },
      "put": {
        "description": "Update Custom Object Schema  or standard object's like contact, opportunity, business searchable fields. To understand objects and records, please have a look at the documentation here : https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0",
        "externalDocs": {
          "description": "To understand objects and records, please have a look at the documentation here ",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0"
        },
        "operationId": "update-custom-object",
        "parameters": [
          {
            "description": "key of the custom or standard object. For custom objects, the key must include the prefix “custom_objects.”. This key can be found on the Object Details page under Settings in the UI.",
            "in": "path",
            "name": "key",
            "required": true,
            "schema": {
              "example": "custom_objects.pet",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomObjectSchemaDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomObjectResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "objects/schema.write"
            ]
          }
        ],
        "summary": "Update Object Schema By Key / Id",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "update-custom-object"
      }
    },
    "/objects/{schemaKey}/records": {
      "post": {
        "description": "Create a Custom Object Record. Supported Objects business and custom objects. Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0/87cpx-376296",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-175596/e2f3e9f2e111d69/87cpx-275236"
        },
        "operationId": "create-object-record",
        "parameters": [
          {
            "description": "The key of the Custom Object / Standard Object Schema. For custom objects, the key must include the “custom_objects.” prefix, while standard objects use their respective object keys. This information is available on the Custom Objects Details page under Settings.",
            "in": "path",
            "name": "schemaKey",
            "required": true,
            "schema": {
              "example": "custom_objects.pet or business.email (for company's email)",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomObjectRecordDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecordByIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "objects/record.write"
            ]
          }
        ],
        "summary": "Create Record",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "create-object-record"
      }
    },
    "/objects/{schemaKey}/records/search": {
      "post": {
        "description": "Supported Objects are custom objects and standard objects like \"business\". Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0/87cpx-379336",
        "operationId": "search-object-records",
        "parameters": [
          {
            "description": "custom object key",
            "in": "path",
            "name": "schemaKey",
            "required": true,
            "schema": {
              "example": "632c34b4c9b7da3358ac9891",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchRecordsBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchRecordResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "objects/record.readonly"
            ]
          }
        ],
        "summary": "Search Object Records",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "search-object-records"
      }
    },
    "/objects/{schemaKey}/records/{id}": {
      "delete": {
        "description": "Delete Record By Id . Supported Objects are business and custom objects.",
        "operationId": "delete-object-record",
        "parameters": [
          {
            "description": "The key of the Custom Object / Standard Object Schema. For custom objects, the key must include the “custom_objects.” prefix, while standard objects use their respective object keys. This information is available on the Custom Objects Details page under Settings.",
            "in": "path",
            "name": "schemaKey",
            "required": true,
            "schema": {
              "example": "custom_objects.pet or business.email (for company's email)",
              "type": "string"
            }
          },
          {
            "description": "id of the record to be updated. Available on the Record details page under the 3 dots or in the url",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "632c34b4c9b7da3358ac9891",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ObjectRecordDeleteResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete Record",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "delete-object-record"
      },
      "get": {
        "description": "Allows you to get a Standard Object like business and custom object record by Id",
        "operationId": "get-record-by-id",
        "parameters": [
          {
            "description": "The key of the Custom Object / Standard Object Schema. For custom objects, the key must include the “custom_objects.” prefix, while standard objects use their respective object keys. This information is available on the Custom Objects Details page under Settings.",
            "in": "path",
            "name": "schemaKey",
            "required": true,
            "schema": {
              "example": "custom_objects.pet or business.email (for company's email)",
              "type": "string"
            }
          },
          {
            "description": "id of the record to be updated. Available on the Record details page under the 3 dots or in the url",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "632c34b4c9b7da3358ac9891",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecordByIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get Record By Id",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "get-record-by-id"
      },
      "put": {
        "description": "Update a Custom Object Record by Id. Supported Objects are business and custom objects. Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-277156/93bf0c2e23177b0/87cpx-376296",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-175596/e2f3e9f2e111d69/87cpx-275676"
        },
        "operationId": "update-object-record",
        "parameters": [
          {
            "description": "The key of the Custom Object / Standard Object Schema. For custom objects, the key must include the “custom_objects.” prefix, while standard objects use their respective object keys. This information is available on the Custom Objects Details page under Settings.",
            "in": "path",
            "name": "schemaKey",
            "required": true,
            "schema": {
              "example": "custom_objects.pet or business.email (for company's email)",
              "type": "string"
            }
          },
          {
            "description": "id of the record to be updated. Available on the Record details page under the 3 dots or in the url",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "632c34b4c9b7da3358ac9891",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomObjectRecordDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecordByIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Update Record",
        "tags": [
          "objects"
        ],
        "x-ghl-operation-id": "update-object-record"
      }
    },
    "/opportunities/": {
      "post": {
        "description": "Create Opportunity",
        "operationId": "create-opportunity",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateDtoV3"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPostOpportunitySuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.write"
            ]
          }
        ],
        "summary": "Create Opportunity",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "create-opportunity",
        "x-version-added": "v3"
      }
    },
    "/opportunities/lost-reason": {
      "get": {
        "description": "Get lost reason",
        "operationId": "get-lost-reason",
        "parameters": [
          {
            "description": "Identifier of the location (sub-account)",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          },
          {
            "description": "lost reason name",
            "in": "query",
            "name": "name",
            "required": false,
            "schema": {
              "example": "lost reason",
              "type": "string"
            }
          },
          {
            "description": "deleted",
            "in": "query",
            "name": "deleted",
            "required": false,
            "schema": {
              "default": false,
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "search query",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "dentist",
              "type": "string"
            }
          },
          {
            "description": "skip",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": 0,
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "limit",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "example": 10,
              "type": "number"
            }
          },
          {
            "description": "get count",
            "in": "query",
            "name": "getCount",
            "required": false,
            "schema": {
              "example": "field",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LostReasonsResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.readonly"
            ]
          }
        ],
        "summary": "Get lost reason",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "get-lost-reason"
      }
    },
    "/opportunities/pipelines": {
      "get": {
        "description": "Get Pipelines",
        "operationId": "get-pipelines",
        "parameters": [
          {
            "description": "Identifier of the location (sub-account) to retrieve pipelines for",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPipelinesSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.readonly"
            ]
          }
        ],
        "summary": "Get Pipelines",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "get-pipelines"
      }
    },
    "/opportunities/search": {
      "get": {
        "description": "Search Opportunity",
        "operationId": "search-opportunity",
        "parameters": [
          {
            "description": "Search query (max 75 characters)",
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "example": "john@example.com",
              "type": "string"
            }
          },
          {
            "description": "Filter by opportunity status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "open",
                "won",
                "lost",
                "abandoned",
                "all"
              ],
              "example": "open",
              "type": "string"
            }
          },
          {
            "description": "Campaign Id",
            "in": "query",
            "name": "campaignId",
            "required": false,
            "schema": {
              "example": "Y2I9XM7aO1hncuSOlc9L",
              "type": "string"
            }
          },
          {
            "description": "Opportunity Id",
            "in": "query",
            "name": "id",
            "required": false,
            "schema": {
              "example": "123akv4LFn6C9frZoy3e",
              "type": "string"
            }
          },
          {
            "description": "Sort order for results (e.g. added_asc, added_desc, name_asc, name_desc)",
            "in": "query",
            "name": "order",
            "required": false,
            "schema": {
              "example": "added_asc",
              "type": "string"
            }
          },
          {
            "description": "End date",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": "mm-dd-yyyy",
              "type": "string"
            }
          },
          {
            "description": "Start After",
            "in": "query",
            "name": "startAfter",
            "required": false,
            "schema": {
              "example": "1628008053263",
              "type": "string"
            }
          },
          {
            "description": "Start After Id",
            "in": "query",
            "name": "startAfterId",
            "required": false,
            "schema": {
              "example": "UIaE1WjAwWKdlyD7osQI",
              "type": "string"
            }
          },
          {
            "description": "Start date",
            "in": "query",
            "name": "date",
            "required": false,
            "schema": {
              "example": "mm-dd-yyyy",
              "type": "string"
            }
          },
          {
            "description": "Filter by country code (ISO 3166-1 alpha-2)",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "example": "US",
              "type": "string"
            }
          },
          {
            "description": "Page number for pagination",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "example": 1,
              "type": "number"
            }
          },
          {
            "description": "Limit Per Page records count. will allow maximum up to 100 and default will be 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 20,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "get Tasks in contact",
            "in": "query",
            "name": "getTasks",
            "required": false,
            "schema": {
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "get Notes in contact",
            "in": "query",
            "name": "getNotes",
            "required": false,
            "schema": {
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "get Calender event in contact",
            "in": "query",
            "name": "getCalendarEvents",
            "required": false,
            "schema": {
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "i2SpAtBVHSVea1sL6oah",
              "type": "string"
            }
          },
          {
            "description": "Pipeline Id",
            "in": "query",
            "name": "pipelineId",
            "required": false,
            "schema": {
              "example": "bCkKGpDsyPP4peuKowkG",
              "type": "string"
            }
          },
          {
            "description": "Stage Id",
            "in": "query",
            "name": "pipelineStageId",
            "required": false,
            "schema": {
              "example": "7915dedc-8f18-44d5-8bc3-77c04e994a10",
              "type": "string"
            }
          },
          {
            "description": "Contact Id",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "WFwVrSSjZ2CNHbZThQX2",
              "type": "string"
            }
          },
          {
            "description": "Filter by assigned user identifier",
            "in": "query",
            "name": "assignedTo",
            "required": false,
            "schema": {
              "example": "082goXVW3lIExEQPOnd3",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpportunitiesSearchSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.readonly"
            ]
          }
        ],
        "summary": "Search Opportunity",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "search-opportunity",
        "x-version-added": "v3"
      },
      "post": {
        "description": "Search Opportunities based on combinations of advanced filters. Documentation Link - https://doc.clickup.com/8631005/d/h/87cpx-424216/7bf11bc9b94f80f",
        "externalDocs": {
          "description": "Click here for more information",
          "url": "https://doc.clickup.com/8631005/d/h/87cpx-424216/7bf11bc9b94f80f"
        },
        "operationId": "search-opportunities-advanced",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OpportunitySearchBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostSearchSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.readonly"
            ]
          }
        ],
        "summary": "Search Opportunities",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "search-opportunities-advanced"
      }
    },
    "/opportunities/upsert": {
      "post": {
        "description": "Upsert Opportunity",
        "operationId": "Upsert-opportunity",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpsertOpportunityDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpsertOpportunitySuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.write"
            ]
          }
        ],
        "summary": "Upsert Opportunity",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "Upsert-opportunity"
      }
    },
    "/opportunities/{id}": {
      "delete": {
        "description": "Delete Opportunity",
        "operationId": "delete-opportunity",
        "parameters": [
          {
            "description": "Opportunity Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "yWQobCRIhRguQtD2llvk",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteUpdateOpportunitySuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.write"
            ]
          }
        ],
        "summary": "Delete Opportunity",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "delete-opportunity"
      },
      "get": {
        "description": "Get Opportunity",
        "operationId": "get-opportunity",
        "parameters": [
          {
            "description": "Opportunity Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "yWQobCRIhRguQtD2llvk",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPostOpportunitySuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.readonly"
            ]
          }
        ],
        "summary": "Get Opportunity",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "get-opportunity"
      },
      "put": {
        "description": "Update Opportunity",
        "operationId": "update-opportunity",
        "parameters": [
          {
            "description": "Opportunity Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "yWQobCRIhRguQtD2llvk",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpportunityDtoV3"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPostOpportunitySuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.write"
            ]
          }
        ],
        "summary": "Update Opportunity",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "update-opportunity",
        "x-version-added": "v3"
      }
    },
    "/opportunities/{id}/followers": {
      "delete": {
        "description": "Allows removal of one or all followers from an opportunity.",
        "operationId": "remove-followers-opportunity",
        "parameters": [
          {
            "description": "Opportunity Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          },
          {
            "description": "Set to true to remove all followers from the opportunity",
            "in": "query",
            "name": "isRemoveAllFollowers",
            "required": false,
            "schema": {
              "example": false,
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OpportunitiesFollowersDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpportunitiesDeleteFollowersSuccessfulResponseDto"
                }
              }
            },
            "description": "Followers successfully removed."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.write"
            ]
          }
        ],
        "summary": "Remove Followers",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "remove-followers-opportunity"
      },
      "post": {
        "description": "Add Followers",
        "operationId": "add-followers-opportunity",
        "parameters": [
          {
            "description": "Opportunity Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "sx6wyHhbFdRXh302Lunr",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OpportunitiesFollowersDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpportunitiesCreateAddFollowersSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.write"
            ]
          }
        ],
        "summary": "Add Followers",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "add-followers-opportunity"
      }
    },
    "/opportunities/{id}/status": {
      "put": {
        "description": "Update Opportunity Status",
        "operationId": "update-opportunity-status",
        "parameters": [
          {
            "description": "Opportunity Id",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "yWQobCRIhRguQtD2llvk",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStatusDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteUpdateOpportunitySuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "opportunities.write"
            ]
          }
        ],
        "summary": "Update Opportunity Status",
        "tags": [
          "opportunities"
        ],
        "x-ghl-operation-id": "update-opportunity-status"
      }
    },
    "/payments/coupon": {
      "delete": {
        "description": "The \"Delete Coupon\" API allows you to permanently remove a coupon from your system using its unique identifier. Use this endpoint to discontinue promotional offers or clean up unused coupons. Note that this action cannot be undone.",
        "operationId": "delete-coupon",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteCouponParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteCouponResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/coupons.write"
            ]
          }
        ],
        "summary": "Delete Coupon",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "delete-coupon"
      },
      "get": {
        "description": "The \"Get Coupon Details\" API enables you to retrieve comprehensive information about a specific coupon using either its unique identifier or promotional code. Use this endpoint to view coupon parameters, usage statistics, validity periods, and other promotional details.",
        "operationId": "get-coupon",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "BQdAwxa0ky1iK2sstLGJ",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "Coupon id",
            "in": "query",
            "name": "id",
            "required": true,
            "schema": {
              "example": "6241712be68f7a98102ba272",
              "type": "string"
            }
          },
          {
            "description": "Coupon code",
            "in": "query",
            "name": "code",
            "required": true,
            "schema": {
              "example": "DEAL50",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCouponResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/coupons.readonly"
            ]
          }
        ],
        "summary": "Fetch Coupon",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "get-coupon"
      },
      "post": {
        "description": "The \"Create Coupon\" API allows you to create a new promotional coupon with customizable parameters such as discount amount, validity period, usage limits, and applicable products. Use this endpoint to set up promotional offers and special discounts for your customers.",
        "operationId": "create-coupon",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCouponParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCouponResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/coupons.write"
            ]
          }
        ],
        "summary": "Create Coupon",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "create-coupon"
      },
      "put": {
        "description": "The \"Update Coupon\" API enables you to modify existing coupon details such as discount values, validity periods, usage limits, and other promotional parameters. Use this endpoint to adjust or extend promotional offers for your customers.",
        "operationId": "update-coupon",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCouponParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCouponResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/coupons.write"
            ]
          }
        ],
        "summary": "Update Coupon",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "update-coupon"
      }
    },
    "/payments/coupon/list": {
      "get": {
        "description": "The \"List Coupons\" API allows you to retrieve a list of all coupons available in your location. Use this endpoint to view all promotional offers and special discounts for your customers.",
        "operationId": "list-coupons",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "BQdAwxa0ky1iK2sstLGJ",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "Maximum number of coupons to return",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "example": 10,
              "type": "number"
            }
          },
          {
            "description": "Number of coupons to skip for pagination",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Filter coupons by status",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "scheduled",
                "active",
                "expired"
              ],
              "example": "active",
              "type": "string"
            }
          },
          {
            "description": "Search term to filter coupons by name or code",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "DEAL50",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCouponsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/coupons.readonly"
            ]
          }
        ],
        "summary": "List Coupons",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "list-coupons"
      }
    },
    "/payments/custom-provider/capabilities": {
      "put": {
        "description": "Toggle capabilities for the marketplace app tied to the OAuth client",
        "operationId": "custom-provider-marketplace-app-update-capabilities",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomProviderCapabilitiesDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCustomProviderCapabilitiesResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/custom-provider.write"
            ]
          }
        ],
        "summary": "Custom-provider marketplace app update capabilities",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "custom-provider-marketplace-app-update-capabilities"
      }
    },
    "/payments/custom-provider/disconnect": {
      "post": {
        "description": "API to disconnect an existing payment config for given location",
        "operationId": "disconnect-config",
        "parameters": [
          {
            "description": "Location id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "Lk3nlfk4lxlelVEwcW",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteCustomProvidersConfigDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DisconnectCustomProvidersResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "No such config exists for given locationId and marketplaceAppId"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/custom-provider.write"
            ]
          }
        ],
        "summary": "Disconnect existing provider config",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "disconnect-config"
      }
    },
    "/payments/custom-provider/provider": {
      "delete": {
        "description": "API to delete an association for an app and location",
        "operationId": "delete-integration",
        "parameters": [
          {
            "description": "Location id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "Lk3nlfk4lxlelVEwcW",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteCustomProvidersResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/custom-provider.write"
            ]
          }
        ],
        "summary": "Deleting an existing integration",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "delete-integration"
      },
      "post": {
        "description": "API to create a new association for an app and location",
        "operationId": "create-integration",
        "parameters": [
          {
            "description": "Location id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "Lk3nlfk4lxlelVEwcW",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomProvidersDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCustomProvidersResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/custom-provider.write"
            ]
          }
        ],
        "summary": "Create new integration",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "create-integration"
      }
    },
    "/payments/integrations/provider/whitelabel": {
      "get": {
        "description": "The \"List White-label Integration Providers\" API allows to retrieve a paginated list of integration providers. Customize your results by filtering whitelabel integration providers(which are built directly on top of Authorize.net or NMI) based on name or paginate through the list using the provided query parameters. This endpoint provides a straightforward way to explore and retrieve integration provider information.",
        "operationId": "list-integration-providers",
        "parameters": [
          {
            "description": "location Id / company Id based on altType",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Alt Type",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 0,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListWhitelabelIntegrationProviderResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/integration.readonly"
            ]
          }
        ],
        "summary": "List White-label Integration Providers",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "list-integration-providers"
      },
      "post": {
        "description": "The \"Create White-label Integration Provider\" API allows adding a new payment provider integration to the system which is built on top of Authorize.net or NMI. Use this endpoint to create a integration provider with the specified details. Ensure that the required information is provided in the request payload. This endpoint can be only invoked using marketplace-app token",
        "operationId": "create-integration provider",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWhiteLabelIntegrationProviderDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateWhitelabelIntegrationResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/integration.write"
            ]
          }
        ],
        "summary": "Create White-label Integration Provider",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "create-integration provider"
      }
    },
    "/payments/orders": {
      "get": {
        "description": "The \"List Orders\" API allows to retrieve a paginated list of orders. Customize your results by filtering orders based on name, alt type, order status, payment mode, date range, type of source, contact, funnel products or paginate through the list using the provided query parameters. This endpoint provides a straightforward way to explore and retrieve order information.",
        "operationId": "list-orders",
        "parameters": [
          {
            "description": "LocationId is the id of the sub-account.",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltId is the unique identifier e.g: location id.",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "Order status.",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "example": "completed",
              "type": "string"
            }
          },
          {
            "description": "Payment Status of the Order",
            "in": "query",
            "name": "paymentStatus",
            "required": false,
            "schema": {
              "enum": [
                "paid",
                "unpaid",
                "refunded",
                "partially_paid"
              ],
              "example": "unpaid",
              "type": "string"
            }
          },
          {
            "description": "Mode of payment.",
            "in": "query",
            "name": "paymentMode",
            "required": false,
            "schema": {
              "example": "live",
              "type": "string"
            }
          },
          {
            "description": "Starting interval of orders.",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "example": "2024-02-01",
              "type": "string"
            }
          },
          {
            "description": "Closing interval of orders.",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "example": "2024-02-13",
              "type": "string"
            }
          },
          {
            "description": "The name of the order for searching.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Awesome order",
              "type": "string"
            }
          },
          {
            "description": "Contact id for filtering of orders.",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "XPLSw2SVagl12LMDeTmQ",
              "type": "string"
            }
          },
          {
            "description": "Funnel product ids separated by comma.",
            "in": "query",
            "name": "funnelProductIds",
            "required": false,
            "schema": {
              "example": "61dd0c7dc077f712a5f787ff,61d6afc9d39ac5e35965c017",
              "type": "string"
            }
          },
          {
            "description": "Source id",
            "in": "query",
            "name": "sourceId",
            "required": false,
            "schema": {
              "example": "61dd0c7dc077f712a5f787ff",
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListOrdersResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/orders.readonly"
            ]
          }
        ],
        "summary": "List Orders",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "list-orders"
      }
    },
    "/payments/orders/{orderId}": {
      "get": {
        "description": "The \"Get Order by ID\" API allows to retrieve information for a specific order using its unique identifier. Use this endpoint to fetch details for a single order based on the provided order ID.",
        "operationId": "get-order-by-id",
        "parameters": [
          {
            "description": "ID of the order that needs to be returned",
            "in": "path",
            "name": "orderId",
            "required": true,
            "schema": {
              "example": "653f5e0cde5a1314e62a837c",
              "type": "string"
            }
          },
          {
            "description": "LocationId is the id of the sub-account.",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltId is the unique identifier e.g: location id.",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOrderResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Order not found"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/orders.readonly"
            ]
          }
        ],
        "summary": "Get Order by ID",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "get-order-by-id"
      }
    },
    "/payments/orders/{orderId}/fulfillments": {
      "get": {
        "description": "List all fulfillment history of an order",
        "operationId": "list-order-fulfillment",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "ID of the order that needs to be returned",
            "in": "path",
            "name": "orderId",
            "required": true,
            "schema": {
              "example": "653f5e0cde5a1314e62a837c",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListFulfillmentResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/orders.readonly"
            ]
          }
        ],
        "summary": "List fulfillment",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "list-order-fulfillment"
      },
      "post": {
        "description": "The \"Order Fulfillment\" API facilitates the process of fulfilling an order.",
        "operationId": "create-order-fulfillment",
        "parameters": [
          {
            "description": "ID of the order that needs to be returned",
            "in": "path",
            "name": "orderId",
            "required": true,
            "schema": {
              "example": "653f5e0cde5a1314e62a837c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateFulfillmentDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateFulfillmentResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/orders.write"
            ]
          }
        ],
        "summary": "Create order fulfillment",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "create-order-fulfillment"
      }
    },
    "/payments/orders/{orderId}/notes": {
      "get": {
        "description": "List all notes of an order",
        "operationId": "list-order-notes",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "ID of the order that needs to be returned",
            "in": "path",
            "name": "orderId",
            "required": true,
            "schema": {
              "example": "653f5e0cde5a1314e62a837c",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "List Order Notes",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "list-order-notes"
      }
    },
    "/payments/orders/{orderId}/record-payment": {
      "post": {
        "description": "The \"Record Order Payment\" API allows to record a payment for an order. Use this endpoint to record payment for an order and update the order status to \"Paid\".",
        "operationId": "record-order-payment",
        "parameters": [
          {
            "description": "Order ID",
            "in": "path",
            "name": "orderId",
            "required": true,
            "schema": {
              "example": "5e2d4c8e0e8b4e001c1c4f5d",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PostRecordOrderPaymentBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostRecordOrderPaymentResponse"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Order not found"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/orders.collectPayment"
            ]
          }
        ],
        "summary": "Record Order Payment",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "record-order-payment"
      }
    },
    "/payments/subscriptions": {
      "get": {
        "description": "The \"List Subscriptions\" API allows to retrieve a paginated list of subscriptions. Customize your results by filtering subscriptions based on name, alt type, subscription status, payment mode, date range, type of source, contact, subscription id, entity id, contact or paginate through the list using the provided query parameters. This endpoint provides a straightforward way to explore and retrieve subscription information.",
        "operationId": "list-subscriptions",
        "parameters": [
          {
            "description": "AltId is the unique identifier e.g: location id.",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltType is the type of identifier.",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "Entity id for filtering of subscriptions.",
            "in": "query",
            "name": "entityId",
            "required": false,
            "schema": {
              "example": "61dd0fe9c077f73e67f78803",
              "type": "string"
            }
          },
          {
            "description": "Mode of payment.",
            "in": "query",
            "name": "paymentMode",
            "required": false,
            "schema": {
              "example": "live",
              "type": "string"
            }
          },
          {
            "description": "Starting interval of subscriptions.",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "example": "2024-02-01",
              "type": "string"
            }
          },
          {
            "description": "Closing interval of subscriptions.",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "example": "2024-02-13",
              "type": "string"
            }
          },
          {
            "description": "Source of the subscriptions.",
            "in": "query",
            "name": "entitySourceType",
            "required": false,
            "schema": {
              "example": "funnel",
              "type": "string"
            }
          },
          {
            "description": "The name of the subscription for searching.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Awesome subscription",
              "type": "string"
            }
          },
          {
            "description": "Contact ID for the subscription",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "AmuzcoPBpgKeccNsFlib",
              "type": "string"
            }
          },
          {
            "description": "Subscription id for filtering of subscriptions.",
            "in": "query",
            "name": "id",
            "required": false,
            "schema": {
              "example": "64bf78af39118e4011926cba",
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Get the total payments collected for the subscription.",
            "in": "query",
            "name": "getPaymentsCollectedCount",
            "required": false,
            "schema": {
              "example": "true",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListSubscriptionResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/subscriptions.readonly"
            ]
          }
        ],
        "summary": "List Subscriptions",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "list-subscriptions"
      }
    },
    "/payments/subscriptions/{subscriptionId}": {
      "get": {
        "description": "The \"Get Subscription by ID\" API allows to retrieve information for a specific subscription using its unique identifier. Use this endpoint to fetch details for a single subscription based on the provided subscription ID.",
        "operationId": "get-subscription-by-id",
        "parameters": [
          {
            "description": "ID of the subscription that needs to be returned",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "schema": {
              "example": "6322e9c9e39fc14ab3ed7042",
              "type": "string"
            }
          },
          {
            "description": "AltId is the unique identifier e.g: location id.",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltType is the type of identifier.",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSubscriptionResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Subscription not found"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/subscriptions.readonly"
            ]
          }
        ],
        "summary": "Get Subscription by ID",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "get-subscription-by-id"
      }
    },
    "/payments/transactions": {
      "get": {
        "description": "The \"List Transactions\" API allows to retrieve a paginated list of transactions. Customize your results by filtering transactions based on name, alt type, transaction status, payment mode, date range, type of source, contact, subscription id, entity id or paginate through the list using the provided query parameters. This endpoint provides a straightforward way to explore and retrieve transaction information.",
        "operationId": "list-transactions",
        "parameters": [
          {
            "description": "LocationId is the id of the sub-account.",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltId is the unique identifier e.g: location id.",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltType is the type of identifier.",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "example": "location",
              "type": "string"
            }
          },
          {
            "description": "Mode of payment.",
            "in": "query",
            "name": "paymentMode",
            "required": false,
            "schema": {
              "example": "live",
              "type": "string"
            }
          },
          {
            "description": "Starting interval of transactions.",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "example": "2024-02-01",
              "type": "string"
            }
          },
          {
            "description": "Closing interval of transactions.",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "example": "2024-02-13",
              "type": "string"
            }
          },
          {
            "description": "Source of the transactions.",
            "in": "query",
            "name": "entitySourceType",
            "required": false,
            "schema": {
              "example": "funnel",
              "type": "string"
            }
          },
          {
            "description": "Source sub-type of the transactions.",
            "in": "query",
            "name": "entitySourceSubType",
            "required": false,
            "schema": {
              "example": "two_step_order_form",
              "type": "string"
            }
          },
          {
            "description": "The name of the transaction for searching.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Awesome transaction",
              "type": "string"
            }
          },
          {
            "description": "Subscription id for filtering of transactions.",
            "in": "query",
            "name": "subscriptionId",
            "required": false,
            "schema": {
              "example": "sub_1KGcXDCScnf89tZoVkoEMCEL",
              "type": "string"
            }
          },
          {
            "description": "Entity id for filtering of transactions.",
            "in": "query",
            "name": "entityId",
            "required": false,
            "schema": {
              "example": "61dd0fe9c077f73e67f78803",
              "type": "string"
            }
          },
          {
            "description": "Contact id for filtering of transactions.",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "XPLSw2SVagl12LMDeTmQ",
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListTxnsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/transactions.readonly"
            ]
          }
        ],
        "summary": "List Transactions",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "list-transactions"
      }
    },
    "/payments/transactions/{transactionId}": {
      "get": {
        "description": "The \"Get Transaction by ID\" API allows to retrieve information for a specific transaction using its unique identifier. Use this endpoint to fetch details for a single transaction based on the provided transaction ID.",
        "operationId": "get-transaction-by-id",
        "parameters": [
          {
            "description": "ID of the transaction that needs to be returned",
            "in": "path",
            "name": "transactionId",
            "required": true,
            "schema": {
              "example": "61dd0feac077f72010f78804",
              "type": "string"
            }
          },
          {
            "description": "LocationId is the id of the sub-account.",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltId is the unique identifier e.g: location id.",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "AltType is the type of identifier.",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "example": "location",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTxnResponseSchema"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Transaction not found"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "payments/transactions.readonly"
            ]
          }
        ],
        "summary": "Get Transaction by ID",
        "tags": [
          "payments"
        ],
        "x-ghl-operation-id": "get-transaction-by-id"
      }
    },
    "/phone-system/number-pools": {
      "get": {
        "description": "Returns number pools for the location. Requires locationId as a query parameter.",
        "operationId": "getNumberPoolList",
        "parameters": [
          {
            "description": "Location ID to scope the number pool list",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "List of number pools for the location."
          }
        },
        "security": [
          {
            "Location-Access": [
              "numberpools.read"
            ]
          }
        ],
        "summary": "List number pools",
        "tags": [
          "phone-system"
        ],
        "x-ghl-operation-id": "getNumberPoolList"
      }
    },
    "/phone-system/numbers/location/{locationId}": {
      "get": {
        "description": "List active numbers. With `version: v3`, the HTTP 200 body is the standard success envelope (`status`, `data`, `message`, `statusCode`). The v3 list payload is under `data`; `isUnderGhl` is renamed to `isUnderLc` per AIP naming convention.",
        "operationId": "active-numbers",
        "parameters": [
          {
            "description": "Location ID as string",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          },
          {
            "description": "How many resources to return in each list page. The default is 50, and the maximum is 1000.",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "example": 50,
              "maximum": 1000,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "The page index. The default is 0.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "example": 0,
              "minimum": 0,
              "type": "number"
            }
          },
          {
            "description": "Number search Filter",
            "in": "query",
            "name": "searchFilter",
            "required": false,
            "schema": {
              "example": "+91",
              "type": "string"
            }
          },
          {
            "description": "When true, exclude numbers assigned to number pools from the list.",
            "in": "query",
            "name": "skipNumberPool",
            "required": false,
            "schema": {
              "default": true,
              "example": true,
              "type": "boolean"
            }
          },
          {
            "description": "Include RCS Sender IDs",
            "in": "query",
            "name": "includeRcsSenderIds",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListNumbersV3Http200ResponseDto"
                }
              }
            },
            "description": "Success envelope; v3 list details are in `data` (including `isUnderLc` instead of legacy `isUnderGhl`)."
          }
        },
        "security": [
          {
            "Location-Access": [
              "phonenumbers.read"
            ]
          }
        ],
        "summary": "List active numbers",
        "tags": [
          "phone-system"
        ],
        "x-ghl-operation-id": "active-numbers",
        "x-version-added": "v3"
      }
    },
    "/phone-system/numbers/location/{locationId}/available": {
      "get": {
        "description": "Search Twilio inventory for purchasable phone numbers in a country for the given location.",
        "operationId": "listAvailableNumbersForACountry",
        "parameters": [
          {
            "description": "firstPart is the beginning of the phone number",
            "in": "query",
            "name": "firstPart",
            "required": true,
            "schema": {
              "example": "830",
              "type": "string"
            }
          },
          {
            "description": "lastPart is the ending of the phone number",
            "in": "query",
            "name": "lastPart",
            "required": true,
            "schema": {
              "example": "825",
              "type": "string"
            }
          },
          {
            "description": "anywhere are the numbers required anywhere in phone number",
            "in": "query",
            "name": "anywhere",
            "required": true,
            "schema": {
              "example": "825",
              "type": "string"
            }
          },
          {
            "description": "comma separated types of phone number required",
            "in": "query",
            "name": "numberTypes",
            "required": true,
            "schema": {
              "example": "tollFree,mobile,local",
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "requested phone numbers should have sms functionality",
            "in": "query",
            "name": "smsEnabled",
            "required": true,
            "schema": {
              "example": "true",
              "type": "boolean"
            }
          },
          {
            "description": "requested phone numbers should have mms functionality",
            "in": "query",
            "name": "mmsEnabled",
            "required": true,
            "schema": {
              "example": "true",
              "type": "boolean"
            }
          },
          {
            "description": "requested phone numbers should have voice functionality",
            "in": "query",
            "name": "voiceEnabled",
            "required": true,
            "schema": {
              "example": "true",
              "type": "boolean"
            }
          },
          {
            "description": "country for which the phone numbers are being requested",
            "in": "query",
            "name": "countryCode",
            "required": true,
            "schema": {
              "example": "US",
              "type": "string"
            }
          },
          {
            "description": "Location ID as string",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Available phone numbers matching the search criteria."
          }
        },
        "security": [
          {
            "Location-Access": [
              "phonenumbers.read"
            ]
          }
        ],
        "summary": "List available phone numbers",
        "tags": [
          "phone-system"
        ],
        "x-ghl-operation-id": "listAvailableNumbersForACountry"
      }
    },
    "/phone-system/numbers/location/{locationId}/purchase": {
      "post": {
        "description": "Purchase number for location. With `version: v3`, the HTTP 201 body is the standard success envelope (`status`, `data`, `message`, `statusCode`). The v3 purchase fields live under `data`: `number`, `locationId`, `id`, and `underLcAccount` (renamed from under_ghl_account).",
        "operationId": "purchase-number-for-location",
        "parameters": [
          {
            "description": "Location ID as string",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "tDtDnQdgm2LXpyiqYvZ6",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PurchasePhoneNumberBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PurchaseNumberForLocationV3Http201ResponseDto"
                }
              }
            },
            "description": "Success envelope; v3 purchase details are in `data` (slim shape: number, locationId, id, underLcAccount)."
          }
        },
        "security": [
          {
            "Location-Access": [
              "phonenumbers.write"
            ]
          }
        ],
        "summary": "Purchase number for location",
        "tags": [
          "phone-system"
        ],
        "x-ghl-operation-id": "purchase-number-for-location",
        "x-version-added": "v3"
      }
    },
    "/products/": {
      "get": {
        "description": "The \"List Products\" API allows to retrieve a paginated list of products. Customize your results by filtering products based on name or paginate through the list using the provided query parameters. This endpoint provides a straightforward way to explore and retrieve product information.",
        "operationId": "products.list-invoices",
        "parameters": [
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 0,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "LocationId is the id of the sub-account",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "The name of the product for searching.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Awesome product",
              "type": "string"
            }
          },
          {
            "description": "Filter by product category Ids. Supports comma separated values",
            "in": "query",
            "name": "collectionIds",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The slug value of the collection by which the collection would be searched",
            "in": "query",
            "name": "collectionSlug",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Name of an entity whose data has to be fetched along with product. Possible entities are tax, stripe and paypal. If not mentioned, only ID will be returned in case of taxes",
            "in": "query",
            "name": "expand",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "List of product ids to be fetched.",
            "in": "query",
            "name": "productIds",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "description": "fetch and project products based on the storeId",
            "in": "query",
            "name": "storeId",
            "required": false,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "Separate products by which are included in the store and which are not",
            "in": "query",
            "name": "includedInStore",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          },
          {
            "description": "If the product is included in the online store",
            "in": "query",
            "name": "availableInStore",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          },
          {
            "description": "The order of sort which should be applied for the date",
            "in": "query",
            "name": "sortOrder",
            "required": false,
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "example": "desc",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProductsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.readonly"
            ]
          },
          {
            "Agency-Access": [
              "products.readonly"
            ]
          }
        ],
        "summary": "List Products",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "list-invoices"
      },
      "post": {
        "description": "The \"Create Product\" API allows adding a new product to the system. Use this endpoint to create a product with the specified details. Ensure that the required information is provided in the request payload.",
        "operationId": "create-product",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProductDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateProductResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          },
          {
            "Agency-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Create Product",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "create-product"
      }
    },
    "/products/bulk-update": {
      "post": {
        "description": "API to bulk update products (price, availability, collections, delete)",
        "operationId": "bulkUpdate",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkUpdateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkUpdateResponseDto"
                }
              }
            },
            "description": "Products updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Bulk Update Products",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "bulkUpdate"
      }
    },
    "/products/bulk-update/edit": {
      "post": {
        "description": "API to bulk edit products and their associated prices (max 30 entities)",
        "operationId": "bulkEdit",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkEditRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkEditResponseDto"
                }
              }
            },
            "description": "Products and prices updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Bulk Edit Products and Prices",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "bulkEdit"
      }
    },
    "/products/collections": {
      "get": {
        "description": "Internal API to fetch the Product Collections",
        "operationId": "get-product-collection",
        "parameters": [
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "The type of alt. For now it is only LOCATION",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "LOCATION",
              "type": "string"
            }
          },
          {
            "description": "Ids of the collections separated by comma(,) for search purposes",
            "in": "query",
            "name": "collectionIds",
            "required": false,
            "schema": {
              "example": "65d71377c326ea78e1c47df5,65d71377c326ea78e1c47d34",
              "type": "string"
            }
          },
          {
            "description": "Query to search collection based on names",
            "in": "query",
            "name": "name",
            "required": false,
            "schema": {
              "example": "Best Sellers",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCollectionResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/collection.readonly"
            ]
          }
        ],
        "summary": "Fetch Product Collections",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-product-collection"
      },
      "post": {
        "description": "Create a new Product Collection for a specific location",
        "operationId": "create-product-collection",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProductCollectionsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCollectionResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/collection.write"
            ]
          }
        ],
        "summary": "Create Product Collection",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "create-product-collection"
      }
    },
    "/products/collections/{collectionId}": {
      "delete": {
        "description": "Delete specific product collection with Id :collectionId",
        "operationId": "delete-product-collection",
        "parameters": [
          {
            "description": "MongoId of the collection",
            "in": "path",
            "name": "collectionId",
            "required": true,
            "schema": {
              "example": "65d71377c326ea78e1c47df5",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "The type of alt. For now it is only LOCATION",
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "example": "LOCATION",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteProductCollectionResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/collection.write"
            ]
          }
        ],
        "summary": "Delete Product Collection",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "delete-product-collection"
      },
      "get": {
        "description": "Get Details about individual product collection",
        "operationId": "get-product-collection-id",
        "parameters": [
          {
            "description": "Collection Id",
            "in": "path",
            "name": "collectionId",
            "required": true,
            "schema": {
              "example": "65d71377c326ea78e1c47df5",
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "3SwdhCsvxI8Au3KsPJt6",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultCollectionResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/collection.readonly"
            ]
          }
        ],
        "summary": "Get Details about individual product collection",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-product-collection-id"
      },
      "put": {
        "description": "Update a specific product collection with Id :collectionId",
        "operationId": "update-product-collection",
        "parameters": [
          {
            "description": "MongoId of the collection",
            "in": "path",
            "name": "collectionId",
            "required": true,
            "schema": {
              "example": "65d71377c326ea78e1c47df5",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProductCollectionsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateProductCollectionResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/collection.write"
            ]
          }
        ],
        "summary": "Update Product Collection",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "update-product-collection"
      }
    },
    "/products/inventory": {
      "get": {
        "description": "The \"List Inventory API allows the user to retrieve a paginated list of inventory items. Use this endpoint to fetch details for multiple items in the inventory based on the provided query parameters.",
        "operationId": "get-list-inventory",
        "parameters": [
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 0,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "Search string for Variant Search",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Product Name",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetInventoryResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/prices.readonly"
            ]
          },
          {
            "Agency-Access": [
              "products/prices.readonly"
            ]
          }
        ],
        "summary": "List Inventory",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-list-inventory"
      },
      "post": {
        "description": "The Update Inventory API allows the user to bulk update the inventory for multiple items. Use this endpoint to update the available quantity and out-of-stock purchase settings for multiple items in the inventory.",
        "operationId": "update-inventory",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateInventoryDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateInventoryResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/prices.write"
            ]
          },
          {
            "Agency-Access": [
              "products/prices.write"
            ]
          }
        ],
        "summary": "Update Inventory",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "update-inventory"
      }
    },
    "/products/reviews": {
      "get": {
        "description": "API to fetch the Product Reviews",
        "operationId": "get-product-reviews",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 0,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "The field upon which the sort should be applied",
            "in": "query",
            "name": "sortField",
            "required": false,
            "schema": {
              "enum": [
                "createdAt",
                "rating"
              ],
              "example": "rating",
              "type": "string"
            }
          },
          {
            "description": "The order of sort which should be applied for the sortField",
            "in": "query",
            "name": "sortOrder",
            "required": false,
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "example": "desc",
              "type": "string"
            }
          },
          {
            "description": "Key to filter the ratings ",
            "in": "query",
            "name": "rating",
            "required": false,
            "schema": {
              "example": 4,
              "type": "number"
            }
          },
          {
            "description": "The start date for filtering reviews",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": "2023-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "description": "The end date for filtering reviews",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": "2023-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of product IDs",
            "in": "query",
            "name": "productId",
            "required": false,
            "schema": {
              "example": "60d21b4667d0d8992e610c88,60d21b4667d0d8992e610c89,60d21b4667d0d8992e610c8a",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of store IDs",
            "in": "query",
            "name": "storeId",
            "required": false,
            "schema": {
              "example": "60d21b4667d0d8992e610c85,60d21b4667d0d8992e610c86,60d21b4667d0d8992e610c87",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProductReviewsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.readonly"
            ]
          }
        ],
        "summary": "Fetch Product Reviews",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-product-reviews"
      }
    },
    "/products/reviews/bulk-update": {
      "post": {
        "description": "Update one or multiple product reviews: status, reply, etc.",
        "operationId": "bulk-update-product-review",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProductReviewsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateProductReviewsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Update Product Reviews",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "bulk-update-product-review"
      }
    },
    "/products/reviews/count": {
      "get": {
        "description": "API to fetch the Review Count as per status",
        "operationId": "get-reviews-count",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "Key to filter the ratings ",
            "in": "query",
            "name": "rating",
            "required": false,
            "schema": {
              "example": 4,
              "type": "number"
            }
          },
          {
            "description": "The start date for filtering reviews",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": "2023-01-01T00:00:00Z",
              "type": "string"
            }
          },
          {
            "description": "The end date for filtering reviews",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": "2023-12-31T23:59:59Z",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of product IDs",
            "in": "query",
            "name": "productId",
            "required": false,
            "schema": {
              "example": "60d21b4667d0d8992e610c88,60d21b4667d0d8992e610c89,60d21b4667d0d8992e610c8a",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of store IDs",
            "in": "query",
            "name": "storeId",
            "required": false,
            "schema": {
              "example": "60d21b4667d0d8992e610c85,60d21b4667d0d8992e610c86,60d21b4667d0d8992e610c87",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CountReviewsByStatusResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.readonly"
            ]
          }
        ],
        "summary": "Fetch Review Count as per status",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-reviews-count"
      }
    },
    "/products/reviews/{reviewId}": {
      "delete": {
        "description": "Delete specific product review",
        "operationId": "delete-product-review",
        "parameters": [
          {
            "description": "Review Id",
            "in": "path",
            "name": "reviewId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "Product Id of the product",
            "in": "query",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteProductReviewResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Delete Product Review",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "delete-product-review"
      },
      "put": {
        "description": "Update status, reply, etc of a particular review",
        "operationId": "update-product-review",
        "parameters": [
          {
            "description": "Review Id",
            "in": "path",
            "name": "reviewId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProductReviewDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateProductReviewsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Update Product Reviews",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "update-product-review"
      }
    },
    "/products/store/{storeId}": {
      "post": {
        "description": "API to update the status of products in a particular store",
        "operationId": "update-store-status",
        "parameters": [
          {
            "description": "Products related to the store",
            "in": "path",
            "name": "storeId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProductStoreDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateProductStoreResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Action to include/exclude the product in store",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "update-store-status"
      }
    },
    "/products/store/{storeId}/priority": {
      "post": {
        "description": "API to set the display priority of products in a store",
        "operationId": "update-display-priority",
        "parameters": [
          {
            "description": "Products related to the store",
            "in": "path",
            "name": "storeId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDisplayPriorityBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successfully updated display priorities"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update product display priorities in store",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "update-display-priority"
      }
    },
    "/products/store/{storeId}/stats": {
      "get": {
        "description": "API to fetch the total number of products, included in the store, and excluded from the store and other stats",
        "operationId": "get-product-store-stats",
        "parameters": [
          {
            "description": "Products related to the store",
            "in": "path",
            "name": "storeId",
            "required": true,
            "schema": {
              "example": "3SwdhCu3svxI8AKsPJt6",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "The name of the product for searching.",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "example": "Awesome product",
              "type": "string"
            }
          },
          {
            "description": "Filter by product collection Ids. Supports comma separated values",
            "in": "query",
            "name": "collectionIds",
            "required": false,
            "schema": {
              "example": "65c2789a812e52f9bd6ec577,65c2789a812e52de9a6ec576",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetProductStatsResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.readonly"
            ]
          }
        ],
        "summary": "Fetch Product Store Stats",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-product-store-stats"
      }
    },
    "/products/{productId}": {
      "delete": {
        "description": "The \"Delete Product by ID\" API allows deleting a specific product using its unique identifier. Use this endpoint to remove a product from the system.",
        "operationId": "delete-product-by-id",
        "parameters": [
          {
            "description": "ID or the slug of the product that needs to be returned",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Parameter which will decide whether to show the wishlisting status of products",
            "in": "query",
            "name": "sendWishlistStatus",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteProductResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          },
          {
            "Agency-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Delete Product by ID",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "delete-product-by-id"
      },
      "get": {
        "description": "The \"Get Product by ID\" API allows to retrieve information for a specific product using its unique identifier. Use this endpoint to fetch details for a single product based on the provided product ID.",
        "operationId": "get-product-by-id",
        "parameters": [
          {
            "description": "ID or the slug of the product that needs to be returned",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Parameter which will decide whether to show the wishlisting status of products",
            "in": "query",
            "name": "sendWishlistStatus",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetProductResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Product not found"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.readonly"
            ]
          },
          {
            "Agency-Access": [
              "products.readonly"
            ]
          }
        ],
        "summary": "Get Product by ID",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-product-by-id"
      },
      "put": {
        "description": "The \"Update Product by ID\" API allows modifying information for a specific product using its unique identifier. Use this endpoint to update details for a single product based on the provided product ID.",
        "operationId": "update-product-by-id",
        "parameters": [
          {
            "description": "ID or the slug of the product that needs to be returned",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProductDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateProductResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products.write"
            ]
          },
          {
            "Agency-Access": [
              "products.write"
            ]
          }
        ],
        "summary": "Update Product by ID",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "update-product-by-id"
      }
    },
    "/products/{productId}/price": {
      "get": {
        "description": "The \"List Prices for a Product\" API allows retrieving a paginated list of prices associated with a specific product. Customize your results by filtering prices or paginate through the list using the provided query parameters.",
        "operationId": "list-prices-for-product",
        "parameters": [
          {
            "description": "ID of the product that needs to be used",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 0,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "The unique identifier for the location.",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "3SwdhCsvxI8Au3KsPJt6",
              "type": "string"
            }
          },
          {
            "description": "To filter the response only with the given price ids, Please provide with comma separated",
            "in": "query",
            "name": "ids",
            "required": false,
            "schema": {
              "example": "6241712be68f7a98102ba272,632027d51f7876cd3020213d",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListPricesResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/prices.readonly"
            ]
          },
          {
            "Agency-Access": [
              "products/prices.readonly"
            ]
          }
        ],
        "summary": "List Prices for a Product",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "list-prices-for-product"
      },
      "post": {
        "description": "The \"Create Price for a Product\" API allows adding a new price associated with a specific product to the system. Use this endpoint to create a price with the specified details for a particular product. Ensure that the required information is provided in the request payload.",
        "operationId": "create-price-for-product",
        "parameters": [
          {
            "description": "ID of the product that needs to be used",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePriceDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatePriceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/prices.write"
            ]
          },
          {
            "Agency-Access": [
              "products/prices.write"
            ]
          }
        ],
        "summary": "Create Price for a Product",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "create-price-for-product"
      }
    },
    "/products/{productId}/price/{priceId}": {
      "delete": {
        "description": "The \"Delete Price by ID for a Product\" API allows deleting a specific price associated with a particular product using its unique identifier. Use this endpoint to remove a price from the system.",
        "operationId": "delete-price-by-id-for-product",
        "parameters": [
          {
            "description": "ID of the product that needs to be used",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "ID of the price that needs to be returned",
            "in": "path",
            "name": "priceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeletePriceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/prices.write"
            ]
          },
          {
            "Agency-Access": [
              "products/prices.write"
            ]
          }
        ],
        "summary": "Delete Price by ID for a Product",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "delete-price-by-id-for-product"
      },
      "get": {
        "description": "The \"Get Price by ID for a Product\" API allows retrieving information for a specific price associated with a particular product using its unique identifier. Use this endpoint to fetch details for a single price based on the provided price ID and product ID.",
        "operationId": "get-price-by-id-for-product",
        "parameters": [
          {
            "description": "ID of the product that needs to be used",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "ID of the price that needs to be returned",
            "in": "path",
            "name": "priceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPriceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/prices.readonly"
            ]
          },
          {
            "Agency-Access": [
              "products/prices.readonly"
            ]
          }
        ],
        "summary": "Get Price by ID for a Product",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "get-price-by-id-for-product"
      },
      "put": {
        "description": "The \"Update Price by ID for a Product\" API allows modifying information for a specific price associated with a particular product using its unique identifier. Use this endpoint to update details for a single price based on the provided price ID and product ID.",
        "operationId": "update-price-by-id-for-product",
        "parameters": [
          {
            "description": "ID of the product that needs to be used",
            "in": "path",
            "name": "productId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "ID of the price that needs to be returned",
            "in": "path",
            "name": "priceId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePriceDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdatePriceResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": [
              "products/prices.write"
            ]
          },
          {
            "Agency-Access": [
              "products/prices.write"
            ]
          }
        ],
        "summary": "Update Price by ID for a Product",
        "tags": [
          "products"
        ],
        "x-ghl-operation-id": "update-price-by-id-for-product"
      }
    },
    "/proposals/document": {
      "get": {
        "description": "List documents for a location",
        "operationId": "list-documents-contracts",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "hTlkh7t8gujsahgg93",
              "type": "string"
            }
          },
          {
            "description": "Document status, pass as comma separated values",
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "enum": [
                "draft",
                "sent",
                "viewed",
                "completed",
                "accepted"
              ],
              "example": "draft",
              "type": "string"
            }
          },
          {
            "description": "Payment status, pass as comma separated values",
            "in": "query",
            "name": "paymentStatus",
            "required": false,
            "schema": {
              "enum": [
                "waiting_for_payment",
                "paid",
                "no_payment"
              ],
              "example": "paid",
              "type": "string"
            }
          },
          {
            "description": "Limit to fetch number of records",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": 10,
              "type": "number"
            }
          },
          {
            "description": "Skip number of records",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Search string",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "document",
              "type": "string"
            }
          },
          {
            "description": "Date start from (ISO 8601), dateFrom & DateTo must be provided together",
            "in": "query",
            "name": "dateFrom",
            "required": false,
            "schema": {
              "example": "2025-02-03T18:30:00.000Z",
              "type": "string"
            }
          },
          {
            "description": "Date to (ISO 8601), dateFrom & DateTo must be provided together",
            "in": "query",
            "name": "dateTo",
            "required": false,
            "schema": {
              "example": "2025-02-14T18:29:59.999Z",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentListResponseDto"
                }
              }
            },
            "description": "Document fetched successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProposalsBadRequestDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "List documents",
        "tags": [
          "proposals"
        ],
        "x-ghl-operation-id": "list-documents-contracts"
      }
    },
    "/proposals/document/send": {
      "post": {
        "description": "Send document to a client",
        "operationId": "send-documents-contracts",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendDocumentDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendDocumentResponseDto"
                }
              }
            },
            "description": "Document sent successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProposalsBadRequestDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "Send document",
        "tags": [
          "proposals"
        ],
        "x-ghl-operation-id": "send-documents-contracts"
      }
    },
    "/proposals/templates": {
      "get": {
        "description": "List document contract templates for a location",
        "operationId": "list-documents-contracts-templates",
        "parameters": [
          {
            "description": "Location Id",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "jhg64gjhb436fv",
              "type": "string"
            }
          },
          {
            "description": "Date start from (ISO 8601)",
            "in": "query",
            "name": "dateFrom",
            "required": false,
            "schema": {
              "example": "2025-02-03T18:30:00.000Z",
              "type": "string"
            }
          },
          {
            "description": "Date to (ISO 8601)",
            "in": "query",
            "name": "dateTo",
            "required": false,
            "schema": {
              "example": "2025-02-14T18:29:59.999Z",
              "type": "string"
            }
          },
          {
            "description": "Comma-separated template types. Valid values: proposal, estimate, contentLibrary",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "example": "proposal,estimate",
              "type": "string"
            }
          },
          {
            "description": "Template Name",
            "in": "query",
            "name": "name",
            "required": false,
            "schema": {
              "example": "Template Name",
              "type": "string"
            }
          },
          {
            "description": "If the docForm is a DocForm",
            "in": "query",
            "name": "isPublicDocument",
            "required": false,
            "schema": {
              "example": false,
              "type": "boolean"
            }
          },
          {
            "description": "User Id, required when isPublicDocument is true",
            "in": "query",
            "name": "userId",
            "required": false,
            "schema": {
              "example": "1234567890",
              "type": "string"
            }
          },
          {
            "description": "Limit",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": "10",
              "type": "string"
            }
          },
          {
            "description": "Skip",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "example": "0",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateListPaginationResponseDTO"
                }
              }
            },
            "description": "Templates fetched successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProposalsBadRequestDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "List templates",
        "tags": [
          "proposals"
        ],
        "x-ghl-operation-id": "list-documents-contracts-templates"
      }
    },
    "/proposals/templates/send": {
      "post": {
        "description": "Send template to a client",
        "operationId": "send-documents-contracts-template",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendDocumentFromPublicApiBodyDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SendTemplateResponseDto"
                }
              }
            },
            "description": "Document sent successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProposalsBadRequestDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          },
          {
            "Agency-Access": []
          }
        ],
        "summary": "Send template",
        "tags": [
          "proposals"
        ],
        "x-ghl-operation-id": "send-documents-contracts-template"
      }
    },
    "/saas-api/public-api/agency-plans/{companyId}": {
      "get": {
        "deprecated": true,
        "description": "Fetch all agency subscription plans for a given company ID",
        "operationId": "get-agency-plans-deprecated",
        "parameters": [
          {
            "description": "Company ID to get agency plans for",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/AgencyPlanResponseDto"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Agency plans retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get Agency Plans",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-agency-plans-deprecated"
      }
    },
    "/saas-api/public-api/bulk-disable-saas/{companyId}": {
      "post": {
        "deprecated": true,
        "description": "Disable SaaS for locations for given locationIds",
        "operationId": "bulk-disable-saas-deprecated",
        "parameters": [
          {
            "description": "Company ID to disable SaaS for",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkDisableSaasDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkDisableSaasResponseDto"
                }
              }
            },
            "description": "SaaS disabled successfully for locations"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Disable SaaS for locations",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "bulk-disable-saas-deprecated"
      }
    },
    "/saas-api/public-api/bulk-enable-saas/{companyId}": {
      "post": {
        "deprecated": true,
        "description": "Enable SaaS mode for multiple locations with support for both SaaS v1 and v2",
        "operationId": "bulk-enable-saas-deprecated",
        "parameters": [
          {
            "description": "Company ID to enable SaaS for",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkEnableSaasRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkEnableSaasResponseDto"
                }
              }
            },
            "description": "Bulk SaaS enable operation completed successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Bulk Enable SaaS",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "bulk-enable-saas-deprecated"
      }
    },
    "/saas-api/public-api/companies/{companyId}/locations/{locationId}/wallet-balance/complimentary-credits": {
      "post": {
        "description": "Update the wallet balance or complimentary credit settings for a specific location. Supports partial updates via updateMask field (AIP-134 compliant).",
        "operationId": "updateLocationWalletBalance",
        "parameters": [
          {
            "description": "Company ID that owns the location",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location ID to update wallet balance for",
            "example": "AUKAtFVo0lWezBsBQ3FE",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ComplimentaryCreditDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationWalletBalanceDto"
                }
              }
            },
            "description": "Location wallet balance updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "saas/company.write"
            ]
          }
        ],
        "summary": "Update Location Wallet Balance",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "updateLocationWalletBalance"
      }
    },
    "/saas-api/public-api/enable-saas/{locationId}": {
      "post": {
        "deprecated": true,
        "description": "<div>\n                  <p>Enable SaaS for Sub-Account (Formerly Location) based on the data provided</p> \n                  <div>\n<span>\n                     :::info\n This feature is only available on Agency Pro ($497) plan.\n :::  \n </span>\n                  </div>\n                </div>\n    ",
        "operationId": "enable-saas-location-deprecated",
        "parameters": [
          {
            "description": "Location ID to enable SaaS for",
            "example": "AUKAtFVo0lWezBsBQ3FE",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnableSaasDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnableSaasResponseDto"
                }
              }
            },
            "description": "SaaS enabled successfully for location"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Enable SaaS for Sub-Account (Formerly Location)",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "enable-saas-location-deprecated"
      }
    },
    "/saas-api/public-api/get-saas-subscription/{locationId}": {
      "get": {
        "deprecated": true,
        "description": "Fetch subscription details for a specific location from location metadata",
        "operationId": "get-location-subscription-deprecated",
        "parameters": [
          {
            "description": "Location ID to get subscription details for",
            "example": "AUKAtFVo0lWezBsBQ3FE",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Company ID to filter subscription details",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationSubscriptionResponseDto"
                }
              }
            },
            "description": "Location subscription details retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get Location Subscription Details",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-location-subscription-deprecated"
      }
    },
    "/saas-api/public-api/locations": {
      "get": {
        "deprecated": true,
        "description": "Get locations by stripeCustomerId or stripeSubscriptionId with companyId",
        "operationId": "locations-deprecated",
        "parameters": [
          {
            "description": "Stripe customer ID to find locations for",
            "example": "cus_OD2oBjRfKEF6FV",
            "in": "query",
            "name": "customerId",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Stripe subscription ID to find locations for",
            "example": "sub_1NVqlLByVlfITvRXgirIdpyc",
            "in": "query",
            "name": "subscriptionId",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Company ID to filter locations",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Locations retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get locations by stripeId with companyId",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "locations-deprecated"
      }
    },
    "/saas-api/public-api/pause/{locationId}": {
      "post": {
        "deprecated": true,
        "description": "Pause Sub account for given locationId",
        "operationId": "pause-location-deprecated",
        "parameters": [
          {
            "description": "Location ID to pause/unpause",
            "example": "AUKAtFVo0lWezBsBQ3FE",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PauseLocationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            },
            "description": "Location paused/unpaused successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Pause location",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "pause-location-deprecated"
      }
    },
    "/saas-api/public-api/saas-locations/{companyId}": {
      "get": {
        "deprecated": true,
        "description": "Fetch all SaaS-activated locations for a company with pagination",
        "operationId": "get-saas-locations-deprecated",
        "parameters": [
          {
            "description": "Company ID to get SaaS locations for",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Page number for pagination",
            "example": 1,
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSaasLocationsResponseDto"
                }
              }
            },
            "description": "SaaS locations retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get SaaS Locations",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-saas-locations-deprecated"
      }
    },
    "/saas-api/public-api/saas-plan/{planId}": {
      "get": {
        "deprecated": true,
        "description": "Fetch a specific SaaS plan by plan ID",
        "operationId": "get-saas-plan-deprecated",
        "parameters": [
          {
            "description": "Plan ID to get SaaS plan details for",
            "example": "66c4d36534f21f900dc2a265",
            "in": "path",
            "name": "planId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Company ID to filter SaaS plan",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasPlanResponseDto"
                }
              }
            },
            "description": "SaaS plan retrieved successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get SaaS Plan",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-saas-plan-deprecated"
      }
    },
    "/saas-api/public-api/update-rebilling/{companyId}": {
      "post": {
        "deprecated": true,
        "description": "Bulk update rebilling for given locationIds",
        "operationId": "update-rebilling-deprecated",
        "parameters": [
          {
            "description": "Company ID to update rebilling for",
            "example": "5DP4iH6HLkQsiKESj6rh",
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRebillingDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateRebillingResponseDto"
                }
              }
            },
            "description": "Rebilling updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update Rebilling",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "update-rebilling-deprecated"
      }
    },
    "/saas-api/public-api/update-saas-subscription/{locationId}": {
      "put": {
        "deprecated": true,
        "description": "Update SaaS subscription for given locationId and customerId",
        "operationId": "generate-payment-link-deprecated",
        "parameters": [
          {
            "description": "Location ID to update subscription for",
            "example": "AUKAtFVo0lWezBsBQ3FE",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSubscriptionDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "description": "SaaS subscription updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceNotFoundDTO"
                }
              }
            },
            "description": "Resource not found"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SaasInternalServerErrorDTO"
                }
              }
            },
            "description": "Internal server error"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update SaaS subscription",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "generate-payment-link-deprecated"
      }
    },
    "/saas/agency-plans/{companyId}": {
      "get": {
        "description": "Fetch all agency subscription plans for a given company ID",
        "operationId": "get-agency-plans",
        "parameters": [
          {
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get Agency Plans",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-agency-plans"
      }
    },
    "/saas/bulk-disable-saas/{companyId}": {
      "post": {
        "description": "Disable SaaS for locations for given locationIds",
        "operationId": "bulk-disable-saas",
        "parameters": [
          {
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkDisableSaasDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Disable SaaS for locations",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "bulk-disable-saas"
      }
    },
    "/saas/bulk-enable-saas/{companyId}": {
      "post": {
        "description": "Enable SaaS mode for multiple locations with support for both SaaS v1 and v2",
        "operationId": "bulk-enable-saas",
        "parameters": [
          {
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkEnableSaasRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Bulk Enable SaaS",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "bulk-enable-saas"
      }
    },
    "/saas/enable-saas/{locationId}": {
      "post": {
        "description": "<div>\n                  <p>Enable SaaS for Sub-Account (Formerly Location) based on the data provided</p> \n                  <div>\n<span>\n                     :::info\n This feature is only available on Agency Pro ($497) plan.\n :::  \n </span>\n                  </div>\n                </div>\n    ",
        "operationId": "enable-saas-location",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnableSaasDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Enable SaaS for Sub-Account (Formerly Location)",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "enable-saas-location"
      }
    },
    "/saas/get-saas-subscription/{locationId}": {
      "get": {
        "description": "Fetch subscription details for a specific location from location metadata",
        "operationId": "get-location-subscription",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get Location Subscription Details",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-location-subscription"
      }
    },
    "/saas/locations": {
      "get": {
        "description": "Get locations by stripeCustomerId or stripeSubscriptionId with companyId",
        "operationId": "locations",
        "parameters": [
          {
            "in": "query",
            "name": "customerId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "subscriptionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get locations by stripeId with companyId",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "locations"
      }
    },
    "/saas/pause/{locationId}": {
      "post": {
        "description": "Pause Sub account for given locationId",
        "operationId": "pause-location",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PauseLocationDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Pause location",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "pause-location"
      }
    },
    "/saas/saas-locations/{companyId}": {
      "get": {
        "description": "Fetch all SaaS-activated locations for a company with pagination",
        "operationId": "get-saas-locations",
        "parameters": [
          {
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": true,
            "schema": {
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get SaaS Locations",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-saas-locations"
      }
    },
    "/saas/saas-plan/{planId}": {
      "get": {
        "description": "Fetch a specific SaaS plan by plan ID",
        "operationId": "get-saas-plan",
        "parameters": [
          {
            "in": "path",
            "name": "planId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get SaaS Plan",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "get-saas-plan"
      }
    },
    "/saas/update-rebilling/{companyId}": {
      "post": {
        "description": "Bulk update rebilling for given locationIds",
        "operationId": "update-rebilling",
        "parameters": [
          {
            "in": "path",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRebillingDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update Rebilling",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "update-rebilling"
      }
    },
    "/saas/update-saas-subscription/{locationId}": {
      "put": {
        "description": "Update SaaS subscription for given locationId and customerId",
        "operationId": "generate-payment-link",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSubscriptionDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": ""
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Update SaaS subscription",
        "tags": [
          "saas"
        ],
        "x-ghl-operation-id": "generate-payment-link"
      }
    },
    "/snapshots/": {
      "get": {
        "description": "Get a list of all own and imported Snapshots",
        "operationId": "get-custom-snapshots",
        "parameters": [
          {
            "description": "Company Id",
            "example": "5D112kQsiKESj6rash",
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSnapshotsSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get Snapshots",
        "tags": [
          "snapshots"
        ],
        "x-ghl-operation-id": "get-custom-snapshots"
      }
    },
    "/snapshots/share/link": {
      "post": {
        "description": "Create a share link for snapshot",
        "operationId": "create-snapshot-share-link",
        "parameters": [
          {
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSnapshotShareLinkRequestDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSnapshotShareLinkSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Create Snapshot Share Link",
        "tags": [
          "snapshots"
        ],
        "x-ghl-operation-id": "create-snapshot-share-link"
      }
    },
    "/snapshots/snapshot-status/{snapshotId}": {
      "get": {
        "description": "Get list of sub-accounts snapshot pushed in time period",
        "operationId": "get-snapshot-push",
        "parameters": [
          {
            "in": "path",
            "name": "snapshotId",
            "required": true,
            "schema": {
              "example": "39It2BFz7EkNaNBALPif",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "example": "5D112kQsiKESj6rash",
              "type": "string"
            }
          },
          {
            "description": "Only accepts ISO 8601 format",
            "in": "query",
            "name": "from",
            "required": true,
            "schema": {
              "example": "2022-10-10T12:00:00Z or 2022-10-10",
              "type": "string"
            }
          },
          {
            "description": "Only accepts ISO 8601 format",
            "in": "query",
            "name": "to",
            "required": true,
            "schema": {
              "example": "2023-12-18T11:59:59Z or 2023-12-18",
              "type": "string"
            }
          },
          {
            "description": "Id for last document till what you want to skip",
            "in": "query",
            "name": "lastDoc",
            "required": true,
            "schema": {
              "example": "VUJO4Sw2TrDNZ5lx4wZg",
              "type": "string"
            }
          },
          {
            "description": "Limit of documents to return. Default is 20",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": "10",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSnapshotPushStatusSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get Snapshot Push between Dates",
        "tags": [
          "snapshots"
        ],
        "x-ghl-operation-id": "get-snapshot-push"
      }
    },
    "/snapshots/snapshot-status/{snapshotId}/location/{locationId}": {
      "get": {
        "description": "Get Latest Snapshot Push Status for a location id",
        "operationId": "get-latest-snapshot-push",
        "parameters": [
          {
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "example": "5D112kQsiKESj6rash",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "snapshotId",
            "required": true,
            "schema": {
              "example": "39It2BFz7EkNaNBALPif",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "IIRGHCgxSINdPT79M75P",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLatestSnapshotPushStatusSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "Agency-Access": []
          }
        ],
        "summary": "Get Last Snapshot Push",
        "tags": [
          "snapshots"
        ],
        "x-ghl-operation-id": "get-latest-snapshot-push"
      }
    },
    "/social-media-posting/category/queues": {
      "post": {
        "description": "Creates a queue in draft status for a category. Published posts are auto-added. Use update endpoint to activate.",
        "operationId": "createQueue",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCategoryQueueDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedCreateCategoryQueueResponseDTO"
                }
              }
            },
            "description": "Queue created successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Create a new category queue",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "createQueue"
      }
    },
    "/social-media-posting/category/queues/available-categories": {
      "get": {
        "description": "Returns categories with status: \"available\" (no queue), \"in_queue\" (active/paused queue), or \"draft\" (queue in draft).",
        "operationId": "fetchAvailableCategories",
        "parameters": [
          {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "609e126a1c4ae1001291e1b5",
              "type": "string"
            }
          },
          {
            "description": "Number of items to skip",
            "example": "0",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "example": "0",
              "type": "string"
            }
          },
          {
            "description": "Maximum number of items to return",
            "example": "10",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "example": "10",
              "type": "string"
            }
          },
          {
            "description": "Search query",
            "example": "Marketing",
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "example": "Marketing",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedFetchAvailableCategoriesResponseDTO"
                }
              }
            },
            "description": "Available categories fetched successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Get all categories with their queue status",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "fetchAvailableCategories"
      }
    },
    "/social-media-posting/category/queues/list": {
      "post": {
        "description": "Retrieves a paginated list of all category queues for a given location, excluding any that have been marked as deleted.",
        "operationId": "fetchQueues",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FetchCategoryQueuesDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedFetchCategoryQueuesResponseDTO"
                }
              }
            },
            "description": "Successfully retrieved category queues."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Fetch category queues for a location",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "fetchQueues"
      }
    },
    "/social-media-posting/category/queues/list/calendar": {
      "post": {
        "description": "Returns scheduled posts from active queues within a date range. Supports filtering by categories and accounts.",
        "operationId": "fetchCalendarList",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CalendarListDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedFetchCalendarListResponseDTO"
                }
              }
            },
            "description": "Calendar list fetched successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Get scheduled posts calendar view",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "fetchCalendarList"
      }
    },
    "/social-media-posting/category/queues/{postId}/active-post": {
      "delete": {
        "description": "Deletes a post that is currently scheduled and automatically triggers the scheduling of the next available post in the queue.",
        "operationId": "deleteCurrentActivePostAndScheduleNext",
        "parameters": [
          {
            "in": "path",
            "name": "postId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "609e126a1c4ae1001291e1b5",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedDeleteActivePostResponseDTO"
                }
              }
            },
            "description": "Successfully deleted the active post and scheduled the next one."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Delete an active post and schedule the next one",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "deleteCurrentActivePostAndScheduleNext"
      }
    },
    "/social-media-posting/category/queues/{queueId}": {
      "get": {
        "description": "Retrieves the details of a single category queue by its unique ID. The response includes a count of posts within the queue that have errors.",
        "operationId": "fetchQueueById",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "609e126a1c4ae1001291e1b5",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedFetchQueueByIdResponseDTO"
                }
              }
            },
            "description": "Successfully retrieved the category queue."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Fetch a category queue by ID",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "fetchQueueById"
      },
      "put": {
        "description": "Updates queue status (active/paused/deleted), time slots, or skip dates.",
        "operationId": "updateQueue",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCategoryQueueDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedUpdateCategoryQueueResponseDTO"
                }
              }
            },
            "description": "Queue updated successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Update queue settings or status",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "updateQueue"
      }
    },
    "/social-media-posting/category/queues/{queueId}/create/item": {
      "post": {
        "description": "Adds a new post item to a queue. Use sessionId for edit session or directToQueue for immediate addition.",
        "operationId": "createQueueItem",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateQueueItemDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedCreateQueueItemResponseDTO"
                }
              }
            },
            "description": "Queue item created successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Create a new item in the queue",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "createQueueItem"
      }
    },
    "/social-media-posting/category/queues/{queueId}/edit/calendar": {
      "post": {
        "description": "Retrieves a calendar preview of scheduled posts based on draft items within an edit session. This shows how posts would be scheduled if changes were saved.",
        "operationId": "fetchEditSessionCalendar",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSessionCalendarDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedEditSessionCalendarResponseDTO"
                }
              }
            },
            "description": "Edit session calendar fetched successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Fetch calendar view for an edit session",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "fetchEditSessionCalendar"
      }
    },
    "/social-media-posting/category/queues/{queueId}/edit/discard": {
      "post": {
        "description": "Cancels the edit session and deletes all staged changes without affecting the live queue.",
        "operationId": "discardEditSession",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DiscardEditSessionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedDiscardEditSessionResponseDTO"
                }
              }
            },
            "description": "Edit session discarded successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Discard edit session changes",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "discardEditSession"
      }
    },
    "/social-media-posting/category/queues/{queueId}/edit/save": {
      "post": {
        "description": "Applies all staged changes to the live queue and closes the edit session.",
        "operationId": "saveEditSession",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveEditSessionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedSaveEditSessionResponseDTO"
                }
              }
            },
            "description": "Edit session saved successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Save edit session changes",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "saveEditSession"
      }
    },
    "/social-media-posting/category/queues/{queueId}/edit/start": {
      "post": {
        "description": "Creates a draft copy of queue items for editing. Changes are staged until saved or discarded.",
        "operationId": "startEditSession",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StartEditSessionDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedStartEditSessionResponseDTO"
                }
              }
            },
            "description": "Edit session started successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Start or resume an edit session",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "startEditSession"
      }
    },
    "/social-media-posting/category/queues/{queueId}/items": {
      "post": {
        "description": "Returns paginated queue items. Pass sessionId to get draft items from an edit session instead of live items.",
        "operationId": "fetchQueueItems",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FetchQueueItemsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedFetchQueueItemsResponseDTO"
                }
              }
            },
            "description": "Queue items fetched successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Fetch items from a queue",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "fetchQueueItems"
      }
    },
    "/social-media-posting/category/queues/{queueId}/items/{itemId}": {
      "delete": {
        "description": "Deletes an item from a specific category queue.",
        "operationId": "deleteQueueItem",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "itemId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "example": "609e126a1c4ae1001291e1b5",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "609e126a1c4ae1001291e1b5",
              "type": "string"
            }
          },
          {
            "description": "Edit session ID",
            "example": "60af88475f1b2c001f5d5f4b",
            "in": "query",
            "name": "sessionId",
            "required": false,
            "schema": {
              "example": "60af88475f1b2c001f5d5f4b",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedGeneralSuccessResponseDTO"
                }
              }
            },
            "description": "The queue item has been successfully deleted."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Delete an item from a queue",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "deleteQueueItem"
      },
      "put": {
        "description": "Updates the content or variations of a specific item within a category queue.",
        "operationId": "updateQueueItem",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "itemId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQueueItemDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedUpdateQueueItemResponseDTO"
                }
              }
            },
            "description": "The queue item has been successfully updated."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Update an item in a queue",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "updateQueueItem"
      }
    },
    "/social-media-posting/category/queues/{queueId}/items/{itemId}/clone": {
      "post": {
        "description": "Duplicates an existing queue item at a specified order position. Requires an active edit session.",
        "operationId": "cloneQueueItem",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "itemId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CloneQueueItemDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedCloneQueueItemResponseDTO"
                }
              }
            },
            "description": "Queue item cloned successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Clone a queue item",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "cloneQueueItem"
      }
    },
    "/social-media-posting/category/queues/{queueId}/items/{itemId}/reset": {
      "put": {
        "description": "Resets a specific queue item to its original state, discarding any modifications made.",
        "operationId": "resetQueueItem",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "itemId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResetQueueItemDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedResetQueueItemResponseDTO"
                }
              }
            },
            "description": "The queue item has been successfully reset."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.write"
            ]
          }
        ],
        "summary": "Reset an item in a queue",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "resetQueueItem"
      }
    },
    "/social-media-posting/category/queues/{queueId}/slots": {
      "post": {
        "description": "Returns paginated slot information (scheduledDateTime, isSkipped) for queue items. Pass sessionId to get slots for draft items, or omit for live items. Call this after mutations to refresh slot data.",
        "operationId": "fetchSlots",
        "parameters": [
          {
            "in": "path",
            "name": "queueId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FetchSlotsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WrappedFetchSlotsResponseDTO"
                }
              }
            },
            "description": "Slots fetched successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Fetch slot information for queue items",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "fetchSlots"
      }
    },
    "/social-media-posting/comments/{platform}": {
      "post": {
        "description": "Create a top-level comment on a post (`isParentThread: true`, `parentId` = postId) or a reply to an existing comment (`isParentThread: false`, `parentId` = commentId). Per-platform content max length: Facebook 8000, Instagram 2200, Linkedin 3000, Community 8000, Tiktok 150, Bluesky 300, Youtube 10000, Threads 500.\n\n**Optional-field platform support:**\n- `attachments` — supported on **Facebook only**. Ignored on Instagram, LinkedIn, TikTok, Bluesky, Community (Community processes the field but external URLs are not rendered due to its bucket restriction).\n- `mentions` — supported on **Facebook**, **LinkedIn**, and **Community** only. Ignored on Instagram, TikTok, Bluesky.\n- `notifyAllGroupMembers` — supported on **Community** only. When `true`, all group members get a push/in-app notification (equivalent to an `@everyone` broadcast). Independent of the `mentions` array and of `@everyone` text in `content`. Default `false`.",
        "operationId": "create-comment",
        "parameters": [
          {
            "description": "Supported Comments Platforms",
            "in": "path",
            "name": "platform",
            "required": true,
            "schema": {
              "enum": [
                "facebook",
                "instagram",
                "linkedin",
                "community",
                "tiktok",
                "bluesky",
                "youtube",
                "threads"
              ],
              "example": "facebook",
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "1234",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CommentsCreateBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentsCreateResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Create a comment or reply",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "create-comment"
      }
    },
    "/social-media-posting/comments/{platform}/list": {
      "post": {
        "description": "Paginated list of comments scoped to a post (`parentId` = postId) or a comment thread (`parentId` = commentId). Use `skip`/`limit` for pagination, `sortBy` for ordering, `originIds` to filter by connected account, and `search` for keyword search.",
        "operationId": "get-comment-list",
        "parameters": [
          {
            "description": "Supported Comments Platforms",
            "in": "path",
            "name": "platform",
            "required": true,
            "schema": {
              "enum": [
                "facebook",
                "instagram",
                "linkedin",
                "community",
                "tiktok",
                "bluesky",
                "youtube",
                "threads"
              ],
              "example": "facebook",
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "1234",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CommentsGetListBodyDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentsGetListResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List comments for a post or thread",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-comment-list"
      }
    },
    "/social-media-posting/comments/{platform}/{id}/like": {
      "delete": {
        "description": "Remove a like from a comment by its **Highlevel** comment ID (the `_id` returned by the list-comments endpoint — not the native platform ID).\n\nWorks for any comment level — top-level comments, replies, and replies-to-replies. **Supported platforms:** Facebook, LinkedIn, Community, TikTok, Bluesky. Instagram is not supported (passing `instagram` returns 400).",
        "operationId": "delete-like",
        "parameters": [
          {
            "description": "Platform that supports liking / unliking comments (Instagram is not supported)",
            "in": "path",
            "name": "platform",
            "required": true,
            "schema": {
              "enum": [
                "facebook",
                "linkedin",
                "community",
                "tiktok",
                "bluesky"
              ],
              "example": "facebook",
              "type": "string"
            }
          },
          {
            "description": "Highlevel comment ID — the `_id` returned by the list-comments endpoint (`POST /comments/{platform}/list`). Not the native platform comment ID. Works for any comment level: top-level comments, replies, and replies-to-replies.",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "1234",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteLikeResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "State conflict (not currently liked) or unsupported platform (Instagram)"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Unlike a comment",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "delete-like"
      },
      "post": {
        "description": "Like a comment by its **Highlevel** comment ID (the `_id` returned by the list-comments endpoint — not the native platform ID).\n\nWorks for any comment level — top-level comments, replies, and replies-to-replies. **Supported platforms:** Facebook, LinkedIn, Community, TikTok, Bluesky. Instagram is not supported (passing `instagram` returns 400).",
        "operationId": "create-like",
        "parameters": [
          {
            "description": "Platform that supports liking / unliking comments (Instagram is not supported)",
            "in": "path",
            "name": "platform",
            "required": true,
            "schema": {
              "enum": [
                "facebook",
                "linkedin",
                "community",
                "tiktok",
                "bluesky"
              ],
              "example": "facebook",
              "type": "string"
            }
          },
          {
            "description": "Highlevel comment ID — the `_id` returned by the list-comments endpoint (`POST /comments/{platform}/list`). Not the native platform comment ID. Works for any comment level: top-level comments, replies, and replies-to-replies.",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "1234",
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentsLikeResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "State conflict (already liked) or unsupported platform (Instagram)"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Like a comment",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "create-like"
      }
    },
    "/social-media-posting/oauth/{locationId}/{platform}/accounts/{accountId}": {
      "get": {
        "description": "## OAuth Connection Flow - Step 2: Get Available Accounts\n\nAfter completing OAuth authentication (Step 1), use this endpoint to retrieve the list of available pages, channels, or locations that can be connected.\n\n### OAuth Flow Position\n\n1. **Start OAuth** → User authenticates, returns `accountId`\n2. **Get Accounts** (this endpoint) → Lists available pages/channels to connect\n3. **Attach Account** → Connect the selected account\n\n### What This Returns\n\nThe response varies by platform:\n\n| Platform | Returns |\n|----------|--------|\n| **facebook** | List of Facebook Pages the user manages |\n| **instagram** | List of Instagram Professional Accounts (linked to Facebook Pages) |\n| **google** | Google Business Profile locations |\n| **linkedin** | LinkedIn Pages and Profile |\n| **tiktok** | TikTok Creator account info |\n| **tiktok-business** | TikTok Business Center accounts |\n| **youtube** | YouTube Channels |\n| **pinterest** | Pinterest Business accounts and boards |\n| **threads** | Threads profiles |\n\n### Next Step\n\nFrom the response, select the account/page you want to connect and use its details in Step 3:\n```\nPOST /social-media-posting/oauth/{locationId}/{platform}/accounts/{accountId}\n```",
        "operationId": "get-oauth-accounts",
        "parameters": [
          {
            "description": "Access Token",
            "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "Account Location Id",
            "example": "w37swmmLbA02zgqKPpxITe2",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Social media platform",
            "example": "facebook",
            "in": "path",
            "name": "platform",
            "required": true,
            "schema": {
              "enum": [
                "google",
                "facebook",
                "instagram",
                "linkedin",
                "tiktok",
                "tiktok-business",
                "youtube",
                "pinterest",
                "threads",
                "bluesky"
              ],
              "type": "string"
            }
          },
          {
            "description": "The OAuth Account ID received from Step 1 (Start OAuth) via the window message event",
            "example": "w37swmmLbA02zgqKPpxITe",
            "in": "path",
            "name": "accountId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Search term to filter accounts/pages by name. Useful when the user has many pages to choose from.",
            "example": "My Business Page",
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "facebook": {
                    "description": "Returns Facebook Pages the user can manage. Use the page's `id` as `originId` when attaching.",
                    "summary": "Facebook Pages Response",
                    "value": {
                      "message": "Fetched Facebook Account",
                      "results": {
                        "pages": [
                          {
                            "avatar": "https://graph.facebook.com/244405123411687/picture",
                            "id": "244405123411687",
                            "isConnected": false,
                            "isOwned": true,
                            "name": "My Business Page"
                          },
                          {
                            "avatar": "https://graph.facebook.com/567890123456789/picture",
                            "id": "567890123456789",
                            "isConnected": true,
                            "isOwned": false,
                            "name": "Another Page"
                          }
                        ]
                      },
                      "statusCode": 200,
                      "success": true
                    }
                  },
                  "google": {
                    "description": "Returns Google Business Profile locations. Use both `location` and `account` objects when attaching.",
                    "summary": "Google Business Profile Locations Response",
                    "value": {
                      "message": "Fetched Google Business Account",
                      "results": {
                        "locations": {
                          "account": {
                            "accountName": "My Business Account",
                            "name": "accounts/123456789012345678",
                            "type": "PERSONAL",
                            "verificationState": "VERIFIED",
                            "vettedState": "VETTED"
                          },
                          "location": {
                            "isConnected": false,
                            "isVerified": true,
                            "metadata": {
                              "canDelete": true,
                              "hasGoogleUpdated": true
                            },
                            "name": "locations/12345678901234567890",
                            "storeCode": "STORE001",
                            "storefrontAddress": {
                              "locality": "New York",
                              "regionCode": "US"
                            },
                            "title": "My Business Location"
                          }
                        }
                      },
                      "statusCode": 200,
                      "success": true
                    }
                  },
                  "instagram": {
                    "description": "Returns Instagram Professional Accounts (Business/Creator) linked to Facebook Pages.",
                    "summary": "Instagram Professional Accounts Response",
                    "value": {
                      "message": "Fetched Instagram Account",
                      "results": {
                        "accounts": [
                          {
                            "avatar": "https://...",
                            "id": "17841405123456789",
                            "isBusinessAccount": true,
                            "isConnected": false,
                            "name": "my_instagram_business",
                            "pageId": "244405123411687"
                          }
                        ]
                      },
                      "statusCode": 200,
                      "success": true
                    }
                  },
                  "linkedin": {
                    "description": "Returns LinkedIn company pages and personal profile the user can post from.",
                    "summary": "LinkedIn Pages & Profile Response",
                    "value": {
                      "message": "Fetched LinkedIn Account",
                      "results": {
                        "pages": [
                          {
                            "avatar": "https://...",
                            "id": "urn:li:organization:12345678",
                            "isConnected": false,
                            "name": "My Company"
                          }
                        ],
                        "profile": {
                          "avatar": "https://...",
                          "id": "urn:li:person:AbCdEfGhIj",
                          "name": "John Doe"
                        }
                      },
                      "statusCode": 200,
                      "success": true
                    }
                  },
                  "pinterest": {
                    "description": "Returns Pinterest business account information.",
                    "summary": "Pinterest Account Response",
                    "value": {
                      "message": "Fetched Pinterest Account",
                      "results": {
                        "avatar": "https://...",
                        "businessName": "My Pinterest Business",
                        "id": "123456789012345678",
                        "isConnected": false,
                        "username": "mybusiness"
                      },
                      "statusCode": 200,
                      "success": true
                    }
                  },
                  "tiktok": {
                    "description": "Returns TikTok creator account information.",
                    "summary": "TikTok Creator Account Response",
                    "value": {
                      "message": "Fetched TikTok Account",
                      "results": {
                        "avatarUrl": "https://...",
                        "displayName": "My TikTok",
                        "isConnected": false,
                        "openId": "7234567890123456789"
                      },
                      "statusCode": 200,
                      "success": true
                    }
                  },
                  "youtube": {
                    "description": "Returns YouTube channels the user owns.",
                    "summary": "YouTube Channels Response",
                    "value": {
                      "message": "Fetched YouTube Account",
                      "results": {
                        "channels": [
                          {
                            "avatar": "https://...",
                            "id": "UCabcdefghijklmnop",
                            "isConnected": false,
                            "name": "My YouTube Channel"
                          }
                        ]
                      },
                      "statusCode": 200,
                      "success": true
                    }
                  }
                },
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/GetFacebookAccountsResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/GetInstagramAccountsResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/GetGoogleLocationResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/GetLinkedInAccountsResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/GetTiktokAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/GetTiktokBusinessAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/GetYouTubeAccountsResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/GetPinterestAccountsResponseDTO"
                    }
                  ]
                }
              }
            },
            "description": "Returns available accounts/pages/channels that can be connected. Response structure varies by platform - see examples below."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get Available Accounts (Step 2 of 3)",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-oauth-accounts"
      },
      "post": {
        "description": "## OAuth Connection Flow - Step 3: Connect the Account\n\nThis is the final step in the OAuth flow. After retrieving available accounts (Step 2), use this endpoint to connect the selected account to your location.\n\n### OAuth Flow Summary\n\n1. **Start OAuth** → User authenticates with platform\n2. **Get Accounts** → Retrieved available pages/channels\n3. **Attach Account** (this endpoint) → Connect the selected account\n\n### Request Body by Platform\n\nThe request body structure varies depending on the platform:\n\n#### Facebook / Instagram\n```json\n{\n  \"type\": \"page\",\n  \"originId\": \"244405XXXXX11687\",\n  \"name\": \"My Facebook Page\",\n  \"avatar\": \"https://...\" // optional\n}\n```\n\n#### Google Business Profile\n```json\n{\n  \"location\": {\n    \"name\": \"locations/12345\",\n    \"title\": \"My Business Location\",\n    \"storeCode\": \"STORE123\",\n    \"isVerified\": \"ChIJsZQpj1qbXjkRQNDUG4UUx6k\"\n  },\n  \"account\": {\n    \"name\": \"accounts/12345\",\n    \"accountName\": \"My Business Account\",\n    \"type\": \"LOCATION_GROUP\",\n    \"verificationState\": \"VERIFIED\",\n    \"vettedState\": \"VETTED\"\n  }\n}\n```\n\n#### LinkedIn\n```json\n{\n  \"type\": \"page\",\n  \"originId\": \"urn:li:organization:12345\",\n  \"name\": \"My LinkedIn Page\",\n  \"avatar\": \"https://...\" // optional\n}\n```\n\n#### TikTok\n```json\n{\n  \"originId\": \"7234567890123456789\",\n  \"name\": \"My TikTok Account\",\n  \"avatar\": \"https://...\" // optional\n}\n```\n\n#### YouTube\n```json\n{\n  \"originId\": \"UCxxxxxxxxxxxxxxxx\",\n  \"name\": \"My YouTube Channel\",\n  \"avatar\": \"https://...\" // optional\n}\n```\n\n#### Pinterest\n```json\n{\n  \"originId\": \"123456789\",\n  \"name\": \"My Pinterest Account\",\n  \"avatar\": \"https://...\" // optional\n}\n```\n\n### After Connection\n\nOnce connected, the account will appear in your location's connected accounts and can be used for social media posting.",
        "operationId": "attach-oauth-accounts",
        "parameters": [
          {
            "description": "Access Token",
            "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "The Location ID where you want to connect this social account",
            "example": "w37swmmLbA02zgqKPpxITe2",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Social media platform (must match the platform used in Steps 1 and 2)",
            "example": "facebook",
            "in": "path",
            "name": "platform",
            "required": true,
            "schema": {
              "enum": [
                "google",
                "facebook",
                "instagram",
                "linkedin",
                "tiktok",
                "youtube",
                "pinterest",
                "threads",
                "bluesky"
              ],
              "type": "string"
            }
          },
          {
            "description": "The OAuth Account ID received from Step 1 (same as used in Step 2)",
            "example": "w37swmmLbA02zgqKPpxITe",
            "in": "path",
            "name": "accountId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "examples": {
                "facebook": {
                  "summary": "Facebook Page",
                  "value": {
                    "avatar": "https://graph.facebook.com/244405123411687/picture",
                    "name": "My Facebook Page",
                    "originId": "244405123411687",
                    "type": "page"
                  }
                },
                "google": {
                  "summary": "Google Business Profile",
                  "value": {
                    "account": {
                      "accountName": "My Business Account",
                      "name": "accounts/123456789012345678",
                      "type": "LOCATION_GROUP",
                      "verificationState": "VERIFIED",
                      "vettedState": "VETTED"
                    },
                    "location": {
                      "name": "locations/12345678901234567890",
                      "storeCode": "STORE001",
                      "title": "My Business Location"
                    }
                  }
                },
                "instagram": {
                  "summary": "Instagram Professional Account",
                  "value": {
                    "avatar": "https://...",
                    "name": "My Instagram Business",
                    "originId": "17841405123456789",
                    "type": "page"
                  }
                },
                "linkedin": {
                  "summary": "LinkedIn Page",
                  "value": {
                    "name": "My Company Page",
                    "originId": "urn:li:organization:12345678",
                    "type": "page"
                  }
                },
                "tiktok": {
                  "summary": "TikTok Account",
                  "value": {
                    "avatar": "https://...",
                    "name": "My TikTok",
                    "originId": "7234567890123456789"
                  }
                }
              },
              "schema": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/AttachFBAccountDTO"
                  },
                  {
                    "$ref": "#/components/schemas/AttachIGAccountDTO"
                  },
                  {
                    "$ref": "#/components/schemas/AttachGMBLocationDTO"
                  },
                  {
                    "$ref": "#/components/schemas/AttachPinterestAccountDTO"
                  },
                  {
                    "$ref": "#/components/schemas/AttachTiktokAccountDTO"
                  },
                  {
                    "$ref": "#/components/schemas/AttachYoutubeAccountResponseDTO"
                  },
                  {
                    "$ref": "#/components/schemas/AttachLinkedinAccountDTO"
                  },
                  {
                    "$ref": "#/components/schemas/AttachThreadsAccountDTO"
                  }
                ]
              }
            }
          },
          "description": "Account details to connect. The structure varies by platform - see description above for examples.",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/SocialMediaFBAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/SocialMediaInstagramAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/SocialMediaGmbAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/SocialMediaLinkedInAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/SocialMediaTiktokAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/SocialMediaYouTubeAccountResponseDTO"
                    },
                    {
                      "$ref": "#/components/schemas/SocialMediaPinterestAccountResponseDTO"
                    }
                  ]
                }
              }
            },
            "description": "Successful response - Account attached. Response structure varies by platform."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Connect Account (Step 3 of 3)",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "attach-oauth-accounts"
      }
    },
    "/social-media-posting/oauth/{platform}/start": {
      "get": {
        "description": "## OAuth Connection Flow - Step 1: Initiate OAuth\n\nThis is the first step in the 3-step OAuth flow to connect a social media account:\n\n1. **Start OAuth** (this endpoint) → User authenticates with the platform\n2. **Get Accounts** → Retrieve available pages/channels to connect\n3. **Attach Account** → Connect the selected account to your location\n\n### How to Use\n\nOpen this API in a browser window (not via cURL) with the required query parameters. The user will be redirected to the platform's OAuth login screen.\n\n### Receiving the OAuth Response\n\nAfter successful authentication, the OAuth window will post a message back to your application. Listen for this message to get the `accountId` needed for the next step.\n\n```javascript\nwindow.addEventListener('message', function(e) {\n  if (e.data && e.data.page === 'social_media_posting') {\n    const { actionType, page, platform, placement, accountId, reconnectAccounts } = e.data;\n    // Use accountId for Step 2: GET /oauth/{locationId}/{platform}/accounts/{accountId}\n  }\n}, false);\n```\n\n### Event Data Response\n\n| Field | Type | Example | Description |\n|-------|------|---------|-------------|\n| actionType | string | \"close\" | The action type |\n| page | string | \"social-media-posting\" | Source page identifier |\n| platform | string | \"facebook\" | The OAuth platform |\n| placement | string | \"placement\" | Placement context |\n| accountId | string | \"658a9b6833b91e0ecb8f3958\" | **Use this for Step 2** |\n| reconnectAccounts | string[] | [\"658a9b...\", \"efd2da...\"] | Accounts that need reconnection |\n\n### Next Step\n\nUse the `accountId` from the response to call:\n```\nGET /social-media-posting/oauth/{locationId}/{platform}/accounts/{accountId}\n```\n\n### Platform Notes\n\n- **bluesky**: Currently not supported, will return an error\n- **tiktok-business**: Uses a separate business OAuth flow",
        "operationId": "start-oauth",
        "parameters": [
          {
            "description": "Access Token",
            "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "Social media platform to connect. Each platform has specific account types:\n- **google**: Google Business Profile locations\n- **facebook**: Facebook Pages\n- **instagram**: Instagram Professional Accounts (Business/Creator)\n- **linkedin**: LinkedIn Pages and Profiles\n- **tiktok**: TikTok Creator Accounts\n- **tiktok-business**: TikTok Business Center Accounts\n- **youtube**: YouTube Channels\n- **pinterest**: Pinterest Business Accounts\n- **threads**: Threads Profiles\n- **bluesky**: Bluesky Accounts (currently not supported)",
            "example": "facebook",
            "in": "path",
            "name": "platform",
            "required": true,
            "schema": {
              "enum": [
                "google",
                "facebook",
                "instagram",
                "linkedin",
                "tiktok",
                "tiktok-business",
                "youtube",
                "pinterest",
                "threads",
                "bluesky"
              ],
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "example": "w37swmmLbA02zgqKPpxITe2",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "User Id",
            "example": "u37swmmLbA02zgqKPpxITe2",
            "in": "query",
            "name": "userId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Page",
            "example": "integration",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Reconnect",
            "example": "true",
            "in": "query",
            "name": "reconnect",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Start OAuth Flow (Step 1 of 3)",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "start-oauth"
      }
    },
    "/social-media-posting/statistics": {
      "post": {
        "description": "Retrieve analytics data for multiple social media accounts. Supports custom date ranges for both the current period and a comparison period. If no date ranges are provided, defaults to the last 7 days (excluding today) with comparison to the previous 7 days.",
        "operationId": "get-statistics",
        "parameters": [
          {
            "description": "Location ID",
            "example": "w37swmmLbA02zgqKPpxITe2",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "examples": {
                "custom-range-with-comparison": {
                  "summary": "Custom date range with comparison",
                  "value": {
                    "currentRange": {
                      "endDate": "2025-03-31T23:59:59.999Z",
                      "startDate": "2025-03-01T00:00:00.000Z"
                    },
                    "platforms": [
                      "facebook",
                      "instagram"
                    ],
                    "prevRange": {
                      "endDate": "2025-02-28T23:59:59.999Z",
                      "startDate": "2025-02-01T00:00:00.000Z"
                    },
                    "profileIds": [
                      "67a5a9aa776c837de4aa5b12"
                    ]
                  }
                },
                "custom-range-without-comparison": {
                  "summary": "Custom date range without comparison",
                  "value": {
                    "currentRange": {
                      "endDate": "2025-03-31T23:59:59.999Z",
                      "startDate": "2025-03-01T00:00:00.000Z"
                    },
                    "platforms": [
                      "facebook",
                      "instagram"
                    ],
                    "profileIds": [
                      "67a5a9aa776c837de4aa5b12"
                    ]
                  }
                },
                "default-behavior": {
                  "description": "Returns last 7 days (excluding today) with comparison to the previous 7 days.",
                  "summary": "Default behavior (backward compatible, no date ranges)",
                  "value": {
                    "platforms": [
                      "facebook",
                      "instagram"
                    ],
                    "profileIds": [
                      "67a5a9aa776c837de4aa5b12"
                    ]
                  }
                }
              },
              "schema": {
                "properties": {
                  "currentRange": {
                    "description": "Custom date range for the current analytics period. If omitted, defaults to the last 7 days (excluding today) with automatic comparison to the previous 7 days.",
                    "properties": {
                      "endDate": {
                        "description": "End date in ISO 8601 format. Must be after startDate.",
                        "example": "2025-03-31T23:59:59.999Z",
                        "format": "date-time",
                        "type": "string"
                      },
                      "startDate": {
                        "description": "Start date in ISO 8601 format.",
                        "example": "2025-03-01T00:00:00.000Z",
                        "format": "date-time",
                        "type": "string"
                      }
                    },
                    "required": [
                      "startDate",
                      "endDate"
                    ],
                    "type": "object"
                  },
                  "platforms": {
                    "description": "Array of social media platforms to filter analytics by. If not provided, all platforms will be included. NOTE: Linkedin (PAGE only) and Tiktok (BUSINESS only) are supported.",
                    "example": [
                      "facebook",
                      "instagram"
                    ],
                    "items": {
                      "enum": [
                        "facebook",
                        "instagram",
                        "linkedin",
                        "google",
                        "pinterest",
                        "youtube",
                        "tiktok"
                      ],
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "prevRange": {
                    "description": "Comparison date range. Can only be provided when currentRange is also present. If omitted while currentRange is present, no comparison data is returned.",
                    "properties": {
                      "endDate": {
                        "description": "End date in ISO 8601 format. Must be after startDate.",
                        "example": "2025-02-28T23:59:59.999Z",
                        "format": "date-time",
                        "type": "string"
                      },
                      "startDate": {
                        "description": "Start date in ISO 8601 format.",
                        "example": "2025-02-01T00:00:00.000Z",
                        "format": "date-time",
                        "type": "string"
                      }
                    },
                    "required": [
                      "startDate",
                      "endDate"
                    ],
                    "type": "object"
                  },
                  "profileIds": {
                    "description": "Array of connected social media account IDs to fetch analytics for. This can be found as 'profileId' in /accounts api.",
                    "example": [
                      "67a5a9aa776c837de4aa5b12"
                    ],
                    "items": {
                      "type": "string"
                    },
                    "maxItems": 100,
                    "minItems": 1,
                    "type": "array"
                  }
                },
                "required": [
                  "profileIds"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "example": {
                    "message": "Analytics Built Successfully",
                    "results": {
                      "breakdowns": {
                        "engagement": {
                          "google": {
                            "change": 0,
                            "comments": 0,
                            "likes": 0,
                            "shares": 0
                          }
                        },
                        "impressions": {
                          "platforms": {
                            "google": {
                              "change": 0,
                              "value": 0
                            }
                          },
                          "total": 0,
                          "totalChange": 0
                        },
                        "posts": {
                          "platforms": {
                            "google": {
                              "change": 0,
                              "value": 0
                            }
                          },
                          "total": 0,
                          "totalChange": 0
                        },
                        "reach": {
                          "platforms": {
                            "google": {
                              "change": 0,
                              "value": 0
                            }
                          },
                          "total": 0,
                          "totalChange": 0
                        }
                      },
                      "dayRange": [
                        "Mon",
                        "Tue",
                        "Wed",
                        "Thu",
                        "Fri",
                        "Sat",
                        "Sun"
                      ],
                      "demographics": {
                        "age": {
                          "totals": {
                            "13-17": 0,
                            "18-24": 0,
                            "25-34": 0,
                            "35-44": 0,
                            "45-54": 0,
                            "55-64": 0,
                            "65+": 0
                          }
                        },
                        "gender": {
                          "totals": {
                            "female": {
                              "percentage": 0,
                              "total": 0
                            },
                            "male": {
                              "percentage": 0,
                              "total": 0
                            },
                            "unknown": {
                              "percentage": 0,
                              "total": 0
                            }
                          }
                        }
                      },
                      "platformTotals": {
                        "followers": {
                          "google": {
                            "series": [
                              0,
                              0,
                              0,
                              0,
                              0,
                              0,
                              0
                            ],
                            "total": 0
                          }
                        },
                        "impressions": {
                          "google": {
                            "series": [
                              0,
                              0,
                              0,
                              0,
                              0,
                              0,
                              0
                            ],
                            "total": 0
                          }
                        },
                        "likes": {
                          "google": {
                            "series": [
                              0,
                              0,
                              0,
                              0,
                              0,
                              0,
                              0
                            ],
                            "total": 0
                          }
                        }
                      },
                      "postPerformance": {
                        "comments": [
                          0,
                          0,
                          0,
                          0,
                          0,
                          0,
                          0
                        ],
                        "impressions": [
                          0,
                          0,
                          0,
                          0,
                          0,
                          0,
                          0
                        ],
                        "likes": [
                          0,
                          0,
                          0,
                          0,
                          0,
                          0,
                          0
                        ],
                        "posts": {
                          "google": [
                            0,
                            0,
                            0,
                            0,
                            0,
                            0,
                            0
                          ]
                        }
                      },
                      "totals": {
                        "comments": 0,
                        "followers": 0,
                        "impressions": 0,
                        "likes": 0,
                        "posts": 0
                      }
                    },
                    "traceId": "42fc8dd8-d55b-475f-944f-9efb90d77564"
                  },
                  "properties": {
                    "message": {
                      "description": "Success message indicating the analytics were built successfully",
                      "example": "Analytics Built Successfully",
                      "type": "string"
                    },
                    "results": {
                      "description": "Analytics data grouped by metrics and platforms",
                      "example": {
                        "dayRange": [
                          "Mon",
                          "Tue",
                          "Wed",
                          "Thu",
                          "Fri",
                          "Sat",
                          "Sun"
                        ],
                        "totals": {
                          "comments": 0,
                          "followers": 0,
                          "impressions": 0,
                          "likes": 0,
                          "posts": 0
                        }
                      },
                      "properties": {
                        "breakdowns": {
                          "description": "Detailed breakdowns by metric and platform",
                          "example": {
                            "posts": {
                              "platforms": {
                                "google": {
                                  "change": 0,
                                  "value": 0
                                }
                              },
                              "total": 0,
                              "totalChange": 0
                            }
                          },
                          "properties": {
                            "engagement": {
                              "additionalProperties": {
                                "properties": {
                                  "change": {
                                    "description": "Percentage change in engagement compared to previous period",
                                    "example": -66.67,
                                    "type": "number"
                                  },
                                  "comments": {
                                    "description": "Number of comments received on this platform",
                                    "example": 11,
                                    "type": "number"
                                  },
                                  "likes": {
                                    "description": "Number of likes received on this platform",
                                    "example": 0,
                                    "type": "number"
                                  },
                                  "shares": {
                                    "description": "Number of shares on this platform",
                                    "example": 0,
                                    "type": "number"
                                  }
                                },
                                "type": "object"
                              },
                              "description": "Engagement metrics breakdown by platform",
                              "example": {
                                "instagram": {
                                  "change": -66.67,
                                  "comments": 11,
                                  "likes": 0,
                                  "shares": 0
                                }
                              },
                              "type": "object"
                            },
                            "impressions": {
                              "description": "Impressions breakdown by platform",
                              "example": {
                                "platforms": {
                                  "instagram": {
                                    "change": 83.85,
                                    "value": 239
                                  }
                                },
                                "total": 944,
                                "totalChange": -49.68
                              },
                              "properties": {
                                "platforms": {
                                  "additionalProperties": {
                                    "properties": {
                                      "change": {
                                        "description": "Percentage change compared to previous period",
                                        "example": 83.85,
                                        "type": "number"
                                      },
                                      "value": {
                                        "description": "Number of impressions for this platform",
                                        "example": 239,
                                        "type": "number"
                                      }
                                    },
                                    "type": "object"
                                  },
                                  "description": "Platform-specific impression counts with change percentages",
                                  "example": {
                                    "instagram": {
                                      "change": 83.85,
                                      "value": 239
                                    }
                                  },
                                  "type": "object"
                                },
                                "total": {
                                  "description": "Total impressions across all platforms",
                                  "example": 944,
                                  "type": "number"
                                },
                                "totalChange": {
                                  "description": "Percentage change in total impressions compared to previous period",
                                  "example": -49.68,
                                  "type": "number"
                                }
                              },
                              "type": "object"
                            },
                            "posts": {
                              "description": "Post count breakdown by platform",
                              "example": {
                                "platforms": {
                                  "instagram": {
                                    "change": -71.95,
                                    "value": 46
                                  }
                                },
                                "total": 356,
                                "totalChange": -39.35
                              },
                              "properties": {
                                "platforms": {
                                  "additionalProperties": {
                                    "properties": {
                                      "change": {
                                        "description": "Percentage change compared to previous period",
                                        "example": -71.95,
                                        "type": "number"
                                      },
                                      "value": {
                                        "description": "Number of posts for this platform",
                                        "example": 46,
                                        "type": "number"
                                      }
                                    },
                                    "type": "object"
                                  },
                                  "description": "Platform-specific post counts with change percentages",
                                  "example": {
                                    "instagram": {
                                      "change": -71.95,
                                      "value": 46
                                    }
                                  },
                                  "type": "object"
                                },
                                "total": {
                                  "description": "Total number of posts across all platforms",
                                  "example": 356,
                                  "type": "number"
                                },
                                "totalChange": {
                                  "description": "Percentage change in total posts compared to previous period",
                                  "example": -39.35,
                                  "type": "number"
                                }
                              },
                              "type": "object"
                            },
                            "reach": {
                              "description": "Reach breakdown by platform",
                              "example": {
                                "platforms": {
                                  "instagram": {
                                    "change": 128.43,
                                    "value": 233
                                  }
                                },
                                "total": 354,
                                "totalChange": 98.88
                              },
                              "properties": {
                                "platforms": {
                                  "additionalProperties": {
                                    "properties": {
                                      "change": {
                                        "description": "Percentage change compared to previous period",
                                        "example": 128.43,
                                        "type": "number"
                                      },
                                      "value": {
                                        "description": "Reach count for this platform",
                                        "example": 233,
                                        "type": "number"
                                      }
                                    },
                                    "type": "object"
                                  },
                                  "description": "Platform-specific reach counts with change percentages",
                                  "example": {
                                    "instagram": {
                                      "change": 128.43,
                                      "value": 233
                                    }
                                  },
                                  "type": "object"
                                },
                                "total": {
                                  "description": "Total reach across all platforms",
                                  "example": 354,
                                  "type": "number"
                                },
                                "totalChange": {
                                  "description": "Percentage change in total reach compared to previous period",
                                  "example": 98.88,
                                  "type": "number"
                                }
                              },
                              "type": "object"
                            }
                          },
                          "type": "object"
                        },
                        "dayRange": {
                          "description": "Array of day names for the analytics period",
                          "example": [
                            "Mon",
                            "Tue",
                            "Wed",
                            "Thu",
                            "Fri",
                            "Sat",
                            "Sun"
                          ],
                          "items": {
                            "type": "string"
                          },
                          "type": "array"
                        },
                        "demographics": {
                          "description": "Demographic data breakdown",
                          "example": {
                            "gender": {
                              "totals": {
                                "female": {
                                  "percentage": 0,
                                  "total": 0
                                },
                                "male": {
                                  "percentage": 0,
                                  "total": 0
                                },
                                "unknown": {
                                  "percentage": 0,
                                  "total": 0
                                }
                              }
                            }
                          },
                          "properties": {
                            "age": {
                              "description": "Age distribution of audience",
                              "example": {
                                "totals": {
                                  "13-17": 0,
                                  "18-24": 0,
                                  "25-34": 0,
                                  "35-44": 0,
                                  "45-54": 0,
                                  "55-64": 0,
                                  "65+": 0
                                }
                              },
                              "properties": {
                                "totals": {
                                  "description": "Total counts by age group",
                                  "example": {
                                    "13-17": 0,
                                    "18-24": 0,
                                    "25-34": 0
                                  },
                                  "properties": {
                                    "13-17": {
                                      "description": "Number of audience members aged 13-17",
                                      "example": 0,
                                      "type": "number"
                                    },
                                    "18-24": {
                                      "description": "Number of audience members aged 18-24",
                                      "example": 0,
                                      "type": "number"
                                    },
                                    "25-34": {
                                      "description": "Number of audience members aged 25-34",
                                      "example": 0,
                                      "type": "number"
                                    },
                                    "35-44": {
                                      "description": "Number of audience members aged 35-44",
                                      "example": 0,
                                      "type": "number"
                                    },
                                    "45-54": {
                                      "description": "Number of audience members aged 45-54",
                                      "example": 0,
                                      "type": "number"
                                    },
                                    "55-64": {
                                      "description": "Number of audience members aged 55-64",
                                      "example": 0,
                                      "type": "number"
                                    },
                                    "65+": {
                                      "description": "Number of audience members aged 65 and above",
                                      "example": 0,
                                      "type": "number"
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "type": "object"
                            },
                            "gender": {
                              "description": "Gender distribution of audience",
                              "example": {
                                "totals": {
                                  "female": {
                                    "percentage": 0,
                                    "total": 0
                                  },
                                  "male": {
                                    "percentage": 0,
                                    "total": 0
                                  },
                                  "unknown": {
                                    "percentage": 0,
                                    "total": 0
                                  }
                                }
                              },
                              "properties": {
                                "totals": {
                                  "description": "Total counts and percentages by gender",
                                  "example": {
                                    "male": {
                                      "percentage": 0,
                                      "total": 0
                                    }
                                  },
                                  "properties": {
                                    "female": {
                                      "description": "Female audience statistics",
                                      "example": {
                                        "percentage": 0,
                                        "total": 0
                                      },
                                      "properties": {
                                        "percentage": {
                                          "description": "Percentage of female audience",
                                          "example": 0,
                                          "type": "number"
                                        },
                                        "total": {
                                          "description": "Total number of female audience members",
                                          "example": 0,
                                          "type": "number"
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "male": {
                                      "description": "Male audience statistics",
                                      "example": {
                                        "percentage": 0,
                                        "total": 0
                                      },
                                      "properties": {
                                        "percentage": {
                                          "description": "Percentage of male audience",
                                          "example": 0,
                                          "type": "number"
                                        },
                                        "total": {
                                          "description": "Total number of male audience members",
                                          "example": 0,
                                          "type": "number"
                                        }
                                      },
                                      "type": "object"
                                    },
                                    "unknown": {
                                      "description": "Unknown gender audience statistics",
                                      "example": {
                                        "percentage": 0,
                                        "total": 0
                                      },
                                      "properties": {
                                        "percentage": {
                                          "description": "Percentage of audience with unknown gender",
                                          "example": 0,
                                          "type": "number"
                                        },
                                        "total": {
                                          "description": "Total number of audience members with unknown gender",
                                          "example": 0,
                                          "type": "number"
                                        }
                                      },
                                      "type": "object"
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "type": "object"
                            }
                          },
                          "type": "object"
                        },
                        "platformTotals": {
                          "description": "Platform-wise totals with time series data",
                          "example": {
                            "impressions": {
                              "instagram": {
                                "series": [
                                  22,
                                  6,
                                  4,
                                  69,
                                  138,
                                  0,
                                  0
                                ],
                                "total": 239
                              }
                            }
                          },
                          "properties": {
                            "followers": {
                              "additionalProperties": {
                                "properties": {
                                  "series": {
                                    "description": "Daily follower counts over the analytics period",
                                    "example": [
                                      0,
                                      0,
                                      0,
                                      0,
                                      0,
                                      0,
                                      0
                                    ],
                                    "items": {
                                      "type": "number"
                                    },
                                    "type": "array"
                                  },
                                  "total": {
                                    "description": "Total followers for this platform",
                                    "example": 0,
                                    "type": "number"
                                  }
                                },
                                "type": "object"
                              },
                              "description": "Daily follower counts by platform",
                              "example": {
                                "instagram": {
                                  "series": [
                                    0,
                                    0,
                                    0,
                                    0,
                                    0,
                                    0,
                                    0
                                  ],
                                  "total": 0
                                }
                              },
                              "type": "object"
                            },
                            "impressions": {
                              "additionalProperties": {
                                "properties": {
                                  "series": {
                                    "description": "Daily impression counts over the analytics period",
                                    "example": [
                                      22,
                                      6,
                                      4,
                                      69,
                                      138,
                                      0,
                                      0
                                    ],
                                    "items": {
                                      "type": "number"
                                    },
                                    "type": "array"
                                  },
                                  "total": {
                                    "description": "Total impressions for this platform",
                                    "example": 239,
                                    "type": "number"
                                  }
                                },
                                "type": "object"
                              },
                              "description": "Daily impression counts by platform",
                              "example": {
                                "instagram": {
                                  "series": [
                                    22,
                                    6,
                                    4,
                                    69,
                                    138,
                                    0,
                                    0
                                  ],
                                  "total": 239
                                }
                              },
                              "type": "object"
                            },
                            "likes": {
                              "additionalProperties": {
                                "properties": {
                                  "series": {
                                    "description": "Daily like counts over the analytics period",
                                    "example": [
                                      0,
                                      0,
                                      0,
                                      1,
                                      0,
                                      0,
                                      0
                                    ],
                                    "items": {
                                      "type": "number"
                                    },
                                    "type": "array"
                                  },
                                  "total": {
                                    "description": "Total likes for this platform",
                                    "example": 1,
                                    "type": "number"
                                  }
                                },
                                "type": "object"
                              },
                              "description": "Daily like counts by platform",
                              "example": {
                                "linkedin": {
                                  "series": [
                                    0,
                                    0,
                                    0,
                                    1,
                                    0,
                                    0,
                                    0
                                  ],
                                  "total": 1
                                }
                              },
                              "type": "object"
                            }
                          },
                          "type": "object"
                        },
                        "postPerformance": {
                          "description": "Post performance metrics over time",
                          "example": {
                            "comments": [
                              0,
                              0,
                              0,
                              0,
                              0,
                              0,
                              0
                            ],
                            "impressions": [
                              0,
                              0,
                              0,
                              0,
                              0,
                              0,
                              0
                            ],
                            "likes": [
                              0,
                              0,
                              0,
                              0,
                              0,
                              0,
                              0
                            ],
                            "posts": {
                              "google": [
                                0,
                                0,
                                0,
                                0,
                                0,
                                0,
                                0
                              ]
                            }
                          },
                          "properties": {
                            "comments": {
                              "description": "Daily comments over the analytics period",
                              "example": [
                                0,
                                0,
                                0,
                                0,
                                0,
                                0,
                                0
                              ],
                              "items": {
                                "type": "number"
                              },
                              "type": "array"
                            },
                            "impressions": {
                              "description": "Daily impressions over the analytics period",
                              "example": [
                                0,
                                0,
                                0,
                                0,
                                0,
                                0,
                                0
                              ],
                              "items": {
                                "type": "number"
                              },
                              "type": "array"
                            },
                            "likes": {
                              "description": "Daily likes over the analytics period",
                              "example": [
                                0,
                                0,
                                0,
                                0,
                                0,
                                0,
                                0
                              ],
                              "items": {
                                "type": "number"
                              },
                              "type": "array"
                            },
                            "posts": {
                              "description": "Number of posts published per day, organized by platform",
                              "example": {
                                "facebook": [
                                  1,
                                  0,
                                  2,
                                  1,
                                  0,
                                  1,
                                  1
                                ],
                                "google": [
                                  0,
                                  0,
                                  0,
                                  0,
                                  0,
                                  0,
                                  0
                                ],
                                "instagram": [
                                  2,
                                  1,
                                  3,
                                  0,
                                  1,
                                  2,
                                  4
                                ],
                                "linkedin": [
                                  0,
                                  0,
                                  1,
                                  0,
                                  0,
                                  0,
                                  1
                                ],
                                "youtube": [
                                  0,
                                  0,
                                  0,
                                  1,
                                  0,
                                  0,
                                  0
                                ]
                              },
                              "type": "object"
                            }
                          },
                          "type": "object"
                        },
                        "totals": {
                          "description": "Aggregated metrics totals",
                          "example": {
                            "comments": 0,
                            "followers": 0,
                            "impressions": 0,
                            "likes": 0,
                            "posts": 0
                          },
                          "properties": {
                            "comments": {
                              "description": "Total number of comments received",
                              "example": 0,
                              "type": "number"
                            },
                            "followers": {
                              "description": "Total number of followers across all platforms",
                              "example": 0,
                              "type": "number"
                            },
                            "impressions": {
                              "description": "Total number of impressions across all posts",
                              "example": 0,
                              "type": "number"
                            },
                            "likes": {
                              "description": "Total number of likes received",
                              "example": 0,
                              "type": "number"
                            },
                            "posts": {
                              "description": "Total number of posts published",
                              "example": 0,
                              "type": "number"
                            }
                          },
                          "type": "object"
                        }
                      },
                      "type": "object"
                    },
                    "traceId": {
                      "description": "Unique identifier for tracking this request",
                      "example": "42fc8dd8-d55b-475f-944f-9efb90d77564",
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Successfully retrieved analytics data"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request - Occurs when: more than 100 accounts are requested, invalid date formats are provided, startDate is after endDate, prevRange is provided without currentRange, or invalid platform values are specified."
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized - Invalid or missing authentication credentials"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity - Invalid request body format"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/statistics.readonly"
            ]
          }
        ],
        "summary": "Get Social Media Statistics",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-statistics"
      }
    },
    "/social-media-posting/{locationId}/accounts": {
      "get": {
        "description": "Get list of accounts and groups",
        "operationId": "get-account",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountsListResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/account.readonly"
            ]
          }
        ],
        "summary": "Get Accounts",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-account"
      }
    },
    "/social-media-posting/{locationId}/accounts/{id}": {
      "delete": {
        "description": "Delete account and account from group",
        "operationId": "delete-account",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Id",
            "example": "65fac446d599990d1313c1dd",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Company ID",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "in": "query",
            "name": "companyId",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "User ID",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "in": "query",
            "name": "userId",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationAndAccountDeleteResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete Account",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "delete-account"
      }
    },
    "/social-media-posting/{locationId}/categories": {
      "get": {
        "description": "Retrieve all categories for a specific location with optional search and pagination",
        "operationId": "get-categories-location-id",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Search text string",
            "example": "test",
            "in": "query",
            "name": "searchText",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Limit",
            "example": "10",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Skip",
            "example": "0",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetByLocationIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/category.readonly"
            ]
          }
        ],
        "summary": "Get categories by location id",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-categories-location-id"
      }
    },
    "/social-media-posting/{locationId}/categories/{id}": {
      "get": {
        "description": "Retrieve a specific category by its ID",
        "operationId": "get-categories-id",
        "parameters": [
          {
            "description": "Access Token",
            "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
            "in": "header",
            "name": "Authorization",
            "required": true,
            "schema": {
              "example": "Bearer 9c48df2694a849b6089f9d0d3513efe",
              "type": "string"
            }
          },
          {
            "description": "Category Id",
            "example": "6284c43d519161e96cc09c13",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location Id",
            "example": "6284c43d519161e96cc09c13",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetByIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get categories by id",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-categories-id"
      }
    },
    "/social-media-posting/{locationId}/csv": {
      "get": {
        "description": "Get the status of all CSV imports for a location",
        "operationId": "get-upload-status",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Number of records to skip",
            "example": "1",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": "0",
              "type": "string"
            }
          },
          {
            "description": "Maximum number of records to return",
            "example": "10",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": "10",
              "type": "string"
            }
          },
          {
            "description": "Include user data in response",
            "example": "true",
            "in": "query",
            "name": "includeUsers",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter CSVs imported from template library",
            "example": "true",
            "in": "query",
            "name": "isFromTemplate",
            "required": false,
            "schema": {
              "example": "true",
              "type": "string"
            }
          },
          {
            "description": "User ID",
            "example": "sdfdsfdsfEWEsdfsdsW32dd",
            "in": "query",
            "name": "userId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetUploadStatusResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get Upload Status",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-upload-status"
      },
      "post": {
        "description": "Upload a CSV file containing social media posts for bulk scheduling",
        "operationId": "upload-csv",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "properties": {
                  "file": {
                    "description": "CSV file to upload containing social media posts",
                    "example": "sample.csv",
                    "format": "binary",
                    "type": "string"
                  }
                },
                "required": [
                  "file"
                ],
                "type": "object"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SocialPlannerUploadFileResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/CSVFileRequiredBadRequestDTO"
                    },
                    {
                      "$ref": "#/components/schemas/CSVErrorResponseDTO"
                    }
                  ]
                }
              }
            },
            "description": "Bad Request - File is required or CSV validation error"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/csv.write"
            ]
          }
        ],
        "summary": "Upload CSV",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "upload-csv"
      }
    },
    "/social-media-posting/{locationId}/csv/{csvId}/post/{postId}": {
      "delete": {
        "description": "Delete a specific post from a CSV import",
        "operationId": "delete-csv-post",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "CSV Post Id",
            "example": "65f92e55cc884f0d0845e447",
            "in": "path",
            "name": "postId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "CSV Id",
            "example": "65f92e55cc884f0d0845e447",
            "in": "path",
            "name": "csvId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeletePostResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete CSV Post",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "delete-csv-post"
      }
    },
    "/social-media-posting/{locationId}/csv/{id}": {
      "delete": {
        "description": "Delete a CSV import and all its associated posts",
        "operationId": "delete-csv",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "CSV Id",
            "example": "65f92e55cc884f0d0845e447",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteCsvResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete CSV",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "delete-csv"
      },
      "get": {
        "description": "Get details of a specific CSV import including its posts",
        "operationId": "get-csv-post",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "CSV Id",
            "example": "65f92e55cc884f0d0845e447",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Number of records to skip",
            "example": "0",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Maximum number of records to return",
            "example": "10",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCsvPostResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get CSV Post",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-csv-post"
      },
      "patch": {
        "description": "Finalize a CSV import and schedule all posts for publishing",
        "operationId": "start-csv-finalize",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "CSV Id",
            "example": "65f92e55cc884f0d0845e447",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CSVDefaultDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CsvPostStatusResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Start CSV Finalize",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "start-csv-finalize"
      }
    },
    "/social-media-posting/{locationId}/posts": {
      "post": {
        "description": "Create posts for all supported platforms. It is possible to create customized posts per channel by using the same platform account IDs in a request and hitting the create post API multiple times with different summaries and account IDs per platform.\n\nThe content and media limitations, as well as platform rate limiters corresponding to the respective platforms, are provided in the following reference link:\n\n  Link: [Platform Limitations](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations \"Social Planner Help\")",
        "operationId": "create-post",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePostDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatePostSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/post.write"
            ]
          }
        ],
        "summary": "Create post",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "create-post"
      }
    },
    "/social-media-posting/{locationId}/posts/bulk-delete": {
      "post": {
        "description": "Deletes multiple posts based on the provided list of post IDs. \n                  This operation is useful for clearing up large numbers of posts efficiently. \n                  \nNote: \n                  \n1.The maximum number of posts that can be deleted in a single request is '50'.\n                  \n2.However, It will only get deleted in CRM database but still\n                   it is recommended to be cautious of this operation.",
        "operationId": "bulk-delete-social-planner-posts",
        "parameters": [
          {
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeletePostsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkDeleteResponseDto"
                }
              }
            },
            "description": "Posts deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Cannot delete more than 50 posts at a time."
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "404": {
            "description": "No posts found with the given IDs."
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "description": "An error occurred while trying to delete the posts. Please try again later."
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Bulk Delete Social Planner Posts",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "bulk-delete-social-planner-posts"
      }
    },
    "/social-media-posting/{locationId}/posts/list": {
      "post": {
        "description": "Get Posts",
        "operationId": "get-posts",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchPostDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PostSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/post.readonly"
            ]
          }
        ],
        "summary": "Get posts",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-posts"
      }
    },
    "/social-media-posting/{locationId}/posts/{id}": {
      "delete": {
        "description": "Delete Post",
        "operationId": "delete-post",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Post Id",
            "example": "65fac446d599990d1313c1dd",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeletePostSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Delete Post",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "delete-post"
      },
      "get": {
        "description": "Get post",
        "operationId": "get-post",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Post Id",
            "example": "65fac446d599990d1313c1dd",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SocialPlannerGetPostSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get post",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-post"
      },
      "put": {
        "description": "Create posts for all supported platforms. It is possible to create customized posts per channel by using the same platform account IDs in a request and hitting the create post API multiple times with different summaries and account IDs per platform.\n\nThe content and media limitations, as well as platform rate limiters corresponding to the respective platforms, are provided in the following reference link:\n\n  Link: [Platform Limitations](https://help.leadconnectorhq.com/support/solutions/articles/48001240003-social-planner-image-video-content-and-api-limitations \"Social Planner Help\")",
        "operationId": "edit-post",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Post Id",
            "example": "65fac446d599990d1313c1dd",
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePostDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdatePostSuccessfulResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Edit post",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "edit-post"
      }
    },
    "/social-media-posting/{locationId}/set-accounts": {
      "post": {
        "description": "Set social media accounts for a CSV import to publish posts to",
        "operationId": "set-accounts",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetAccountsDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SetAccountsResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SetAccountsUnprocessableDTO"
                }
              }
            },
            "description": "Validation error"
          }
        },
        "security": [
          {
            "bearer": [
              "socialplanner/csv.write"
            ]
          }
        ],
        "summary": "Set Accounts",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "set-accounts"
      }
    },
    "/social-media-posting/{locationId}/tags": {
      "get": {
        "description": "Retrieve all tags for a specific location with optional search and pagination",
        "operationId": "get-tags-location-id",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Search text string",
            "example": "test",
            "in": "query",
            "name": "searchText",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Limit",
            "example": 10,
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Skip",
            "example": 0,
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTagsByLocationIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get tags by location id",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-tags-location-id"
      }
    },
    "/social-media-posting/{locationId}/tags/details": {
      "post": {
        "description": "Retrieve specific tags by their IDs",
        "operationId": "get-tags-by-ids",
        "parameters": [
          {
            "description": "Location Id",
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "path",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTagDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTagsByIdResponseDTO"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": []
          }
        ],
        "summary": "Get tags by ids",
        "tags": [
          "social-planner"
        ],
        "x-ghl-operation-id": "get-tags-by-ids"
      }
    },
    "/store/shipping-carrier": {
      "get": {
        "description": "The \"List Shipping Carrier\" API allows to retrieve a list of shipping carrier.",
        "operationId": "list-shipping-carriers",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListShippingCarrierResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "List Shipping Carriers",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "list-shipping-carriers"
      },
      "post": {
        "description": "The \"Create Shipping Carrier\" API allows adding a new shipping carrier.",
        "operationId": "create-shipping-carrier",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateShippingCarrierDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateShippingCarrierResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create Shipping Carrier",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "create-shipping-carrier"
      }
    },
    "/store/shipping-carrier/{shippingCarrierId}": {
      "delete": {
        "description": "Delete specific shipping carrier with Id :shippingCarrierId",
        "operationId": "delete-shipping-carrier",
        "parameters": [
          {
            "description": "ID of the shipping carrier that needs to be returned",
            "in": "path",
            "name": "shippingCarrierId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteShippingCarrierResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Delete shipping carrier",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "delete-shipping-carrier"
      },
      "get": {
        "description": "The \"List Shipping Carrier\" API allows to retrieve a paginated list of shipping carrier.",
        "operationId": "get-shipping-carriers",
        "parameters": [
          {
            "description": "ID of the shipping carrier that needs to be returned",
            "in": "path",
            "name": "shippingCarrierId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetShippingCarrierResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get Shipping Carrier",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "get-shipping-carriers"
      },
      "put": {
        "description": "The \"update Shipping Carrier\" API allows update a shipping carrier to the system. ",
        "operationId": "update-shipping-carrier",
        "parameters": [
          {
            "description": "ID of the shipping carrier that needs to be returned",
            "in": "path",
            "name": "shippingCarrierId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateShippingCarrierDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateShippingCarrierResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update Shipping Carrier",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "update-shipping-carrier"
      }
    },
    "/store/shipping-zone": {
      "get": {
        "description": "The \"List Shipping Zone\" API allows to retrieve a list of shipping zone.",
        "operationId": "list-shipping-zones",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 0,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          },
          {
            "description": "Include shipping rates array",
            "in": "query",
            "name": "withShippingRate",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListShippingZoneResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "List Shipping Zones",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "list-shipping-zones"
      },
      "post": {
        "description": "The \"Create Shipping Zone\" API allows adding a new shipping zone.",
        "operationId": "create-shipping-zone",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateShippingZoneDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateShippingZoneResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create Shipping Zone",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "create-shipping-zone"
      }
    },
    "/store/shipping-zone/shipping-rates": {
      "post": {
        "description": "This return available shipping rates for country based on order amount",
        "operationId": "get-available-shipping-zones",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GetAvailableShippingRates"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAvailableShippingRatesResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get available shipping rates",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "get-available-shipping-zones"
      }
    },
    "/store/shipping-zone/{shippingZoneId}": {
      "delete": {
        "description": "Delete specific shipping zone with Id :shippingZoneId",
        "operationId": "delete-shipping-zone",
        "parameters": [
          {
            "description": "ID of the item that needs to be returned",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteShippingZoneResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Delete shipping zone",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "delete-shipping-zone"
      },
      "get": {
        "description": "The \"List Shipping Zone\" API allows to retrieve a paginated list of shipping zone.",
        "operationId": "get-shipping-zones",
        "parameters": [
          {
            "description": "ID of the item that needs to be returned",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "Include shipping rates array",
            "in": "query",
            "name": "withShippingRate",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetShippingZoneResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get Shipping Zone",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "get-shipping-zones"
      },
      "put": {
        "description": "The \"update Shipping Zone\" API allows update a shipping zone to the system. ",
        "operationId": "update-shipping-zone",
        "parameters": [
          {
            "description": "ID of the item that needs to be returned",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateShippingZoneDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateShippingZoneResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update Shipping Zone",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "update-shipping-zone"
      }
    },
    "/store/shipping-zone/{shippingZoneId}/shipping-rate": {
      "get": {
        "description": "The \"List Shipping Rate\" API allows to retrieve a list of shipping rate.",
        "operationId": "list-shipping-rates",
        "parameters": [
          {
            "description": "ID of the item that needs to be returned",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          },
          {
            "description": "The maximum number of items to be included in a single page of results",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 0,
              "example": 20,
              "type": "number"
            }
          },
          {
            "description": "The starting index of the page, indicating the position from which the results should be retrieved.",
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "example": 0,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListShippingRateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "List Shipping Rates",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "list-shipping-rates"
      },
      "post": {
        "description": "The \"Create Shipping Rate\" API allows adding a new shipping rate.",
        "operationId": "create-shipping-rate",
        "parameters": [
          {
            "description": "ID of the item that needs to be returned",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateShippingRateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateShippingRateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create Shipping Rate",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "create-shipping-rate"
      }
    },
    "/store/shipping-zone/{shippingZoneId}/shipping-rate/{shippingRateId}": {
      "delete": {
        "description": "Delete specific shipping rate with Id :shippingRateId",
        "operationId": "delete-shipping-rate",
        "parameters": [
          {
            "description": "ID of the shipping zone",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "ID of the shipping rate that needs to be returned",
            "in": "path",
            "name": "shippingRateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteShippingRateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Delete shipping rate",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "delete-shipping-rate"
      },
      "get": {
        "description": "The \"List Shipping Rate\" API allows to retrieve a paginated list of shipping rate.",
        "operationId": "get-shipping-rates",
        "parameters": [
          {
            "description": "ID of the shipping zone",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "ID of the shipping rate that needs to be returned",
            "in": "path",
            "name": "shippingRateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetShippingRateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get Shipping Rate",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "get-shipping-rates"
      },
      "put": {
        "description": "The \"update Shipping Rate\" API allows update a shipping rate to the system. ",
        "operationId": "update-shipping-rate",
        "parameters": [
          {
            "description": "ID of the shipping zone",
            "in": "path",
            "name": "shippingZoneId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "description": "ID of the shipping rate that needs to be returned",
            "in": "path",
            "name": "shippingRateId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateShippingRateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateShippingRateResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Update Shipping Rate",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "update-shipping-rate"
      }
    },
    "/store/store-setting": {
      "get": {
        "description": "Get store settings by altId and altType.",
        "operationId": "get-store-settings",
        "parameters": [
          {
            "description": "Location Id or Agency Id",
            "in": "query",
            "name": "altId",
            "required": true,
            "schema": {
              "example": "6578278e879ad2646715ba9c",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "altType",
            "required": true,
            "schema": {
              "enum": [
                "location"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetStoreSettingResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Get Store Settings",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "get-store-settings"
      },
      "post": {
        "description": "Create or update store settings by altId and altType.",
        "operationId": "create-store-setting",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateStoreSettingDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateStoreSettingResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Location-Access": []
          }
        ],
        "summary": "Create/Update Store Settings",
        "tags": [
          "store"
        ],
        "x-ghl-operation-id": "create-store-setting"
      }
    },
    "/surveys/": {
      "get": {
        "description": "Get Surveys",
        "operationId": "get-surveys",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "example": 0,
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "type": "number"
            }
          },
          {
            "description": "Limit Per Page records count. will allow maximum up to 50 and default will be 10",
            "example": 20,
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "type": "number"
            }
          },
          {
            "example": "folder",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSurveysSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "surveys.readonly"
            ]
          }
        ],
        "summary": "Get Surveys",
        "tags": [
          "surveys"
        ],
        "x-ghl-operation-id": "get-surveys"
      }
    },
    "/surveys/submissions": {
      "get": {
        "description": "Get Surveys Submissions",
        "operationId": "get-surveys-submissions",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Page No. By default it will be 1",
            "example": 1,
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "description": "Limit Per Page records count. will allow maximum up to 100 and default will be 20",
            "example": 20,
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 20,
              "type": "number"
            }
          },
          {
            "description": "Filter submission by survey id",
            "example": "jjusM6EOngDExnbo2DbU",
            "in": "query",
            "name": "surveyId",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filter by contactId, name, email or phone no.",
            "example": "john@example.com",
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Get submission by starting of this date. By default it will be same date of last month(YYYY-MM-DD).",
            "example": "2020-11-14",
            "in": "query",
            "name": "startAt",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Get submission by ending of this date. By default it will be current date(YYYY-MM-DD).",
            "example": "2020-12-14",
            "in": "query",
            "name": "endAt",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetSurveysSubmissionSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "surveys.readonly"
            ]
          }
        ],
        "summary": "Get Surveys Submissions",
        "tags": [
          "surveys"
        ],
        "x-ghl-operation-id": "get-surveys-submissions"
      }
    },
    "/users/search": {
      "get": {
        "description": "Search Users",
        "operationId": "search-users",
        "parameters": [
          {
            "description": "Company ID in which the search needs to be performed",
            "in": "query",
            "name": "companyId",
            "required": true,
            "schema": {
              "example": "5DP41231LkQsiKESj6rh",
              "type": "string"
            }
          },
          {
            "description": "The search term for the user is matched based on the user full name, email or phone",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "example": "John",
              "type": "string"
            }
          },
          {
            "description": "No of results to be skipped before returning the result",
            "in": "query",
            "name": "skip",
            "required": false,
            "schema": {
              "default": "0",
              "example": "1",
              "type": "string"
            }
          },
          {
            "description": "No of results to be limited before returning the result",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": "25",
              "example": "10",
              "type": "string"
            }
          },
          {
            "description": "Location ID in which the search needs to be performed",
            "in": "query",
            "name": "locationId",
            "required": false,
            "schema": {
              "example": "5DP41231LkQsiKESj6rh",
              "type": "string"
            }
          },
          {
            "description": "Type of the users to be filtered in the search",
            "in": "query",
            "name": "type",
            "required": false,
            "schema": {
              "example": "agency",
              "type": "string"
            }
          },
          {
            "description": "Role of the users to be filtered in the search",
            "in": "query",
            "name": "role",
            "required": false,
            "schema": {
              "example": "admin",
              "type": "string"
            }
          },
          {
            "description": "List of User IDs to be filtered in the search",
            "in": "query",
            "name": "ids",
            "required": false,
            "schema": {
              "example": "5DP4iH6HLkQsiKESj6rh,5DP4iH6HLkQsiKESj34h",
              "type": "string"
            }
          },
          {
            "description": "The field on which sort is applied in which the results need to be sorted. Default is based on the first and last name",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "example": "dateAdded",
              "type": "string"
            }
          },
          {
            "description": "The direction in which the results need to be sorted",
            "in": "query",
            "name": "sortDirection",
            "required": false,
            "schema": {
              "example": "asc",
              "type": "string"
            }
          },
          {
            "description": "Filter users by whether 2-way sync is enabled",
            "in": "query",
            "name": "enabled2waySync",
            "required": false,
            "schema": {
              "example": true,
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchUserSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "users.readonly"
            ]
          },
          {
            "Location-Access": [
              "users.readonly"
            ]
          }
        ],
        "summary": "Search Users",
        "tags": [
          "users"
        ],
        "x-ghl-operation-id": "search-users"
      }
    },
    "/users/search/filter-by-email": {
      "post": {
        "description": "Filter users by company ID, deleted status, and email array",
        "operationId": "filter-users-by-email",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FilterByEmailDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchUserSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "users.readonly"
            ]
          }
        ],
        "summary": "Filter Users by Email",
        "tags": [
          "users"
        ],
        "x-ghl-operation-id": "filter-users-by-email"
      }
    },
    "/users/{userId}": {
      "delete": {
        "description": "Delete User",
        "operationId": "delete-user",
        "parameters": [
          {
            "in": "path",
            "name": "userId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteUserSuccessfulResponseV3Dto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "users.write"
            ]
          },
          {
            "Location-Access": [
              "users.write"
            ]
          }
        ],
        "summary": "Delete User",
        "tags": [
          "users"
        ],
        "x-ghl-operation-id": "delete-user",
        "x-version-added": "v3"
      },
      "get": {
        "description": "Get User",
        "operationId": "get-user",
        "parameters": [
          {
            "description": "User Id",
            "in": "path",
            "name": "userId",
            "required": true,
            "schema": {
              "example": "ve9EPM428h8vShlRW1KT",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "users.readonly"
            ]
          },
          {
            "Location-Access": [
              "users.readonly"
            ]
          }
        ],
        "summary": "Get User",
        "tags": [
          "users"
        ],
        "x-ghl-operation-id": "get-user"
      },
      "put": {
        "description": "Update User",
        "operationId": "update-user",
        "parameters": [
          {
            "in": "path",
            "name": "userId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUserDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "Agency-Access": [
              "users.write"
            ]
          },
          {
            "Location-Access": [
              "users.write"
            ]
          }
        ],
        "summary": "Update User",
        "tags": [
          "users"
        ],
        "x-ghl-operation-id": "update-user"
      }
    },
    "/voice-ai/actions/{actionId}": {
      "delete": {
        "description": "Delete an existing action from a voice AI agent. This permanently removes the action and its configuration.",
        "operationId": "voice-ai.delete-action",
        "parameters": [
          {
            "description": "Unique identifier for the action",
            "in": "path",
            "name": "actionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "LOC123456789ABCDEF",
              "type": "string"
            }
          },
          {
            "description": "Agent ID the action is attached to",
            "in": "query",
            "name": "agentId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Action deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "voice-ai-agent-goals.write"
            ]
          }
        ],
        "summary": "Delete Agent Action",
        "tags": [
          "voice-ai"
        ],
        "x-ghl-operation-id": "delete-action"
      }
    },
    "/voice-ai/agents": {
      "get": {
        "description": "Retrieve a paginated list of agents for given location.",
        "operationId": "get-agents",
        "parameters": [
          {
            "description": "Page number starting from 1",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "example": 1,
              "maximum": 5000,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "default": 10,
              "example": 10,
              "maximum": 50,
              "minimum": 1,
              "type": "number"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Query",
            "in": "query",
            "name": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAgentsResponseDTO"
                }
              }
            },
            "description": "Agent list retrieved successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "voice-ai-agents.readonly"
            ]
          }
        ],
        "summary": "List Agents",
        "tags": [
          "voice-ai"
        ],
        "x-ghl-operation-id": "get-agents"
      },
      "post": {
        "description": "Create a new voice AI agent configuration and settings",
        "operationId": "voice-ai.create-agent",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AgentCreationRequestDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAgentResponseDTO"
                }
              }
            },
            "description": "Agent created successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "voice-ai-agents.write"
            ]
          }
        ],
        "summary": "Create Agent",
        "tags": [
          "voice-ai"
        ],
        "x-ghl-operation-id": "create-agent"
      }
    },
    "/voice-ai/agents/{agentId}": {
      "delete": {
        "description": "Delete a voice AI agent and all its configurations",
        "operationId": "voice-ai.delete-agent",
        "parameters": [
          {
            "description": "Unique agent identifier",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "LOC123456789ABCDEF",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Agent deleted successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "voice-ai-agents.write"
            ]
          }
        ],
        "summary": "Delete Agent",
        "tags": [
          "voice-ai"
        ],
        "x-ghl-operation-id": "delete-agent"
      },
      "patch": {
        "description": "Partially update an existing voice AI agent",
        "operationId": "patch-agent",
        "parameters": [
          {
            "description": "Unique agent identifier",
            "in": "path",
            "name": "agentId",
            "required": true,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Location ID",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "example": "LOC123456789ABCDEF",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PatchAgentDTO"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchAgentResponseDTO"
                }
              }
            },
            "description": "Agent updated successfully"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "voice-ai-agents.write"
            ]
          }
        ],
        "summary": "Patch Agent",
        "tags": [
          "voice-ai"
        ],
        "x-ghl-operation-id": "patch-agent"
      }
    },
    "/voice-ai/dashboard/call-logs": {
      "get": {
        "description": "Returns call logs for Voice AI agents scoped to a location. Supports filtering by agent, contact, call type, action types, and date range (interpreted in the provided IANA timezone). Also supports sorting and 1-based pagination.",
        "operationId": "get-call-logs",
        "parameters": [
          {
            "description": "Location identifier. Filters results to this location.",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Agent identifier. When provided, returns logs for this agent only.",
            "in": "query",
            "name": "agentId",
            "required": false,
            "schema": {
              "example": "507f1f77bcf86cd799439011",
              "type": "string"
            }
          },
          {
            "description": "Contact IDs (comma-separated) to filter by.",
            "in": "query",
            "name": "contactId",
            "required": false,
            "schema": {
              "example": "contact123,contact456",
              "type": "string"
            }
          },
          {
            "description": "Call type filter.",
            "in": "query",
            "name": "callType",
            "required": false,
            "schema": {
              "enum": [
                "LIVE",
                "TRIAL"
              ],
              "type": "string"
            }
          },
          {
            "description": "Start date filter (Unix timestamp). Must be less than endDate. Both startDate and endDate must be provided together.",
            "in": "query",
            "name": "startDate",
            "required": false,
            "schema": {
              "example": 1679308800000,
              "type": "number"
            }
          },
          {
            "description": "End date filter (Unix timestamp). Must be greater than startDate. Both startDate and endDate must be provided together.",
            "in": "query",
            "name": "endDate",
            "required": false,
            "schema": {
              "example": 1679395199000,
              "type": "number"
            }
          },
          {
            "description": "Action type filter for call logs (comma-separated ACTION_TYPE values)",
            "in": "query",
            "name": "actionType",
            "required": false,
            "schema": {
              "enum": [
                "CALL_TRANSFER",
                "DATA_EXTRACTION",
                "IN_CALL_DATA_EXTRACTION",
                "WORKFLOW_TRIGGER",
                "SMS",
                "APPOINTMENT_BOOKING",
                "CUSTOM_ACTION",
                "KNOWLEDGE_BASE"
              ],
              "example": "SMS,CALL_TRANSFER,WORKFLOW_TRIGGER",
              "type": "string"
            }
          },
          {
            "description": "Field to sort by. Defaults to newest if omitted.",
            "in": "query",
            "name": "sortBy",
            "required": false,
            "schema": {
              "enum": [
                "duration",
                "createdAt"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort direction. Applies only when sortBy is provided.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "enum": [
                "ascend",
                "descend"
              ],
              "type": "string"
            }
          },
          {
            "description": "Page number (1-based).",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "type": "number"
            }
          },
          {
            "description": "Page size (max 50).",
            "in": "query",
            "name": "pageSize",
            "required": false,
            "schema": {
              "default": 10,
              "type": "number"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CallLogsResponseDTO"
                }
              }
            },
            "description": "Successfully retrieved call logs"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          }
        },
        "security": [
          {
            "bearer": [
              "voice-ai-dashboard.readonly"
            ]
          }
        ],
        "summary": "List Call Logs",
        "tags": [
          "voice-ai"
        ],
        "x-ghl-operation-id": "get-call-logs"
      }
    },
    "/workflows/": {
      "get": {
        "description": "Get Workflow",
        "operationId": "get-workflow",
        "parameters": [
          {
            "example": "ve9EPM428h8vShlRW1KT",
            "in": "query",
            "name": "locationId",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetWorkflowSuccessfulResponseDto"
                }
              }
            },
            "description": "Successful response"
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonBadRequestDTO"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnauthorizedDTO"
                }
              }
            },
            "description": "Unauthorized"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommonUnprocessableDTO"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "security": [
          {
            "bearer": [
              "workflows.readonly"
            ]
          }
        ],
        "summary": "Get Workflow",
        "tags": [
          "workflows"
        ],
        "x-ghl-operation-id": "get-workflow"
      }
    }
  }
}
