{
  "openapi": "3.0.4",
  "info": {
    "title": "Leadping API",
    "description": "Leadping API for lead intake, messaging, calling, automations, billing, business settings, and compliant lead communication workflows.",
    "license": {
      "name": "MIT",
      "url": "https://opensource.org/licenses/MIT"
    },
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://api.leadping.ai",
      "description": "Production"
    }
  ],
  "paths": {
    "/analytics/my": {
      "get": {
        "tags": [
          "Analytics"
        ],
        "summary": "Get business lead communication analytics",
        "description": "Returns current-business analytics for lead communication, including event volume, response metrics, and date-range filtering.",
        "operationId": "Analytics_GetCurrentBusiness",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "days",
            "in": "query",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/CustomerAnalyticsResponse"
                    }
                  ],
                  "description": "Response model containing customer analytics data returned by the Leadping API."
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/automations": {
      "post": {
        "tags": [
          "Automations"
        ],
        "summary": "Create a business lead follow-up automation",
        "description": "Creates an automation for current-business leads, configuring triggers, message steps, and follow-up behavior.",
        "operationId": "Automations_Create",
        "requestBody": {
          "description": "The automation request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AutomationRequest"
                  }
                ],
                "description": "Request schema for the Leadping API automation configuration request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AutomationRequest"
                  }
                ],
                "description": "Request schema for the Leadping API automation configuration request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The automation response was created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/AutomationResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API automation configuration response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/automations/{id}": {
      "put": {
        "tags": [
          "Automations"
        ],
        "summary": "Update a business lead follow-up automation",
        "description": "Updates an automation for current-business leads, changing triggers, message steps, routing, or active follow-up settings.",
        "operationId": "Automations_Update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the automation.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The automation request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AutomationRequest"
                  }
                ],
                "description": "Request schema for the Leadping API automation configuration request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AutomationRequest"
                  }
                ],
                "description": "Request schema for the Leadping API automation configuration request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the automation response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/AutomationResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API automation configuration response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Automations"
        ],
        "summary": "Get a business lead follow-up automation",
        "description": "Returns one automation for the current business, including trigger criteria, message steps, routing settings, and enabled state.",
        "operationId": "Automations_Get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the automation.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the automation response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/AutomationResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API automation configuration response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Automations"
        ],
        "summary": "Delete a business lead follow-up automation",
        "description": "Deletes an automation for the current business so it no longer schedules follow-up or routing work for captured leads.",
        "operationId": "Automations_Delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the automation.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the bool.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/automations/all/my": {
      "post": {
        "tags": [
          "Automations"
        ],
        "summary": "List business lead follow-up automations",
        "description": "Lists current-user automations with paging, sorting, and filters for reviewing follow-up workflows and ownership.",
        "operationId": "Automations_GetAllForCurrentUser",
        "requestBody": {
          "description": "The filtering, sorting, and pagination options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged automation table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfAutomationTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/automations/preview": {
      "post": {
        "tags": [
          "Automations"
        ],
        "summary": "Preview a lead follow-up automation",
        "description": "Previews automation execution for a sample lead, showing matched steps and messages without creating follow-up events.",
        "operationId": "Automations_Preview",
        "requestBody": {
          "description": "The automation preview request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AutomationPreviewRequest"
                  }
                ],
                "description": "Request schema for the Leadping API automation preview request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AutomationPreviewRequest"
                  }
                ],
                "description": "Request schema for the Leadping API automation preview request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the automation preview response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/AutomationPreviewResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API automation preview response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/contact": {
      "post": {
        "tags": [
          "Contact"
        ],
        "summary": "Submit a public contact request to support",
        "description": "Submits a public contact request to Leadping support, capturing sender details and message content without requiring authentication.",
        "operationId": "Contact_Submit",
        "requestBody": {
          "description": "The contact form data to submit.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactRequest"
                  }
                ],
                "description": "Request schema for the Leadping API contact form request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ContactRequest"
                  }
                ],
                "description": "Request schema for the Leadping API contact form request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Contact form was successfully submitted.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ContactResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API contact form response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/conversations/my": {
      "post": {
        "tags": [
          "Conversations"
        ],
        "summary": "List current user's inbox conversations",
        "description": "Lists the current user's lead conversations with paging and sorting for inbox views, recent follow-up, and communication history.",
        "operationId": "Conversations_GetAllForCurrentUser",
        "parameters": [
          {
            "name": "archiveFilter",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Cancellation token.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged conversation response.",
            "content": {
              "text/plain": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfConversationResponse"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              },
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfConversationResponse"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              },
              "text/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfConversationResponse"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/conversations/lead/{leadId}": {
      "post": {
        "tags": [
          "Conversations"
        ],
        "summary": "List inbox conversations for a lead",
        "description": "Lists conversations for one lead, helping users inspect communication threads, recent follow-up, and related events.",
        "operationId": "Conversations_GetConversationsByLead",
        "parameters": [
          {
            "name": "leadId",
            "in": "path",
            "description": "The lead ID to get conversations for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Cancellation token.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "text/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged conversation response.",
            "content": {
              "text/plain": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfConversationResponse"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              },
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfConversationResponse"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              },
              "text/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfConversationResponse"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/dispositions": {
      "post": {
        "tags": [
          "Dispositions"
        ],
        "summary": "Set the current lead disposition",
        "description": "Sets a lead's current structured outcome while recording the disposition change in history for audit, automation, and reporting.",
        "operationId": "Dispositions_Create",
        "requestBody": {
          "description": "The disposition data to create.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DispositionRequest"
                  }
                ],
                "description": "Request model for creating or updating a disposition."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DispositionRequest"
                  }
                ],
                "description": "Request model for creating or updating a disposition."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Disposition was successfully updated and recorded.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/DispositionResponse"
                    }
                  ],
                  "description": "Response model for disposition data."
                }
              }
            }
          },
          "404": {
            "description": "A related resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/dispositions/{id}": {
      "put": {
        "tags": [
          "Dispositions"
        ],
        "summary": "Update a lead disposition history entry",
        "description": "Updates a disposition history entry and, when it is the current entry, updates the lead's current disposition.",
        "operationId": "Dispositions_Update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the disposition.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The disposition request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DispositionRequest"
                  }
                ],
                "description": "Request model for creating or updating a disposition."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DispositionRequest"
                  }
                ],
                "description": "Request model for creating or updating a disposition."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the disposition response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/DispositionResponse"
                    }
                  ],
                  "description": "Response model for disposition data."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Dispositions"
        ],
        "summary": "Get a lead disposition outcome record",
        "description": "Returns one disposition record so users can review a lead outcome, related notes, and follow-up context.",
        "operationId": "Dispositions_Get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the disposition to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Disposition was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/DispositionResponse"
                    }
                  ],
                  "description": "Response model for disposition data."
                }
              }
            }
          },
          "404": {
            "description": "The specified disposition was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Dispositions"
        ],
        "summary": "Delete a lead disposition outcome record",
        "description": "Deletes a disposition from a lead when the outcome record should no longer appear in event or reporting views.",
        "operationId": "Dispositions_Delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the disposition to delete.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Disposition was successfully deleted.",
            "content": {
              "application/json": { }
            }
          },
          "404": {
            "description": "The specified disposition was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/dispositions/lead/{leadId}": {
      "get": {
        "tags": [
          "Dispositions"
        ],
        "summary": "List lead disposition outcome history",
        "description": "Lists disposition outcome history for one lead, including prior outcomes, notes, follow-up context, timestamps, and actor details used for audit review.",
        "operationId": "Dispositions_GetByLeadId",
        "parameters": [
          {
            "name": "leadId",
            "in": "path",
            "description": "The ID of the lead to get dispositions for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Dispositions were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/DispositionResponse"
                      }
                    ],
                    "description": "Response model for disposition data."
                  }
                }
              }
            }
          },
          "404": {
            "description": "The specified lead was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/dispositions/lead/{leadId}/export": {
      "get": {
        "tags": [
          "Dispositions"
        ],
        "summary": "Export lead disposition outcome history",
        "description": "Exports disposition data for one lead, packaging outcome history for reporting, audit review, or handoff workflows.",
        "operationId": "Dispositions_ExportByLeadId",
        "parameters": [
          {
            "name": "leadId",
            "in": "path",
            "description": "The lead identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the disposition export response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/DispositionExportResponse"
                    }
                  ],
                  "description": "API response containing disposition export data returned to callers."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/feedback": {
      "post": {
        "tags": [
          "Feedback"
        ],
        "summary": "Create product feedback for a business",
        "description": "Creates product feedback for the current business, capturing category, message, and context for operator review.",
        "operationId": "Feedback_Create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FeedbackCreateRequest"
                  }
                ],
                "description": "Request schema for the Leadping API feedback creation request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/FeedbackCreateRequest"
                  }
                ],
                "description": "Request schema for the Leadping API feedback creation request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/FeedbackResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API feedback item response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/leads": {
      "post": {
        "tags": [
          "Leads"
        ],
        "summary": "Create a lead record from an external source",
        "description": "Creates a source-authenticated lead captured outside Leadping, starting follow-up, routing, and automation from structured lead data.",
        "operationId": "Leads_CreateExternal",
        "parameters": [
          {
            "name": "sourceKey",
            "in": "query",
            "description": "The Leadping source key supplied as a query string parameter, or omitted when supplied as Authorization: Bearer lp_src_...",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The lead data submitted by the external system.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Lead was successfully created.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "A related resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Source credentials are missing or invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "The source is not allowed to accept traffic.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          { },
          { }
        ]
      }
    },
    "/leads/intake": {
      "post": {
        "tags": [
          "Leads"
        ],
        "summary": "Create a lead record from intake payload",
        "description": "Creates a source-authenticated lead from a flat intake payload, capturing contact fields, metadata, and automation-ready lead details.",
        "operationId": "Leads_CreateIntake",
        "parameters": [
          {
            "name": "sourceKey",
            "in": "query",
            "description": "The Leadping source key supplied as a query string parameter, or omitted when supplied as Authorization: Bearer lp_src_...",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The common lead fields submitted by the external system.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadIntakeRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead intake request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadIntakeRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead intake request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The lead response was created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Source credentials are missing or invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "The source is not allowed to accept traffic.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          { },
          { }
        ]
      },
      "get": {
        "tags": [
          "Leads"
        ],
        "summary": "Create a lead record from query intake",
        "description": "Creates a source-authenticated lead from query parameters, supporting simple form posts, tracking metadata, and follow-up automation.",
        "operationId": "Leads_CreateIntakeFromQuery",
        "parameters": [
          {
            "name": "FirstName",
            "in": "query",
            "description": "First name of the lead, user, or contact represented by this lead intake request.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastName",
            "in": "query",
            "description": "Last name of the lead, user, or contact represented by this lead intake request.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Email",
            "in": "query",
            "description": "Email address for the person represented by this lead intake request.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Phone",
            "in": "query",
            "description": "Phone details for the lead, user, or business represented by this lead intake request.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "PhoneType",
            "in": "query",
            "description": "Source-provided phone type, such as mobile, landline, or VoIP, used during lead intake normalization.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DateOfBirth",
            "in": "query",
            "description": "Lead date of birth supplied by intake sources and normalized into the lead profile.",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "BirthDate",
            "in": "query",
            "description": "Lead birth date used for demographic matching and insurance intake workflows.",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "Address1",
            "in": "query",
            "description": "First street address line submitted by the lead intake source.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Address2",
            "in": "query",
            "description": "Second street address line submitted by the lead intake source.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "City",
            "in": "query",
            "description": "City for the lead or business postal address.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "State",
            "in": "query",
            "description": "State, province, or region for the lead or business postal address.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Zip",
            "in": "query",
            "description": "ZIP code submitted by the lead intake source.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "PostalCode",
            "in": "query",
            "description": "Postal code for the lead or business address.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Gender",
            "in": "query",
            "description": "Lead gender supplied by intake sources and normalized when possible.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SubId",
            "in": "query",
            "description": "Affiliate or publisher sub ID captured for lead attribution.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SellerLeadId",
            "in": "query",
            "description": "Seller-provided lead identifier used to deduplicate and reconcile lead delivery.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SellerLeadIdentifier",
            "in": "query",
            "description": "Alternate seller-provided lead identifier used during intake normalization.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DirectPostPrice",
            "in": "query",
            "description": "Direct-post price supplied by the lead source during intake.",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
              "format": "double"
            }
          },
          {
            "name": "Price",
            "in": "query",
            "description": "Lead price or transaction price supplied to the Leadping API.",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
              "format": "double"
            }
          },
          {
            "name": "UtmSource",
            "in": "query",
            "description": "UTM source parameter captured for lead attribution reporting.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "UtmMedium",
            "in": "query",
            "description": "UTM medium parameter captured for lead attribution reporting.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "UtmCampaign",
            "in": "query",
            "description": "UTM campaign parameter captured for lead attribution reporting.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "UtmTerm",
            "in": "query",
            "description": "UTM term parameter captured for lead attribution reporting.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "UtmContent",
            "in": "query",
            "description": "UTM content parameter captured for lead attribution reporting.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Product",
            "in": "query",
            "description": "Product or offer associated with the lead or source.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Vertical",
            "in": "query",
            "description": "Industry vertical used for lead routing, compliance review, and reporting.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Referrer",
            "in": "query",
            "description": "Referring page or traffic source that sent the lead into Leadping.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LandingPage",
            "in": "query",
            "description": "Landing page URL where the lead submitted their information.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "TrustedFormUrl",
            "in": "query",
            "description": "TrustedForm certificate URL used as proof of consumer consent.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "External system identifier used to reconcile this lead intake request across integrations.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SourceMetadata",
            "in": "query",
            "description": "Source-provided key-value metadata retained for lead attribution and integration troubleshooting.",
            "schema": {
              "type": "object",
              "additionalProperties": {
                "type": "string"
              }
            }
          },
          {
            "name": "TagIds",
            "in": "query",
            "description": "Tag IDs assigned to or filtered against this lead.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "TagNames",
            "in": "query",
            "description": "Tag names assigned to this lead when matching existing tags by name.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "sourceKey",
            "in": "query",
            "description": "The Leadping source key supplied as a query string parameter, or omitted when supplied as Authorization: Bearer lp_src_...",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "The lead response was created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Source credentials are missing or invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "The source is not allowed to accept traffic.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          { },
          { }
        ]
      }
    },
    "/leads/{id}": {
      "get": {
        "tags": [
          "Leads"
        ],
        "summary": "Get a business lead record for current user",
        "description": "Returns one lead visible to the current user, including communication details, status, source, and follow-up context.",
        "operationId": "Leads_GetForCurrentUser",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the lead to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Lead was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The specified lead was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "The user does not own this lead.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Leads"
        ],
        "summary": "Update a business lead record and status",
        "description": "Updates lead details for the current business, keeping contact data, status, source, and follow-up context current.",
        "operationId": "Leads_Update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the lead to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The updated lead data.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Lead was successfully updated.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The specified lead was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Leads"
        ],
        "summary": "Delete a business lead record by ID",
        "description": "Deletes a lead from the current business when it should no longer appear in communication, routing, or event workflows.",
        "operationId": "Leads_Delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the lead to delete.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Lead was successfully deleted."
          },
          "404": {
            "description": "The specified lead was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/leads/{id}/workflow-status": {
      "get": {
        "tags": [
          "Leads"
        ],
        "summary": "Get a lead automation workflow status",
        "description": "Returns automation workflow status for one lead, including active runs, paused state, and follow-up progress for the current business.",
        "operationId": "Leads_GetWorkflowStatusForCurrentUser",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/AutomationWorkflowStatusResponse"
                    }
                  ],
                  "description": "Automation workflow status collection for a lead."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/leads/{id}/archive": {
      "post": {
        "tags": [
          "Leads"
        ],
        "summary": "Archive a business lead record by ID",
        "description": "Archives a lead without deleting history, removing it from active pipeline views while preserving communication and event records.",
        "operationId": "Leads_Archive",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadArchiveRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead archive request, including the fields clients can send.",
                "nullable": true
              }
            },
            "application/*+json": {
              "schema": {
                "type": "object",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadArchiveRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead archive request, including the fields clients can send.",
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/leads/{id}/unarchive": {
      "post": {
        "tags": [
          "Leads"
        ],
        "summary": "Unarchive a business lead record by ID",
        "description": "Restores an archived lead to active pipeline views so follow-up, communication, and routing workflows can resume.",
        "operationId": "Leads_Unarchive",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/leads/all/my": {
      "post": {
        "tags": [
          "Leads"
        ],
        "summary": "List business lead records for current user",
        "description": "Lists leads visible to the current user with paging, sorting, filters, tags, and archive status for pipeline review.",
        "operationId": "Leads_GetAllForCurrentUser",
        "parameters": [
          {
            "name": "tagIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "tagMatchAll",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "untagged",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "archiveFilter",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "A token to cancel the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Leads were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfLeadTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/leads/{id}/tags": {
      "post": {
        "tags": [
          "Leads"
        ],
        "summary": "Add business tags to a lead record by ID",
        "description": "Adds one or more current-business tags to a lead so users can segment, filter, route, and review follow-up work.",
        "operationId": "Leads_AddTags",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadTagsRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead tag update request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadTagsRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead tag update request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Leads"
        ],
        "summary": "Replace business tags on a lead record",
        "description": "Replaces all tags on a lead with the supplied current-business tags, keeping segmentation and routing labels in sync.",
        "operationId": "Leads_ReplaceTags",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadTagsRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead tag update request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/LeadTagsRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead tag update request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/leads/{id}/tags/{tagId}": {
      "delete": {
        "tags": [
          "Leads"
        ],
        "summary": "Remove a business tag from a lead record",
        "description": "Removes one current-business tag from a lead while leaving the lead record, other tags, and communication history intact.",
        "operationId": "Leads_RemoveTag",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tagId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              },
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              },
              "text/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/LeadResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/notifications/me": {
      "post": {
        "tags": [
          "Notifications"
        ],
        "summary": "List notifications for current user",
        "description": "Lists current-user notifications with paging, sorting, and filters for operational alerts, announcements, and follow-up updates.",
        "operationId": "Notifications_GetAllForCurrentUser",
        "requestBody": {
          "description": "Request data options for pagination, filtering, and sorting.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged notification table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfNotificationTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/notifications/unread-count": {
      "get": {
        "tags": [
          "Notifications"
        ],
        "summary": "Get unread notifications for current user",
        "description": "Returns the current user's unread notification count for badge updates and notification center state.",
        "operationId": "Notifications_GetUnreadCount",
        "responses": {
          "200": {
            "description": "Returns the int.",
            "content": {
              "application/json": {
                "schema": {
                  "pattern": "^-?(?:0|[1-9]\\d*)$",
                  "format": "int32"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/notifications/{id}/mark-read": {
      "post": {
        "tags": [
          "Notifications"
        ],
        "summary": "Mark a current-user notification as read",
        "description": "Marks one current-user notification as read so it no longer contributes to unread counts or active notification lists.",
        "operationId": "Notifications_MarkAsRead",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the notification to mark as read.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the bool.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/notifications/mark-all-read": {
      "post": {
        "tags": [
          "Notifications"
        ],
        "summary": "Mark all current-user notifications as read",
        "description": "Marks all notifications for the current user as read and returns the number updated for notification center refreshes.",
        "operationId": "Notifications_MarkAllAsRead",
        "responses": {
          "200": {
            "description": "Returns the int.",
            "content": {
              "application/json": {
                "schema": {
                  "pattern": "^-?(?:0|[1-9]\\d*)$",
                  "format": "int32"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/notifications/announcements": {
      "post": {
        "tags": [
          "Notifications"
        ],
        "summary": "List announcements for current user",
        "description": "Lists announcement notifications for the current user with paging and filters for release notes, notices, and operational updates.",
        "operationId": "Notifications_GetAnnouncements",
        "requestBody": {
          "description": "Request data options for pagination, filtering, and sorting.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged notification table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfNotificationTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/outbound/overview": {
      "get": {
        "tags": [
          "OutboundDelivery"
        ],
        "summary": "Get business outbound delivery overview",
        "description": "Returns current-business outbound capacity, scheduled work, and pacing decisions used to control lead communication delivery.",
        "operationId": "OutboundDelivery_GetCurrentBusinessOverview",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/OutboundCapacityOverview"
                    }
                  ],
                  "description": "Represents outbound capacity overview data used by Leadping."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/sources": {
      "post": {
        "tags": [
          "Sources"
        ],
        "summary": "Create a business lead intake source",
        "description": "Creates a lead source for the current business, storing intake credentials and routing context for captured external leads.",
        "operationId": "Sources_Create",
        "requestBody": {
          "description": "The source data to create.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SourceRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead source request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SourceRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead source request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Source was successfully created.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SourceResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead source response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/sources/{id}": {
      "put": {
        "tags": [
          "Sources"
        ],
        "summary": "Update a business lead intake source",
        "description": "Updates a lead source for the current business, changing intake settings, credentials, routing context, or active status.",
        "operationId": "Sources_Update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the source to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The updated source data.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SourceRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead source request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SourceRequest"
                  }
                ],
                "description": "Request schema for the Leadping API lead source request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Source was successfully updated.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SourceResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead source response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The specified source was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Sources"
        ],
        "summary": "Get a business lead intake source by ID",
        "description": "Returns one lead source for the current business, including intake settings, credentials metadata, and routing context.",
        "operationId": "Sources_Get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the source to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Source was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SourceResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API lead source response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The specified source was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Sources"
        ],
        "summary": "Delete a business lead intake source",
        "description": "Deletes a lead source from the current business so it can no longer accept or route newly captured leads.",
        "operationId": "Sources_Delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the source to delete.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Source was successfully deleted."
          },
          "404": {
            "description": "The specified source was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/sources/all/my": {
      "post": {
        "tags": [
          "Sources"
        ],
        "summary": "List business lead intake sources for user",
        "description": "Lists current-user lead sources with paging, sorting, and filters for intake configuration and routing review.",
        "operationId": "Sources_GetAllForCurrentUser",
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Sources were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfSourceTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/sources/{id}/metrics": {
      "get": {
        "tags": [
          "Sources"
        ],
        "summary": "Get source lead metrics.",
        "description": "Returns lead creation metrics for one business intake source, including accepted, rejected, duplicate, validation, and recent activity counts for monitoring.",
        "operationId": "Sources_GetMetrics",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the source to retrieve metrics for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "Optional start date/time for the metric range.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "description": "Optional end date/time for the metric range.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "days",
            "in": "query",
            "description": "Optional rolling day count when explicit dates are not provided.",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SourceMetricsResponse"
                    }
                  ],
                  "description": "Response model containing source metrics data returned by the Leadping API."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/suppressions": {
      "post": {
        "tags": [
          "Suppressions"
        ],
        "summary": "Create or reactivate suppression.",
        "description": "Creates or reactivates a Leadping suppression entry that blocks future outreach to a recipient across the selected communication channel.",
        "operationId": "Suppressions_Suppress",
        "requestBody": {
          "description": "The suppression entry request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SuppressionEntryRequest"
                  }
                ],
                "description": "Request payload for suppression entry."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SuppressionEntryRequest"
                  }
                ],
                "description": "Request payload for suppression entry."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The suppression entry response was created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuppressionEntryResponse"
                    }
                  ],
                  "description": "API response containing suppression entry data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/suppressions/release": {
      "post": {
        "tags": [
          "Suppressions"
        ],
        "summary": "Releases an active suppression entry for a recipient.",
        "description": "Releases an active Leadping suppression entry so a recipient can be contacted again, returning the updated suppression record when available.",
        "operationId": "Suppressions_Release",
        "requestBody": {
          "description": "The suppression entry request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SuppressionEntryRequest"
                  }
                ],
                "description": "Request payload for suppression entry."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SuppressionEntryRequest"
                  }
                ],
                "description": "Request payload for suppression entry."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the suppression entry response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuppressionEntryResponse"
                    }
                  ],
                  "description": "API response containing suppression entry data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/suppressions/check": {
      "post": {
        "tags": [
          "Suppressions"
        ],
        "summary": "Check recipient suppression status.",
        "description": "Checks whether a recipient is blocked by an active Leadping suppression entry before sending messages or placing calls through the selected channel.",
        "operationId": "Suppressions_Check",
        "requestBody": {
          "description": "The suppression entry request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SuppressionEntryRequest"
                  }
                ],
                "description": "Request payload for suppression entry."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SuppressionEntryRequest"
                  }
                ],
                "description": "Request payload for suppression entry."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the suppression check result.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuppressionCheckResult"
                    }
                  ],
                  "description": "API response containing suppression check result data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/tags": {
      "get": {
        "tags": [
          "Tags"
        ],
        "summary": "List business lead segmentation tags",
        "description": "Lists tags for the current business, optionally including archived tags, for lead segmentation, filters, and routing labels.",
        "operationId": "Tags_GetAllForCurrentBusiness",
        "parameters": [
          {
            "name": "includeArchived",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/TagResponse"
                      }
                    ],
                    "description": "Response schema for the Leadping API tag response returned to authenticated clients."
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Tags"
        ],
        "summary": "Create a business lead segmentation tag",
        "description": "Creates a tag for the current business so leads can be segmented, filtered, routed, and reviewed by label.",
        "operationId": "Tags_Create",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TagRequest"
                  }
                ],
                "description": "Request schema for the Leadping API tag request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TagRequest"
                  }
                ],
                "description": "Request schema for the Leadping API tag request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/TagResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API tag response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/tags/{id}": {
      "put": {
        "tags": [
          "Tags"
        ],
        "summary": "Update a business lead segmentation tag",
        "description": "Updates a current-business tag's name, color, or archived state so lead segmentation and filters stay consistent.",
        "operationId": "Tags_Update",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TagRequest"
                  }
                ],
                "description": "Request schema for the Leadping API tag request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TagRequest"
                  }
                ],
                "description": "Request schema for the Leadping API tag request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/TagResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API tag response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Tags"
        ],
        "summary": "Archive a business lead segmentation tag",
        "description": "Archives a tag for the current business so it stops being used for new segmentation while historical lead labels remain available.",
        "operationId": "Tags_Archive",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "boolean"
                }
              },
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              },
              "text/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/users/me/paymentmethod": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get current user's billing payment method",
        "description": "Returns the current user's default payment method details for billing displays and account payment management.",
        "operationId": "Users_GetPaymentMethodForCurrentUser",
        "responses": {
          "200": {
            "description": "Returns the stripe payment method response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/StripePaymentMethodResponse"
                    }
                  ],
                  "description": "API DTO containing stripe payment method data used by Leadping API contracts."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/users/me": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get current user account profile details",
        "description": "Returns the current user's profile, roles, business context, billing state, and compliance settings for portal sessions.",
        "operationId": "Users_GetForCurrentUser",
        "responses": {
          "200": {
            "description": "Returns the user response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UserResponse"
                    }
                  ],
                  "description": "API response containing user data returned to callers."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "Update current user account profile",
        "description": "Updates the current user's profile fields, contact details, preferences, or business context used across Leadping.",
        "operationId": "Users_UpdateForCurrentUser",
        "requestBody": {
          "description": "The user request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UserRequest"
                  }
                ],
                "description": "Request schema for the Leadping API user profile request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/UserRequest"
                  }
                ],
                "description": "Request schema for the Leadping API user profile request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the user response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UserResponse"
                    }
                  ],
                  "description": "API response containing user data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/users/me/last-login": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Record current user account sign-in",
        "description": "Records a successful sign-in for the current user, updating login metadata used for auditing and account events.",
        "operationId": "Users_RecordLoginForCurrentUser",
        "responses": {
          "200": {
            "description": "Returns the user response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UserResponse"
                    }
                  ],
                  "description": "API response containing user data returned to callers."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/users/change-billing-plan": {
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "Change the current user's billing plan",
        "description": "Changes the current user's billing plan selection, updating account billing state and plan-specific capabilities.",
        "operationId": "Users_ChangeBillingPlan",
        "requestBody": {
          "description": "The change billing plan request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ChangeBillingPlanRequest"
                  }
                ],
                "description": "Request payload for change billing plan."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ChangeBillingPlanRequest"
                  }
                ],
                "description": "Request payload for change billing plan."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the user response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UserResponse"
                    }
                  ],
                  "description": "API response containing user data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/users/compliance": {
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "Update current user compliance settings",
        "description": "Updates current-user compliance settings used for messaging eligibility, billing readiness, and business account setup.",
        "operationId": "Users_UpdateCompliance",
        "requestBody": {
          "description": "The compliance update request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ComplianceUpdateRequest"
                  }
                ],
                "description": "Request payload for compliance update."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/ComplianceUpdateRequest"
                  }
                ],
                "description": "Request payload for compliance update."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the user response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UserResponse"
                    }
                  ],
                  "description": "API response containing user data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-call/initiate": {
      "post": {
        "tags": [
          "Calls"
        ],
        "summary": "Initiates a phone call.",
        "description": "Starts an outbound Leadping phone call for an authenticated user and returns the provider call identifiers, status, and routing details.",
        "operationId": "Calls_InitiateCall",
        "requestBody": {
          "description": "The call initiation request containing phone number and optional metadata.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiateCallRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone call initiation request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/InitiateCallRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone call initiation request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Calls was successfully initiated.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneCallResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone call returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-call/{callId}/hangup": {
      "post": {
        "tags": [
          "Calls"
        ],
        "summary": "Ends a phone call.",
        "description": "Ends an active Leadping phone call by call ID and returns the updated call record, including status and provider routing details.",
        "operationId": "Calls_HangupCall",
        "parameters": [
          {
            "name": "callId",
            "in": "path",
            "description": "The unique identifier of the call to end.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Calls was successfully ended.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneCallResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone call returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The specified call was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-call/{callId}/status": {
      "get": {
        "tags": [
          "Calls"
        ],
        "summary": "Gets call status.",
        "description": "Retrieves the latest status for a Leadping phone call by call ID, including provider state and call details for tracking progress.",
        "operationId": "Calls_GetCallStatus",
        "parameters": [
          {
            "name": "callId",
            "in": "path",
            "description": "The unique identifier of the call to check.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Calls status was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneCallResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone call returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-call/{callId}/transfer": {
      "post": {
        "tags": [
          "Calls"
        ],
        "summary": "Transfers a call.",
        "description": "Transfers an active Leadping phone call to a new phone number and returns the updated call record with status and routing details.",
        "operationId": "Calls_TransferCall",
        "parameters": [
          {
            "name": "callId",
            "in": "path",
            "description": "The unique identifier of the call to transfer.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "newPhoneNumber",
            "in": "query",
            "description": "The phone number to transfer the call to.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Calls was successfully transferred.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneCallResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone call returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The specified call was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/search": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Search purchasable business phone numbers",
        "description": "Searches available phone numbers for purchase, applying country, area, and capability filters for lead communication setup.",
        "operationId": "PhoneNumbers_Search",
        "requestBody": {
          "description": "Used to signal cancellation of the operation if needed.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberSearchRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone number search request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberSearchRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone number search request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "200": {
            "description": "Returns the phone number search response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneNumberSearchResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone number search response returned to authenticated clients."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/all/business": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "List phone numbers for the current business.",
        "description": "Lists phone numbers visible to the current business with paging, sorting, and filters for messaging, calling, and warmup management.",
        "operationId": "PhoneNumbers_GetAllForCurrentBusiness",
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Phone numbers were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfPhoneNumberTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/outgoing/conversation/{conversationId}": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Select conversation sender number",
        "description": "Selects the outgoing phone number for an existing conversation, considering assignments, overrides, and delivery eligibility.",
        "operationId": "PhoneNumbers_GetOutgoingForConversation",
        "parameters": [
          {
            "name": "conversationId",
            "in": "path",
            "description": "The conversation identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The outgoing number selection request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberSelectionRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number selection request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberSelectionRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number selection request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the outgoing number selection response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/OutgoingNumberSelectionResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API outgoing number selection response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/outgoing/new": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Select new lead sender number",
        "description": "Selects an outgoing phone number for a new outbound lead message using destination, source, and delivery eligibility rules.",
        "operationId": "PhoneNumbers_GetOutgoingForNewOutbound",
        "requestBody": {
          "description": "The outgoing number selection request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberSelectionRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number selection request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberSelectionRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number selection request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the outgoing number selection response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/OutgoingNumberSelectionResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API outgoing number selection response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/outgoing/manual-override": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Validate sender number override",
        "description": "Validates a manual outgoing-number override before use, checking ownership, destination, and delivery eligibility.",
        "operationId": "PhoneNumbers_ValidateManualOverride",
        "requestBody": {
          "description": "The outgoing number manual override request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberManualOverrideRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number manual override request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberManualOverrideRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number manual override request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the outgoing number selection response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/OutgoingNumberSelectionResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API outgoing number selection response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/outgoing/conversation/{conversationId}/override": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Set sender number override",
        "description": "Sets the outgoing phone number override for a conversation so future lead messages use the selected eligible number.",
        "operationId": "PhoneNumbers_SetConversationOverride",
        "parameters": [
          {
            "name": "conversationId",
            "in": "path",
            "description": "The conversation identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The outgoing number manual override request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberManualOverrideRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number manual override request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/OutgoingNumberManualOverrideRequest"
                  }
                ],
                "description": "Request schema for the Leadping API outgoing number manual override request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the outgoing number selection response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/OutgoingNumberSelectionResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API outgoing number selection response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Clear sender number override",
        "description": "Clears a conversation's outgoing-number override so future lead messages return to automatic number selection.",
        "operationId": "PhoneNumbers_ClearConversationOverride",
        "parameters": [
          {
            "name": "conversationId",
            "in": "path",
            "description": "The conversation identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the outgoing number selection response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/OutgoingNumberSelectionResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API outgoing number selection response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/{phoneNumberId}": {
      "get": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Get business phone number details by ID",
        "description": "Returns one phone number visible to the current user, including messaging status, assignment, warmup, and purchase metadata.",
        "operationId": "PhoneNumbers_Get",
        "parameters": [
          {
            "name": "phoneNumberId",
            "in": "path",
            "description": "The phone number identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the phone number response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneNumberResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone number returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Update business phone number settings",
        "description": "Updates phone number settings such as display name, assignment, messaging options, or warmup configuration.",
        "operationId": "PhoneNumbers_Update",
        "parameters": [
          {
            "name": "phoneNumberId",
            "in": "path",
            "description": "The ID of the phone number to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The updated phone number details.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone number update request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone number update request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the phone number response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneNumberResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone number returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Delete a business phone number by ID",
        "description": "Deletes a phone number from the current business when it should no longer be used for lead communication.",
        "operationId": "PhoneNumbers_Delete",
        "parameters": [
          {
            "name": "phoneNumberId",
            "in": "path",
            "description": "The ID of the phone number to delete.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No content is returned when the operation succeeds."
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Create a business phone number for messaging",
        "description": "Purchases or creates a phone number for the current business so it can be assigned to messaging, calls, and lead follow-up.",
        "operationId": "PhoneNumbers_Create",
        "requestBody": {
          "description": "The phone number details to create.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone number update request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberRequest"
                  }
                ],
                "description": "Request schema for the Leadping API phone number update request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the phone number response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneNumberResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone number returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/{phoneNumber}/status": {
      "get": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Get business phone number provider status",
        "description": "Returns provider and Leadping status for a phone number, including messaging readiness, assignments, and verification state.",
        "operationId": "PhoneNumbers_GetStatus",
        "parameters": [
          {
            "name": "phoneNumber",
            "in": "path",
            "description": "The phone number to check the status for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "windowDays",
            "in": "query",
            "description": "The window days.",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "format": "int32"
            }
          },
          {
            "name": "startDate",
            "in": "query",
            "description": "The start date.",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "description": "The end date.",
            "schema": {
              "type": "string",
              "format": "date"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Phone number status was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneNumberStatusResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone number readiness status returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/{phoneNumberId}/warmup": {
      "get": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Get business phone number warmup status",
        "description": "Returns warmup status for a phone number, including readiness, limits, and recent events used for delivery pacing.",
        "operationId": "PhoneNumbers_GetWarmupStatus",
        "parameters": [
          {
            "name": "phoneNumberId",
            "in": "path",
            "description": "The phone number identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "windowDays",
            "in": "query",
            "description": "The window days.",
            "schema": {
              "pattern": "^-?(?:0|[1-9]\\d*)$",
              "format": "int32"
            }
          },
          {
            "name": "startDate",
            "in": "query",
            "description": "The start date.",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "description": "The end date.",
            "schema": {
              "type": "string",
              "format": "date"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the phone number status response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneNumberStatusResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone number readiness status returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/phone-numbers/is-available-for-purchase": {
      "post": {
        "tags": [
          "PhoneNumbers"
        ],
        "summary": "Check phone number purchase availability",
        "description": "Checks whether a phone number can be purchased for the current business before creating or assigning it.",
        "operationId": "PhoneNumbers_IsAvailableForPurchase",
        "requestBody": {
          "description": "The phone number availability request.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberAvailabilityRequest"
                  }
                ],
                "description": "Request schema for checking phone number availability before purchase or assignment."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PhoneNumberAvailabilityRequest"
                  }
                ],
                "description": "Request schema for checking phone number availability before purchase or assignment."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the phone number availability response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PhoneNumberAvailabilityResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API phone number availability result returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An unexpected server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/sms/send": {
      "post": {
        "tags": [
          "Sms"
        ],
        "summary": "Send an SMS message to a business lead",
        "description": "Sends an SMS message to a lead or phone number, applying current-business sender selection, scheduling, and delivery rules.",
        "operationId": "Sms_Send",
        "requestBody": {
          "description": "The SMS request containing recipient and message details.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SendSmsRequest"
                  }
                ],
                "description": "Request schema for the Leadping API SMS send request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/SendSmsRequest"
                  }
                ],
                "description": "Request schema for the Leadping API SMS send request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "The sms response was created successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SmsResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API SMS message returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/sms/{smsEventId}/cancel": {
      "post": {
        "tags": [
          "Sms"
        ],
        "summary": "Cancel a scheduled SMS message for a lead",
        "description": "Cancels a scheduled SMS event before delivery, preserving the event record while preventing the queued message from being sent.",
        "operationId": "Sms_CancelScheduled",
        "parameters": [
          {
            "name": "smsEventId",
            "in": "path",
            "description": "The sms event identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the sms response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SmsResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API SMS message returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/telephony/login": {
      "post": {
        "tags": [
          "Telephony"
        ],
        "summary": "Generates a WebRTC login token.",
        "description": "Generates a Leadping WebRTC login token so authenticated agents can connect to telephony services and place or receive browser-based calls.",
        "operationId": "Telephony_Login",
        "requestBody": {
          "description": "The telephony login request containing connection details.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TelephonyLoginRequest"
                  }
                ],
                "description": "Request model for telephony login token generation."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TelephonyLoginRequest"
                  }
                ],
                "description": "Request model for telephony login token generation."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Login token was successfully generated.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/TelephonyLoginResponse"
                    }
                  ],
                  "description": "Response model for telephony login token generation."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "The user is not authenticated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/reports/exports/my": {
      "post": {
        "tags": [
          "UserDataExports"
        ],
        "summary": "Request a current-user data export report",
        "description": "Requests a data export for the current user, starting asynchronous report generation for account, lead, and event records.",
        "operationId": "UserDataExports_RequestCurrentUser",
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UserDataExportResponse"
                    }
                  ],
                  "description": "Response model containing user data export data returned by the Leadping API."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/reports/exports/{exportId}": {
      "get": {
        "tags": [
          "UserDataExports"
        ],
        "summary": "Get a current-user data export report",
        "description": "Returns the status and metadata for one current-user data export, including readiness, expiration, and download availability.",
        "operationId": "UserDataExports_GetCurrentUserExport",
        "parameters": [
          {
            "name": "exportId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UserDataExportResponse"
                    }
                  ],
                  "description": "Response model containing user data export data returned by the Leadping API."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/reports/exports/{exportId}/download": {
      "get": {
        "tags": [
          "UserDataExports"
        ],
        "summary": "Download a current-user data export report",
        "description": "Validates an export download token and redirects to the generated file when the current-user report is ready.",
        "operationId": "UserDataExports_Download",
        "parameters": [
          {
            "name": "exportId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "token",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "302": {
            "description": "Found"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "410": {
            "description": "Gone",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/calls/all/my": {
      "post": {
        "tags": [
          "CallEvents"
        ],
        "summary": "List current-user lead call event history",
        "description": "Lists call events visible to the current user with paging, sorting, and filters for call history and lead follow-up review.",
        "operationId": "CallEvents_GetAllForCurrentUser",
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Call events were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfCallEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/calls/{callEventId}": {
      "get": {
        "tags": [
          "CallEvents"
        ],
        "summary": "Get lead call event details by event ID",
        "description": "Returns one call event, including call metadata, provider status, related lead, and communication context.",
        "operationId": "CallEvents_GetById",
        "parameters": [
          {
            "name": "callEventId",
            "in": "path",
            "description": "The ID of the call event to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the call event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/CallEventTableRow"
                    }
                  ],
                  "description": "List item schema for Leadping API call event table row results shown in searchable tables."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/calls/lead/{leadId}": {
      "post": {
        "tags": [
          "CallEvents"
        ],
        "summary": "List call event history for a business lead",
        "description": "Lists call events for one lead with paging, helping users review call attempts, outcomes, and follow-up history.",
        "operationId": "CallEvents_GetByLeadId",
        "parameters": [
          {
            "name": "leadId",
            "in": "path",
            "description": "The ID of the lead.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged call event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfCallEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/calls/phone/{phoneNumber}": {
      "post": {
        "tags": [
          "CallEvents"
        ],
        "summary": "List call event history for a phone number",
        "description": "Lists call events for one phone number with paging, helping users review volume, outcomes, and communication history.",
        "operationId": "CallEvents_GetByPhoneNumber",
        "parameters": [
          {
            "name": "phoneNumber",
            "in": "path",
            "description": "The phone number to search for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged call event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfCallEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/all/my": {
      "post": {
        "tags": [
          "Events"
        ],
        "summary": "List current-user lead events",
        "description": "Lists event records visible to the current user with paging, sorting, and filters across lead, SMS, call, and automation events.",
        "operationId": "Events_GetAllForCurrentUser",
        "parameters": [
          {
            "name": "category",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Events were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/businesses/{businessId}": {
      "post": {
        "tags": [
          "Events"
        ],
        "summary": "List business lead event history",
        "description": "Lists event records for a business with paging and filters so admins can review lead communication and automation events.",
        "operationId": "Events_GetAllForBusiness",
        "parameters": [
          {
            "name": "businessId",
            "in": "path",
            "description": "The business identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "description": "The filtering, sorting, and pagination options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/conversations/{conversationId}": {
      "post": {
        "tags": [
          "Events"
        ],
        "summary": "List event records for a conversation.",
        "description": "Lists event records for one conversation with paging, including notes, messages, calls, and follow-up history.",
        "operationId": "Events_GetAllForConversation",
        "parameters": [
          {
            "name": "conversationId",
            "in": "path",
            "description": "The ID of the conversation.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Events for the conversation were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/leads/{leadId}": {
      "post": {
        "tags": [
          "Events"
        ],
        "summary": "List event history for a lead",
        "description": "Lists event records for one lead with paging, covering communication, routing, automation, and event changes.",
        "operationId": "Events_GetAllForLead",
        "parameters": [
          {
            "name": "leadId",
            "in": "path",
            "description": "The ID of the lead.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Events for the lead were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/{eventId}": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "Get lead event details by ID",
        "description": "Returns one event record by ID, including event type, timestamps, related entities, and summary payload data.",
        "operationId": "Events_GetById",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "The ID of the event.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Event was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/EventTableRow"
                    }
                  ],
                  "description": "List item schema for Leadping API event timeline table row results shown in searchable tables."
                }
              }
            }
          },
          "404": {
            "description": "Event was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/{eventId}/detail": {
      "get": {
        "tags": [
          "Events"
        ],
        "summary": "Get full lead event payload by ID",
        "description": "Returns detailed event data by ID, including the full JSON payload for debugging, audit review, and workflow inspection.",
        "operationId": "Events_GetDetailById",
        "parameters": [
          {
            "name": "eventId",
            "in": "path",
            "description": "The ID of the event.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Event details were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/EventDetailResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API event detail response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "Event was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/conversations/{conversationId}/notes": {
      "post": {
        "tags": [
          "Events"
        ],
        "summary": "Create a conversation note event.",
        "description": "Creates a note event on a conversation so users can document lead context, handoffs, and follow-up details.",
        "operationId": "Events_CreateNote",
        "parameters": [
          {
            "name": "conversationId",
            "in": "path",
            "description": "The conversation identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The create note request payload for the operation.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CreateNoteRequest"
                  }
                ],
                "description": "Request payload for create note."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/CreateNoteRequest"
                  }
                ],
                "description": "Request payload for create note."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/EventTableRow"
                    }
                  ],
                  "description": "List item schema for Leadping API event timeline table row results shown in searchable tables."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/sms/all/my": {
      "post": {
        "tags": [
          "SmsEvents"
        ],
        "summary": "List current-user lead SMS event history",
        "description": "Lists SMS events visible to the current user with paging, sorting, and filters for message history and follow-up review.",
        "operationId": "SmsEvents_GetAllForCurrentUser",
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "SMS events were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfSmsEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/sms/{smsEventId}": {
      "get": {
        "tags": [
          "SmsEvents"
        ],
        "summary": "Get lead SMS event details by event ID",
        "description": "Returns one SMS event, including message metadata, provider status, related lead, and delivery context.",
        "operationId": "SmsEvents_GetById",
        "parameters": [
          {
            "name": "smsEventId",
            "in": "path",
            "description": "The ID of the SMS event to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the sms event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SmsEventTableRow"
                    }
                  ],
                  "description": "List item schema for Leadping API SMS event table row results shown in searchable tables."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/sms/lead/{leadId}": {
      "post": {
        "tags": [
          "SmsEvents"
        ],
        "summary": "List message event history for a lead",
        "description": "Lists SMS events for one lead with paging, helping users review sent messages, scheduled messages, and delivery outcomes.",
        "operationId": "SmsEvents_GetByLeadId",
        "parameters": [
          {
            "name": "leadId",
            "in": "path",
            "description": "The ID of the lead.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged sms event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfSmsEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/events/sms/phone/{phoneNumber}": {
      "post": {
        "tags": [
          "SmsEvents"
        ],
        "summary": "List SMS event history for a phone number",
        "description": "Lists SMS events for one phone number with paging, helping users review volume, delivery outcomes, and communication history.",
        "operationId": "SmsEvents_GetByPhoneNumber",
        "parameters": [
          {
            "name": "phoneNumber",
            "in": "path",
            "description": "The phone number to search for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged sms event table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfSmsEventTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me": {
      "get": {
        "tags": [
          "Businesses"
        ],
        "summary": "Get current business account profile",
        "description": "Returns the authenticated user's current business profile, including account settings, billing context, and communication configuration.",
        "operationId": "Businesses_GetForCurrentUser",
        "responses": {
          "200": {
            "description": "Business was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API business profile response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The specified business was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Businesses"
        ],
        "summary": "Update current business account profile",
        "description": "Updates the authenticated user's current business profile, including contact, settings, and communication configuration.",
        "operationId": "Businesses_UpdateForCurrentUser",
        "requestBody": {
          "description": "The updated business profile data.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business profile request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business profile request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the business response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API business profile response returned to authenticated clients."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me/options": {
      "get": {
        "tags": [
          "Businesses"
        ],
        "summary": "List business switch options",
        "description": "Lists businesses the authenticated user can switch into, including membership role and current-business selection data.",
        "operationId": "Businesses_GetSwitchOptions",
        "responses": {
          "200": {
            "description": "Returns the list of business switch option.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/BusinessSwitchOption"
                      }
                    ],
                    "description": "API DTO containing business switch option data used by Leadping API contracts."
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me/switch": {
      "post": {
        "tags": [
          "Businesses"
        ],
        "summary": "Switch current business account context",
        "description": "Switches the authenticated user's active business context so subsequent lead, billing, and communication requests target that business.",
        "operationId": "Businesses_SwitchCurrentBusiness",
        "requestBody": {
          "description": "The selected business identifier.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessSwitchRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business switch request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessSwitchRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business switch request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the business response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API business profile response returned to authenticated clients."
                }
              }
            }
          },
          "403": {
            "description": "The authenticated user is not authorized for this operation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me/users": {
      "get": {
        "tags": [
          "Businesses"
        ],
        "summary": "List users for the current business",
        "description": "Lists users assigned to the current business, including roles and membership details for access management.",
        "operationId": "Businesses_GetCurrentBusinessUsers",
        "responses": {
          "200": {
            "description": "Returns the list of business user table row.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/BusinessUserTableRow"
                      }
                    ],
                    "description": "API DTO containing business user data used by Leadping API contracts."
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Businesses"
        ],
        "summary": "Add a user to the current business account",
        "description": "Adds an existing user to the current business with the requested role for shared lead communication and account access.",
        "operationId": "Businesses_AddCurrentBusinessUser",
        "requestBody": {
          "description": "The user and role to add to the current business.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessUserRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business user request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessUserRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business user request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the business user response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessUserResponse"
                    }
                  ],
                  "description": "API response containing business user data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "The authenticated user is not authorized for this operation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me/users/{userId}": {
      "put": {
        "tags": [
          "Businesses"
        ],
        "summary": "Change a current-business user role",
        "description": "Changes a user's role in the current business, updating access to lead, automation, billing, and admin workflows.",
        "operationId": "Businesses_ChangeCurrentBusinessUserRole",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "description": "The ID of the user whose current-business role is changing.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The updated role assignment.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessUserRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business user request, including the fields clients can send."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessUserRequest"
                  }
                ],
                "description": "Request schema for the Leadping API business user request, including the fields clients can send."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the business user response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessUserResponse"
                    }
                  ],
                  "description": "API response containing business user data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "The authenticated user is not authorized for this operation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Businesses"
        ],
        "summary": "Remove a user from the current business",
        "description": "Removes a user from the current business, revoking their access to its leads, settings, billing, and communication data.",
        "operationId": "Businesses_RemoveCurrentBusinessUser",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "description": "The ID of the user to remove from the current business.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No content is returned when the operation succeeds."
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "The authenticated user is not authorized for this operation.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me/invitations": {
      "get": {
        "tags": [
          "Businesses"
        ],
        "summary": "List invitations for the current business",
        "description": "Lists pending and historical invitations for the current business, including recipient, role, status, and expiration.",
        "operationId": "Businesses_GetCurrentBusinessInvitations",
        "responses": {
          "200": {
            "description": "Returns the list of business invitation table row.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/BusinessInvitationTableRow"
                      }
                    ],
                    "description": "API DTO containing business invitation data used by Leadping API contracts."
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Businesses"
        ],
        "summary": "Create a current-business user invitation",
        "description": "Creates an invitation for the current business so another user can join with the requested role and account access.",
        "operationId": "Businesses_CreateCurrentBusinessInvitation",
        "requestBody": {
          "description": "The invitation recipient and requested role.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessInvitationRequest"
                  }
                ],
                "description": "Request payload for business invitation."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BusinessInvitationRequest"
                  }
                ],
                "description": "Request payload for business invitation."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the business invitation response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessInvitationResponse"
                    }
                  ],
                  "description": "API response containing business invitation data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me/invitations/{invitationId}/resend": {
      "post": {
        "tags": [
          "Businesses"
        ],
        "summary": "Resend a current-business user invitation",
        "description": "Resends a pending current-business invitation, refreshing delivery while preserving recipient, role, and acceptance token.",
        "operationId": "Businesses_ResendCurrentBusinessInvitation",
        "parameters": [
          {
            "name": "invitationId",
            "in": "path",
            "description": "The ID of the current-business invitation to resend.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the business invitation response.",
            "content": {
              "text/plain": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessInvitationResponse"
                    }
                  ],
                  "description": "API response containing business invitation data returned to callers."
                }
              },
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessInvitationResponse"
                    }
                  ],
                  "description": "API response containing business invitation data returned to callers."
                }
              },
              "text/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessInvitationResponse"
                    }
                  ],
                  "description": "API response containing business invitation data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/me/invitations/{invitationId}": {
      "delete": {
        "tags": [
          "Businesses"
        ],
        "summary": "Revoke a current-business user invitation",
        "description": "Revokes a pending current-business invitation so the recipient can no longer use it to join the business.",
        "operationId": "Businesses_RevokeCurrentBusinessInvitation",
        "parameters": [
          {
            "name": "invitationId",
            "in": "path",
            "description": "The ID of the current-business invitation to revoke.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No content is returned when the operation succeeds."
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/api-keys/my": {
      "post": {
        "tags": [
          "Businesses"
        ],
        "summary": "List current business API keys.",
        "description": "Retrieves a paged list of API keys owned by the caller's current Leadping business, with support for filtering, sorting, and pagination.",
        "operationId": "Businesses_GetAllApiKeysForCurrentUser",
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Current-business API keys were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfBusinessTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/invitations/token/{token}": {
      "get": {
        "tags": [
          "Businesses"
        ],
        "summary": "Get a business user invitation by token",
        "description": "Returns a business invitation by acceptance token, including business, recipient, role, and expiration details.",
        "operationId": "Businesses_GetInvitationByToken",
        "parameters": [
          {
            "name": "token",
            "in": "path",
            "description": "The invitation acceptance token.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the business invitation response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessInvitationResponse"
                    }
                  ],
                  "description": "API response containing business invitation data returned to callers."
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/businesses/invitations/accept": {
      "post": {
        "tags": [
          "Businesses"
        ],
        "summary": "Accept business invitation",
        "description": "Accepts a business invitation for the signed-in user, creating membership and setting business access context.",
        "operationId": "Businesses_AcceptInvitation",
        "requestBody": {
          "description": "The invitation token and accepting user details.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AcceptBusinessInvitationRequest"
                  }
                ],
                "description": "Request payload for accept business invitation."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AcceptBusinessInvitationRequest"
                  }
                ],
                "description": "Request payload for accept business invitation."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the business invitation response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/BusinessInvitationResponse"
                    }
                  ],
                  "description": "API response containing business invitation data returned to callers."
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or failed validation.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/payment-methods": {
      "get": {
        "tags": [
          "PaymentMethods"
        ],
        "summary": "List payment methods",
        "operationId": "PaymentMethods_GetAll",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "allOf": [
                      {
                        "$ref": "#/components/schemas/StripePaymentMethodResponse"
                      }
                    ],
                    "description": "API DTO containing stripe payment method data used by Leadping API contracts."
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/payment-methods/{id}": {
      "get": {
        "tags": [
          "PaymentMethods"
        ],
        "summary": "Get a business billing payment method",
        "description": "Returns one payment method for the current user or business, including card metadata used for billing management.",
        "operationId": "PaymentMethods_Get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the payment method to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Payment method was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/StripePaymentMethodResponse"
                    }
                  ],
                  "description": "API DTO containing stripe payment method data used by Leadping API contracts."
                }
              }
            }
          },
          "404": {
            "description": "The specified payment method was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PaymentMethods"
        ],
        "summary": "Delete a business billing payment method",
        "description": "Deletes a payment method so it is no longer available for wallet funding, invoices, or billing account management.",
        "operationId": "PaymentMethods_Delete",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the payment method to delete.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Payment method was successfully deleted.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "The specified payment method was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/payment-methods/{id}/default": {
      "post": {
        "tags": [
          "PaymentMethods"
        ],
        "summary": "Set default payment method",
        "operationId": "PaymentMethods_MakeDefault",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/StripePaymentMethodResponse"
                    }
                  ],
                  "description": "API DTO containing stripe payment method data used by Leadping API contracts."
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/{id}": {
      "get": {
        "tags": [
          "Transactions"
        ],
        "summary": "Get a current-user billing transaction",
        "description": "Returns one transaction visible to the current user, including amount, status, wallet context, and billing metadata.",
        "operationId": "Transactions_GetForCurrentUser",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the transaction to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Transaction was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/TransactionResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API billing transaction response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The specified transaction was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "The user does not own this transaction.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/all/my": {
      "post": {
        "tags": [
          "Transactions"
        ],
        "summary": "List current-user billing transactions",
        "description": "Lists current-user transactions with paging, sorting, and filters for wallet events, billing history, and reconciliation.",
        "operationId": "Transactions_GetAllForCurrentUser",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "description": "Pagination, filtering, and sorting options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Transactions were successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfTransactionTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/usage/all/my": {
      "post": {
        "tags": [
          "Usage"
        ],
        "summary": "List business messaging usage ledger entries",
        "description": "Lists current-business usage ledger entries with paging, sorting, and filters for messaging, billing, and wallet review.",
        "operationId": "Usage_GetAllForCurrentBusiness",
        "requestBody": {
          "description": "The filtering, sorting, and pagination options.",
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            },
            "application/*+json": {
              "schema": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/RequestDataOptions"
                  }
                ],
                "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returns the paged usage ledger table row.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/PagedResultOfUsageLedgerTableRow"
                    }
                  ],
                  "description": "A generic container for paginated results returned to the client."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/usage/summary/my": {
      "get": {
        "tags": [
          "Usage"
        ],
        "summary": "Get business messaging usage summary",
        "description": "Returns current-business usage totals for the active billing period, including spend, limits, and event summary data.",
        "operationId": "Usage_GetSummaryForCurrentBusiness",
        "parameters": [
          {
            "name": "periodStart",
            "in": "query",
            "description": "The period start.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "periodEnd",
            "in": "query",
            "description": "The period end.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the usage summary response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/UsageSummaryResponse"
                    }
                  ],
                  "description": "API DTO containing usage summary response data."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/wallets/{id}": {
      "get": {
        "tags": [
          "Wallets"
        ],
        "summary": "Get a business wallet balance by ID",
        "description": "Returns one wallet by ID, including balance, billing context, and funding status for account payment workflows.",
        "operationId": "Wallets_Get",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the wallet to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Wallet was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/WalletResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API billing wallet response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The specified wallet was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/wallets/me": {
      "get": {
        "tags": [
          "Wallets"
        ],
        "summary": "Get the current business wallet balance",
        "description": "Returns the current business wallet, including balance and funding status used for communication delivery and billing.",
        "operationId": "Wallets_GetForCurrentBusiness",
        "responses": {
          "200": {
            "description": "Wallet was successfully retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/WalletResponse"
                    }
                  ],
                  "description": "Response schema for the Leadping API billing wallet response returned to authenticated clients."
                }
              }
            }
          },
          "404": {
            "description": "The current business wallet was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid or malformed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AcceptBusinessInvitationRequest": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "description": "The token supplied to authorize or complete this business invitation."
          },
          "email": {
            "type": "string",
            "description": "The email address associated with this business invitation.",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "description": "The first name value for this business invitation.",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "description": "The date and time for the last name value on this business invitation.",
            "nullable": true
          }
        },
        "description": "Request payload for accept business invitation."
      },
      "ActivationDomainOption": {
        "type": "object",
        "properties": {
          "domainName": {
            "type": "string",
            "description": "The domain name associated with this activation domain option."
          },
          "whyItFits": {
            "type": "string",
            "description": "The why it fits value for this activation domain option."
          },
          "industryRelevance": {
            "type": "string",
            "description": "The industry relevance value for this activation domain option."
          },
          "trustConcerns": {
            "type": "string",
            "description": "The trust concerns value for this activation domain option.",
            "nullable": true
          },
          "estimatedAnnualCost": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The estimated annual cost value for this activation domain option.",
            "format": "double",
            "nullable": true
          },
          "availabilityStatus": {
            "type": "string",
            "description": "The current availability status for this activation domain option."
          },
          "recommended": {
            "type": "boolean",
            "description": "Whether this activation domain option is recommended."
          }
        },
        "description": "API DTO containing activation domain option data used by Leadping API contracts."
      },
      "ActivationLaunchReviewStatus": {
        "enum": [
          "NotReady",
          "Pending",
          "Approved",
          "NotRequired",
          "Blocked"
        ],
        "type": "string",
        "description": "Defines the supported Activation Launch Review Status values."
      },
      "ActivationOnboardingStatus": {
        "enum": [
          "Draft",
          "Submitted",
          "Failed"
        ],
        "type": "string",
        "description": "Defines the supported Activation Onboarding Status values."
      },
      "ActivationPaymentStatus": {
        "enum": [
          "PaymentMethodPending",
          "PaymentMethodConfirmed",
          "Failed"
        ],
        "type": "string",
        "description": "Defines the supported Activation Payment Status values."
      },
      "ActivationSubscriptionStatus": {
        "enum": [
          "Pending",
          "Active",
          "Failed",
          "Canceled"
        ],
        "type": "string",
        "description": "Defines the supported Activation Subscription Status values."
      },
      "ActivationTelephonyStatus": {
        "enum": [
          "NotStarted",
          "ProvisioningPending",
          "PartiallyProvisioned",
          "Ready",
          "Failed",
          "BlockedRequiresOperatorAction"
        ],
        "type": "string",
        "description": "Defines the supported Activation Telephony Status values."
      },
      "ActivationTimelineEvent": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this activation timeline event."
          },
          "type": {
            "type": "string",
            "description": "The type classification for this activation timeline event."
          },
          "title": {
            "type": "string",
            "description": "The title value for this activation timeline event."
          },
          "details": {
            "type": "string",
            "description": "The details value for this activation timeline event.",
            "nullable": true
          },
          "status": {
            "type": "string",
            "description": "The current status for this activation timeline event."
          },
          "actor": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this actor.",
            "nullable": true
          },
          "failureReason": {
            "type": "string",
            "description": "The human-readable failure reason explaining this activation timeline event.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this activation timeline event.",
            "format": "date-time"
          }
        },
        "description": "API DTO containing activation timeline event data used by Leadping API contracts."
      },
      "AnalyticsBucketSize": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "description": "Defines the supported analytics bucket size values.",
        "format": "int32"
      },
      "AnalyticsComparison": {
        "type": "object",
        "properties": {
          "current": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Metric value for the current reporting period.",
            "format": "double"
          },
          "previous": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Metric value for the preceding comparison period.",
            "format": "double"
          },
          "changePercent": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Percentage change between the current and previous reporting periods.",
            "format": "double",
            "nullable": true
          },
          "direction": {
            "type": "string",
            "description": "Direction classification for this Leadping analytics comparison."
          }
        },
        "description": "Represents analytics comparison data exposed by Leadping analytics."
      },
      "AnalyticsDateRange": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "string",
            "description": "Date and time when this Leadping analytics date range was start.",
            "format": "date-time"
          },
          "endAt": {
            "type": "string",
            "description": "Date and time when this Leadping analytics date range was end.",
            "format": "date-time"
          },
          "bucketSize": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AnalyticsBucketSize"
              }
            ],
            "description": "Bucket size associated with this Leadping analytics date range."
          }
        },
        "description": "Represents analytics date range data exposed by Leadping analytics."
      },
      "AnalyticsTrendPointOfdecimal": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "string",
            "description": "Date and time when this Leadping analytics trend point was start.",
            "format": "date-time"
          },
          "endAt": {
            "type": "string",
            "description": "Date and time when this Leadping analytics trend point was end.",
            "format": "date-time"
          },
          "label": {
            "type": "string",
            "description": "Human-readable label for this Leadping analytics trend point."
          },
          "value": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Value associated with this Leadping analytics trend point.",
            "format": "double"
          }
        },
        "description": "Represents analytics trend point data exposed by Leadping analytics."
      },
      "AnalyticsTrendPointOfint": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "string",
            "description": "Date and time when this Leadping analytics trend point was start.",
            "format": "date-time"
          },
          "endAt": {
            "type": "string",
            "description": "Date and time when this Leadping analytics trend point was end.",
            "format": "date-time"
          },
          "label": {
            "type": "string",
            "description": "Human-readable label for this Leadping analytics trend point."
          },
          "value": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Value associated with this Leadping analytics trend point.",
            "format": "int32"
          }
        },
        "description": "Represents analytics trend point data exposed by Leadping analytics."
      },
      "AutomationAction": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation action."
          },
          "type": {
            "type": "string",
            "description": "Type classification used to route and interpret this automation action in the Leadping API."
          },
          "order": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Sort order used to evaluate or display this automation action.",
            "format": "int32"
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Indicates whether this automation action is active and allowed to run."
          },
          "settings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Key-value settings that configure how this automation action behaves."
          }
        },
        "description": "Public Leadping API schema for automation action data."
      },
      "AutomationActionRunRecord": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation action run record."
          },
          "automationRunId": {
            "type": "string",
            "description": "Automation run ID connected to this action or event record.",
            "nullable": true
          },
          "actionId": {
            "type": "string",
            "description": "Automation action ID executed or evaluated by this automation action run record.",
            "nullable": true
          },
          "actionType": {
            "type": "string",
            "description": "Automation action type, such as send SMS or create task."
          },
          "order": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Sort order used to evaluate or display this automation action run record.",
            "format": "int32"
          },
          "status": {
            "type": "string",
            "description": "Current lifecycle status for this automation action run record in the Leadping API."
          },
          "startedAt": {
            "type": "string",
            "description": "UTC timestamp when processing started for this automation action run record.",
            "format": "date-time"
          },
          "scheduledAt": {
            "type": "string",
            "description": "UTC timestamp when this automation action run record was scheduled.",
            "format": "date-time",
            "nullable": true
          },
          "completedAt": {
            "type": "string",
            "description": "UTC timestamp when processing completed for this automation action run record.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "UTC timestamp when processing failed for this automation action run record.",
            "format": "date-time",
            "nullable": true
          },
          "processingAttempts": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of processing attempts made for this workflow or delivery request.",
            "format": "int32"
          },
          "nextRetryAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping will retry this automation action run record.",
            "format": "date-time",
            "nullable": true
          },
          "failureCode": {
            "type": "string",
            "description": "Machine-readable failure code for troubleshooting this automation action run record.",
            "nullable": true
          }
        },
        "description": "History record schema for Leadping API automation action run record data exposed in automation and audit views."
      },
      "AutomationCondition": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation condition."
          },
          "type": {
            "type": "string",
            "description": "Type classification used to route and interpret this automation condition in the Leadping API."
          },
          "operator": {
            "type": "string",
            "description": "Automation comparison operator used by this condition.",
            "nullable": true
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Indicates whether this automation condition is active and allowed to run."
          },
          "settings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Key-value settings that configure how this automation condition behaves."
          }
        },
        "description": "Public Leadping API schema for automation condition data."
      },
      "AutomationConditionGroup": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation condition group."
          },
          "mode": {
            "type": "string",
            "description": "Execution mode that controls how this automation condition group is evaluated."
          },
          "conditions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationCondition"
                }
              ],
              "description": "Public Leadping API schema for automation condition data."
            },
            "description": "Automation conditions evaluated before an action or workflow runs."
          }
        },
        "description": "Public Leadping API schema for automation condition group data."
      },
      "AutomationPreviewActionResult": {
        "type": "object",
        "properties": {
          "actionId": {
            "type": "string",
            "description": "Automation action ID executed or evaluated by this automation preview action result.",
            "nullable": true
          },
          "summary": {
            "type": "string",
            "description": "Short human-readable summary of this automation preview action result for lists, timelines, and notifications."
          },
          "renderedOutput": {
            "type": "string",
            "description": "Rendered preview output produced by this automation preview action result."
          },
          "wouldHaveSideEffect": {
            "type": "boolean",
            "description": "Indicates whether the automation preview would perform an external action if executed live."
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Warnings returned for this automation preview action result that do not necessarily block processing."
          }
        },
        "description": "Result schema for the Leadping API automation preview action result returned by lookup and validation endpoints."
      },
      "AutomationPreviewConditionResult": {
        "type": "object",
        "properties": {
          "conditionId": {
            "type": "string",
            "description": "Automation condition ID evaluated by this preview result.",
            "nullable": true
          },
          "summary": {
            "type": "string",
            "description": "Short human-readable summary of this automation preview condition result for lists, timelines, and notifications."
          },
          "passed": {
            "type": "boolean",
            "description": "Indicates whether this automation preview condition result passed the preview or validation check."
          }
        },
        "description": "Result schema for the Leadping API automation preview condition result returned by lookup and validation endpoints."
      },
      "AutomationPreviewRequest": {
        "type": "object",
        "properties": {
          "automation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomationRequestSnapshot"
              }
            ],
            "description": "Automation configuration to evaluate without executing live actions."
          },
          "triggerType": {
            "type": "string",
            "description": "Automation trigger type that starts the workflow.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API automation preview request, including the fields clients can send."
      },
      "AutomationPreviewResponse": {
        "type": "object",
        "properties": {
          "triggerType": {
            "type": "string",
            "description": "Automation trigger type that starts the workflow.",
            "nullable": true
          },
          "samplePayload": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Example payload clients can use to understand this automation preview response format."
          },
          "validation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomationValidationResult"
              }
            ],
            "description": "Validation result returned for the automation configuration."
          },
          "conditionResults": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationPreviewConditionResult"
                }
              ],
              "description": "Result schema for the Leadping API automation preview condition result returned by lookup and validation endpoints."
            },
            "description": "Condition evaluation results returned by the automation preview."
          },
          "actionResults": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationPreviewActionResult"
                }
              ],
              "description": "Result schema for the Leadping API automation preview action result returned by lookup and validation endpoints."
            },
            "description": "Action preview results showing what the automation would do."
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Warnings returned for this automation preview response that do not necessarily block processing."
          }
        },
        "description": "Response schema for the Leadping API automation preview response returned to authenticated clients."
      },
      "AutomationRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this automation configuration request to API users.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this automation configuration request is active and available in the Leadping API.",
            "nullable": true
          },
          "scope": {
            "type": "string",
            "description": "Scope that limits where this automation configuration request applies in Leadping.",
            "nullable": true
          },
          "visibility": {
            "type": "string",
            "description": "Visibility level that controls who can see this automation configuration request.",
            "nullable": true
          },
          "triggers": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationTrigger"
                }
              ],
              "description": "Public Leadping API schema for automation trigger data."
            },
            "description": "Automation triggers that can start this workflow."
          },
          "conditionGroups": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationConditionGroup"
                }
              ],
              "description": "Public Leadping API schema for automation condition group data."
            },
            "description": "Grouped automation conditions used to decide whether this workflow should run."
          },
          "actions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationAction"
                }
              ],
              "description": "Public Leadping API schema for automation action data."
            },
            "description": "Automation actions configured or returned for this workflow."
          },
          "version": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Version number for this automation configuration request schema or saved configuration.",
            "format": "int32"
          },
          "name": {
            "maxLength": 255,
            "minLength": 0,
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity, when updating an existing entity.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API automation configuration request, including the fields clients can send."
      },
      "AutomationRequestSnapshot": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation request snapshot.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Display name for this automation request snapshot in the Leadping API.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this automation request snapshot to API users.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this automation request snapshot is active and available in the Leadping API.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "Business ID captured when the automation request snapshot was created.",
            "nullable": true
          },
          "createdByUserId": {
            "type": "string",
            "description": "User ID of the person who created this automation request snapshot.",
            "nullable": true
          },
          "scope": {
            "type": "string",
            "description": "Scope that limits where this automation request snapshot applies in Leadping.",
            "nullable": true
          },
          "visibility": {
            "type": "string",
            "description": "Visibility level that controls who can see this automation request snapshot.",
            "nullable": true
          },
          "managementLevel": {
            "type": "string",
            "description": "Management level that controls whether Leadping or the business owns this automation setting.",
            "nullable": true
          },
          "isSystemManaged": {
            "type": "boolean",
            "description": "Indicates whether Leadping manages this automation request snapshot automatically instead of a user."
          },
          "triggers": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationTrigger"
                }
              ],
              "description": "Public Leadping API schema for automation trigger data."
            },
            "description": "Automation triggers that can start this workflow."
          },
          "conditionGroups": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationConditionGroup"
                }
              ],
              "description": "Public Leadping API schema for automation condition group data."
            },
            "description": "Grouped automation conditions used to decide whether this workflow should run."
          },
          "actions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationAction"
                }
              ],
              "description": "Public Leadping API schema for automation action data."
            },
            "description": "Automation actions configured or returned for this workflow."
          }
        },
        "description": "Public Leadping API schema for automation request snapshot data."
      },
      "AutomationResponse": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this automation configuration response to API users.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this automation configuration response is active and available in the Leadping API.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "Business ID that owns this automation.",
            "nullable": true
          },
          "createdByUserId": {
            "type": "string",
            "description": "User ID of the person who created this automation configuration response.",
            "nullable": true
          },
          "scope": {
            "type": "string",
            "description": "Scope that limits where this automation configuration response applies in Leadping.",
            "nullable": true
          },
          "visibility": {
            "type": "string",
            "description": "Visibility level that controls who can see this automation configuration response.",
            "nullable": true
          },
          "managementLevel": {
            "type": "string",
            "description": "Management level that controls whether Leadping or the business owns this automation setting.",
            "nullable": true
          },
          "isSystemManaged": {
            "type": "boolean",
            "description": "Indicates whether Leadping manages this automation configuration response automatically instead of a user."
          },
          "triggers": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationTrigger"
                }
              ],
              "description": "Public Leadping API schema for automation trigger data."
            },
            "description": "Automation triggers that can start this workflow."
          },
          "conditionGroups": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationConditionGroup"
                }
              ],
              "description": "Public Leadping API schema for automation condition group data."
            },
            "description": "Grouped automation conditions used to decide whether this workflow should run."
          },
          "actions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationAction"
                }
              ],
              "description": "Public Leadping API schema for automation action data."
            },
            "description": "Automation actions configured or returned for this workflow."
          },
          "lastRunAt": {
            "type": "string",
            "description": "UTC timestamp when this automation last ran.",
            "format": "date-time",
            "nullable": true
          },
          "lastRunStatus": {
            "type": "string",
            "description": "Status from the most recent automation run.",
            "nullable": true
          },
          "recentRuns": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationRunRecord"
                }
              ],
              "description": "History record schema for Leadping API automation run record data exposed in automation and audit views."
            },
            "description": "Recent automation runs returned for history and troubleshooting."
          },
          "version": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Version number for this automation configuration response schema or saved configuration.",
            "format": "int32"
          },
          "user": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary connected to this automation configuration response.",
            "nullable": true
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "Business summary connected to this automation configuration response.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API automation configuration response returned to authenticated clients."
      },
      "AutomationRunRecord": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation run record."
          },
          "automationId": {
            "type": "string",
            "description": "Automation ID connected to this workflow, run, or event.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "Business ID that owns this automation run.",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID that triggered this automation run, when the run is lead-based.",
            "nullable": true
          },
          "triggerType": {
            "type": "string",
            "description": "Automation trigger type that starts the workflow.",
            "nullable": true
          },
          "status": {
            "type": "string",
            "description": "Current lifecycle status for this automation run record in the Leadping API."
          },
          "executionMode": {
            "type": "string",
            "description": "Execution mode used for automation preview or live workflow processing."
          },
          "startedAt": {
            "type": "string",
            "description": "UTC timestamp when processing started for this automation run record.",
            "format": "date-time"
          },
          "completedAt": {
            "type": "string",
            "description": "UTC timestamp when processing completed for this automation run record.",
            "format": "date-time",
            "nullable": true
          },
          "processingAttempts": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of processing attempts made for this workflow or delivery request.",
            "format": "int32"
          },
          "lastAttemptAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping last attempted to process this automation run.",
            "format": "date-time",
            "nullable": true
          },
          "failureCode": {
            "type": "string",
            "description": "Machine-readable failure code for troubleshooting this automation run record.",
            "nullable": true
          },
          "skippedReason": {
            "type": "string",
            "description": "Human-readable reason explaining why Leadping skipped this automation run.",
            "nullable": true
          },
          "actions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationActionRunRecord"
                }
              ],
              "description": "History record schema for Leadping API automation action run record data exposed in automation and audit views."
            },
            "description": "Automation actions configured or returned for this workflow."
          }
        },
        "description": "History record schema for Leadping API automation run record data exposed in automation and audit views."
      },
      "AutomationTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation table row."
          },
          "name": {
            "type": "string",
            "description": "Display name for this automation table row in the Leadping API."
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this automation table row to API users."
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this automation table row is active and available in the Leadping API."
          },
          "businessId": {
            "type": "string",
            "description": "Business ID that owns this automation.",
            "nullable": true
          },
          "createdByUserId": {
            "type": "string",
            "description": "User ID of the person who created this automation table row.",
            "nullable": true
          },
          "scope": {
            "type": "string",
            "description": "Scope that limits where this automation table row applies in Leadping.",
            "nullable": true
          },
          "visibility": {
            "type": "string",
            "description": "Visibility level that controls who can see this automation table row.",
            "nullable": true
          },
          "managementLevel": {
            "type": "string",
            "description": "Management level that controls whether Leadping or the business owns this automation setting.",
            "nullable": true
          },
          "isSystemManaged": {
            "type": "boolean",
            "description": "Indicates whether Leadping manages this automation table row automatically instead of a user."
          },
          "triggerType": {
            "type": "string",
            "description": "Automation trigger type that starts the workflow."
          },
          "triggerSummary": {
            "type": "string",
            "description": "Human-readable summary of the automation trigger that started the workflow."
          },
          "conditionSummary": {
            "type": "string",
            "description": "Human-readable summary of the automation condition evaluation."
          },
          "actionSummary": {
            "type": "string",
            "description": "Human-readable summary of the automation action outcome."
          },
          "ruleSentence": {
            "type": "string",
            "description": "Human-readable explanation of the automation rule being evaluated."
          },
          "lastRunStatus": {
            "type": "string",
            "description": "Status from the most recent automation run.",
            "nullable": true
          },
          "lastRunAt": {
            "type": "string",
            "description": "UTC timestamp when this automation last ran.",
            "format": "date-time",
            "nullable": true
          },
          "modifiedAt": {
            "type": "string",
            "description": "UTC timestamp when this automation table row was last modified.",
            "format": "date-time"
          },
          "healthSummary": {
            "type": "string",
            "description": "Human-readable health summary for this automation table row."
          },
          "user": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary connected to this automation table row.",
            "nullable": true
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "Business summary connected to this automation table row.",
            "nullable": true
          }
        },
        "description": "List item schema for Leadping API automation table row results shown in searchable tables."
      },
      "AutomationTrigger": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this automation trigger."
          },
          "type": {
            "type": "string",
            "description": "Type classification used to route and interpret this automation trigger in the Leadping API."
          },
          "displayName": {
            "type": "string",
            "description": "Human-readable display name shown for this automation trigger.",
            "nullable": true
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Indicates whether this automation trigger is active and allowed to run."
          },
          "settings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Key-value settings that configure how this automation trigger behaves."
          }
        },
        "description": "Public Leadping API schema for automation trigger data."
      },
      "AutomationValidationResult": {
        "type": "object",
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Validation or processing errors returned for this automation validation result."
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Warnings returned for this automation validation result that do not necessarily block processing."
          }
        },
        "description": "Result schema for the Leadping API automation validation result returned by lookup and validation endpoints."
      },
      "AutomationWorkflowActionResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for the automation workflow action."
          },
          "stepId": {
            "type": "string",
            "description": "Unique identifier of the step associated with this Leadping automation workflow action.",
            "nullable": true
          },
          "stepOrder": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Step order associated with this Leadping automation workflow action.",
            "format": "int32"
          },
          "stepDisplayName": {
            "type": "string",
            "description": "Human-readable step display name associated with this Leadping automation workflow action."
          },
          "actionType": {
            "type": "string",
            "description": "Action type classification for this Leadping automation workflow action."
          },
          "actionTypeDisplay": {
            "type": "string",
            "description": "Human-readable action type display for this Leadping automation workflow action."
          },
          "status": {
            "type": "string",
            "description": "Current status for this Leadping automation workflow action."
          },
          "statusDisplay": {
            "type": "string",
            "description": "Human-readable status display for this Leadping automation workflow action."
          },
          "scheduledAt": {
            "type": "string",
            "description": "Date and time when the automation workflow action was scheduled.",
            "format": "date-time",
            "nullable": true
          },
          "startedAt": {
            "type": "string",
            "description": "Date and time when the automation workflow action started.",
            "format": "date-time",
            "nullable": true
          },
          "completedAt": {
            "type": "string",
            "description": "Date and time when the automation workflow action completed.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "Date and time when the automation workflow action failed.",
            "format": "date-time",
            "nullable": true
          },
          "skippedAt": {
            "type": "string",
            "description": "Date and time when the workflow action was skipped.",
            "format": "date-time",
            "nullable": true
          },
          "retryCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of retry records represented by this Leadping automation workflow action.",
            "format": "int32"
          },
          "nextRetryAt": {
            "type": "string",
            "description": "Date and time when the next retry is scheduled.",
            "format": "date-time",
            "nullable": true
          },
          "userSummary": {
            "type": "string",
            "description": "Human-readable user summary for this Leadping automation workflow action.",
            "nullable": true
          },
          "safeReason": {
            "type": "string",
            "description": "Safe reason associated with this Leadping automation workflow action.",
            "nullable": true
          },
          "failureCode": {
            "type": "string",
            "description": "Reason or diagnostic code that explains the current outcome for this Leadping automation workflow action.",
            "nullable": true
          }
        },
        "description": "User-safe action status returned for lead automation workflow visibility."
      },
      "AutomationWorkflowEventResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for the automation workflow event."
          },
          "stepId": {
            "type": "string",
            "description": "Unique identifier of the step associated with this Leadping automation workflow event.",
            "nullable": true
          },
          "actionId": {
            "type": "string",
            "description": "Unique identifier of the action associated with this Leadping automation workflow event.",
            "nullable": true
          },
          "eventType": {
            "type": "string",
            "description": "Event type classification for this Leadping automation workflow event."
          },
          "status": {
            "type": "string",
            "description": "Current status for this Leadping automation workflow event."
          },
          "statusDisplay": {
            "type": "string",
            "description": "Human-readable status display for this Leadping automation workflow event."
          },
          "summary": {
            "type": "string",
            "description": "Human-readable summary for this Leadping automation workflow event."
          },
          "reasonCode": {
            "type": "string",
            "description": "Reason or diagnostic code that explains the current outcome for this Leadping automation workflow event.",
            "nullable": true
          },
          "occurredAt": {
            "type": "string",
            "description": "Date and time when the automation workflow event event occurred.",
            "format": "date-time"
          }
        },
        "description": "User-safe workflow history event returned for lead automation status."
      },
      "AutomationWorkflowRunResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for the automation workflow run."
          },
          "businessId": {
            "type": "string",
            "description": "Unique identifier of the business associated with this Leadping automation workflow run.",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "description": "Unique identifier of the lead associated with this Leadping automation workflow run.",
            "nullable": true
          },
          "automation": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this automation.",
            "nullable": true
          },
          "triggerType": {
            "type": "string",
            "description": "Trigger type classification for this Leadping automation workflow run.",
            "nullable": true
          },
          "triggerDisplay": {
            "type": "string",
            "description": "Human-readable trigger display for this Leadping automation workflow run.",
            "nullable": true
          },
          "status": {
            "type": "string",
            "description": "Current status for this Leadping automation workflow run."
          },
          "statusDisplay": {
            "type": "string",
            "description": "Human-readable status display for this Leadping automation workflow run."
          },
          "currentStep": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this currentStep.",
            "nullable": true
          },
          "currentStepOrder": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Current step order associated with this Leadping automation workflow run.",
            "format": "int32",
            "nullable": true
          },
          "nextExecutionAt": {
            "type": "string",
            "description": "Date and time when the next execution is scheduled.",
            "format": "date-time",
            "nullable": true
          },
          "lastExecutionAt": {
            "type": "string",
            "description": "Date and time of the most recent execution for this Leadping automation workflow run.",
            "format": "date-time",
            "nullable": true
          },
          "startedAt": {
            "type": "string",
            "description": "Date and time when the automation workflow run started.",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time when the automation workflow run was last updated.",
            "format": "date-time"
          },
          "completedAt": {
            "type": "string",
            "description": "Date and time when the automation workflow run completed.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "Date and time when the automation workflow run failed.",
            "format": "date-time",
            "nullable": true
          },
          "cancelledAt": {
            "type": "string",
            "description": "Date and time when the automation workflow run was cancelled.",
            "format": "date-time",
            "nullable": true
          },
          "retryCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of retry records represented by this Leadping automation workflow run.",
            "format": "int32"
          },
          "maxRetryCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of max retry records represented by this Leadping automation workflow run.",
            "format": "int32"
          },
          "nextRetryAt": {
            "type": "string",
            "description": "Date and time when the next retry is scheduled.",
            "format": "date-time",
            "nullable": true
          },
          "lastErrorCode": {
            "type": "string",
            "description": "Reason or diagnostic code that explains the current outcome for this Leadping automation workflow run.",
            "nullable": true
          },
          "lastErrorMessage": {
            "type": "string",
            "description": "Human-readable last error message for this Leadping automation workflow run.",
            "nullable": true
          },
          "skipReasonCode": {
            "type": "string",
            "description": "Reason or diagnostic code that explains the current outcome for this Leadping automation workflow run.",
            "nullable": true
          },
          "skipReasonDisplay": {
            "type": "string",
            "description": "Human-readable skip reason display for this Leadping automation workflow run.",
            "nullable": true
          },
          "lastActionSummary": {
            "type": "string",
            "description": "Human-readable last action summary for this Leadping automation workflow run.",
            "nullable": true
          },
          "actions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationWorkflowActionResponse"
                }
              ],
              "description": "User-safe action status returned for lead automation workflow visibility."
            },
            "description": "Collection of actions included with this Leadping automation workflow run."
          },
          "events": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationWorkflowEventResponse"
                }
              ],
              "description": "User-safe workflow history event returned for lead automation status."
            },
            "description": "Collection of events included with this Leadping automation workflow run."
          }
        },
        "description": "User-safe automation workflow run status returned for a lead."
      },
      "AutomationWorkflowStatusResponse": {
        "type": "object",
        "properties": {
          "leadId": {
            "type": "string",
            "description": "Unique identifier of the lead associated with this Leadping automation workflow status."
          },
          "runs": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationWorkflowRunResponse"
                }
              ],
              "description": "User-safe automation workflow run status returned for a lead."
            },
            "description": "Collection of runs included with this Leadping automation workflow status."
          }
        },
        "description": "Automation workflow status collection for a lead."
      },
      "BillableUnit": {
        "enum": [
          "sms_segment",
          "mms_message",
          "email_message",
          "voice_minute",
          "phone_number_month",
          "warmup_sms_segment",
          "warmup_voice_minute",
          "website_setup",
          "domain_registration",
          "10dlc_application",
          "connection_action",
          "automation_run"
        ],
        "type": "string",
        "description": "Defines the supported Billable Unit values."
      },
      "BillingPlan": {
        "enum": [
          "Annual",
          "Monthly"
        ],
        "type": "string",
        "description": "Defines the supported Billing Plan values."
      },
      "BusinessActivationState": {
        "type": "object",
        "properties": {
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerActivationStatus"
              }
            ],
            "description": "The current status for this business activation state."
          },
          "onboardingStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActivationOnboardingStatus"
              }
            ],
            "description": "The current onboarding status for this business activation state."
          },
          "paymentStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActivationPaymentStatus"
              }
            ],
            "description": "The current payment status for this business activation state."
          },
          "billingSubscriptionStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActivationSubscriptionStatus"
              }
            ],
            "description": "The current billing subscription status for this business activation state."
          },
          "launchReviewStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActivationLaunchReviewStatus"
              }
            ],
            "description": "The current launch review status for this business activation state."
          },
          "controlledLaunch": {
            "type": "boolean",
            "description": "Whether controlled launch applies to this business activation state."
          },
          "telephonyStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ActivationTelephonyStatus"
              }
            ],
            "description": "The current telephony status for this business activation state."
          },
          "websiteStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WebsiteLifecycleStatus"
              }
            ],
            "description": "The current website status for this business activation state."
          },
          "tenDlcStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TenDlcApplicationStatus"
              }
            ],
            "description": "The current 10DLC status for this business activation state."
          },
          "customerFacingStatus": {
            "type": "string",
            "description": "The current customer facing status for this business activation state."
          },
          "paymentMethodConfirmedAt": {
            "type": "string",
            "description": "The date and time for the payment method confirmed at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "subscriptionPendingAt": {
            "type": "string",
            "description": "The date and time for the subscription pending at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "subscriptionActiveAt": {
            "type": "string",
            "description": "The date and time for the subscription active at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "launchReviewRequestedAt": {
            "type": "string",
            "description": "The date and time for the launch review requested at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "launchApprovedAt": {
            "type": "string",
            "description": "The date and time for the launch approved at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "telephonyProvisioningStartedAt": {
            "type": "string",
            "description": "The date and time for the telephony provisioning started at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "telephonyPartiallyProvisionedAt": {
            "type": "string",
            "description": "The date and time for the telephony partially provisioned at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "telephonyReadyAt": {
            "type": "string",
            "description": "The date and time for the telephony ready at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "The date and time for the failed at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "activatedAt": {
            "type": "string",
            "description": "The date and time for the activated at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "industry": {
            "type": "string",
            "description": "The industry value for this business activation state.",
            "nullable": true
          },
          "businessDescription": {
            "type": "string",
            "description": "The business description value for this business activation state.",
            "nullable": true
          },
          "targetAudience": {
            "type": "string",
            "description": "The target audience value for this business activation state.",
            "nullable": true
          },
          "offer": {
            "type": "string",
            "description": "The offer value for this business activation state.",
            "nullable": true
          },
          "websiteNeeds": {
            "type": "string",
            "description": "The website needs value for this business activation state.",
            "nullable": true
          },
          "serviceArea": {
            "type": "string",
            "description": "The service area value for this business activation state.",
            "nullable": true
          },
          "complianceNotes": {
            "type": "string",
            "description": "The compliance notes value for this business activation state.",
            "nullable": true
          },
          "domainOptions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/ActivationDomainOption"
                }
              ],
              "description": "API DTO containing activation domain option data used by Leadping API contracts."
            },
            "description": "The domain options included with this business activation state."
          },
          "selectedDomain": {
            "type": "string",
            "description": "The selected domain value for this business activation state.",
            "nullable": true
          },
          "domainApprovedAt": {
            "type": "string",
            "description": "The date and time for the domain approved at value on this business activation state.",
            "format": "date-time",
            "nullable": true
          },
          "websiteUrl": {
            "type": "string",
            "description": "The URL associated with this business activation state.",
            "nullable": true
          },
          "tenDlcDraft": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/TenDlcApplicationDraft"
              }
            ],
            "description": "The 10DLC draft value for this business activation state.",
            "nullable": true
          },
          "events": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/ActivationTimelineEvent"
                }
              ],
              "description": "API DTO containing activation timeline event data used by Leadping API contracts."
            },
            "description": "The events included with this business activation state."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this business activation state.",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time for the updated at value on this business activation state.",
            "format": "date-time"
          }
        },
        "description": "API DTO containing business activation state data used by Leadping API contracts."
      },
      "BusinessBillingState": {
        "type": "object",
        "properties": {
          "hasStripeCustomer": {
            "type": "boolean",
            "description": "Indicates whether the business has a Stripe customer account."
          },
          "hasPaymentMethod": {
            "type": "boolean",
            "description": "Indicates whether the business has a saved default payment method."
          },
          "phoneNumberQuantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Gets or sets the number of phone numbers included in the business subscription.",
            "format": "int64",
            "nullable": true
          },
          "businessUserQuantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Gets or sets the number of user licenses included in the business subscription.",
            "format": "int64",
            "nullable": true
          },
          "businessUserAssignedQuantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Gets or sets the number of user licenses currently assigned by the business.",
            "format": "int64",
            "nullable": true
          },
          "cancelAt": {
            "type": "string",
            "description": "Gets or sets when the active subscription is scheduled to cancel.",
            "format": "date-time",
            "nullable": true
          },
          "dunning": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessDunningInfo"
              }
            ],
            "description": "Gets or sets the customer-safe payment recovery state for the business.",
            "nullable": true
          },
          "lastSubscriptionEventAt": {
            "type": "string",
            "description": "Gets or sets when Leadping last processed a subscription event for the business.",
            "format": "date-time",
            "nullable": true
          },
          "lastPaymentMethodEventAt": {
            "type": "string",
            "description": "Gets or sets when Leadping last processed a payment-method event for the business.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Customer-safe billing state for a Leadping business."
      },
      "BusinessCompliancePolicy": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Whether this business compliance policy is enabled."
          },
          "allowedStates": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The allowed states included with this business compliance policy."
          },
          "allowedProducts": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The allowed products included with this business compliance policy."
          },
          "requireLeadState": {
            "type": "boolean",
            "description": "Whether this business compliance policy requires lead state."
          },
          "requireAgentLicenseState": {
            "type": "boolean",
            "description": "Whether this business compliance policy requires agent license state."
          },
          "requireProduct": {
            "type": "boolean",
            "description": "Whether this business compliance policy requires product."
          },
          "requireTrustedFormForAutomations": {
            "type": "boolean",
            "description": "Whether this business compliance policy requires TrustedForm for automations."
          },
          "requireSourceComplianceApproval": {
            "type": "boolean",
            "description": "Whether this business compliance policy requires source compliance approval."
          }
        },
        "description": "API DTO containing business compliance policy data used by Leadping API contracts."
      },
      "BusinessDunningInfo": {
        "type": "object",
        "properties": {
          "stage": {
            "type": "string",
            "description": "Current stage for this Leadping business dunning info.",
            "nullable": true
          },
          "paymentFailedAt": {
            "type": "string",
            "description": "Date and time when this Leadping business dunning info was payment failed.",
            "format": "date-time",
            "nullable": true
          },
          "lastFailedInvoiceStatus": {
            "type": "string",
            "description": "Current last failed invoice status for this Leadping business dunning info.",
            "nullable": true
          },
          "retryAttemptCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of retry attempt records represented by this Leadping business dunning info.",
            "format": "int32"
          },
          "nextRetryAt": {
            "type": "string",
            "description": "Date and time when the next retry is scheduled.",
            "format": "date-time",
            "nullable": true
          },
          "gracePeriodEndsAt": {
            "type": "string",
            "description": "Date and time when this Leadping business dunning info was grace period ends.",
            "format": "date-time",
            "nullable": true
          },
          "outboundRestrictedAt": {
            "type": "string",
            "description": "Date and time when this Leadping business dunning info was outbound restricted.",
            "format": "date-time",
            "nullable": true
          },
          "outboundSuspendedAt": {
            "type": "string",
            "description": "Date and time when this Leadping business dunning info was outbound suspended.",
            "format": "date-time",
            "nullable": true
          },
          "finalCancellationAt": {
            "type": "string",
            "description": "Date and time when this Leadping business dunning info was final cancellation.",
            "format": "date-time",
            "nullable": true
          },
          "lastUpdatedAt": {
            "type": "string",
            "description": "Date and time when this Leadping business dunning info was last updated.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Dunning state recorded after a failed recurring payment."
      },
      "BusinessInvitationRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The email address associated with this business invitation."
          },
          "role": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessUserRole"
              }
            ],
            "description": "The role value for this business invitation."
          }
        },
        "description": "Request payload for business invitation."
      },
      "BusinessInvitationResponse": {
        "type": "object",
        "properties": {
          "safeMessage": {
            "type": "string",
            "description": "The safe message value for this business invitation.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The unique ID for this business invitation."
          },
          "business": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this business."
          },
          "email": {
            "type": "string",
            "description": "The email address associated with this business invitation."
          },
          "role": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessUserRole"
              }
            ],
            "description": "The role value for this business invitation."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessInvitationStatus"
              }
            ],
            "description": "The current status for this business invitation."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this business invitation.",
            "format": "date-time"
          },
          "expiresAt": {
            "type": "string",
            "description": "The date and time for the expires at value on this business invitation.",
            "format": "date-time"
          },
          "sentAt": {
            "type": "string",
            "description": "The date and time for the sent at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "resentAt": {
            "type": "string",
            "description": "The date and time for the resent at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "acceptedAt": {
            "type": "string",
            "description": "The date and time for the accepted at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "revokedAt": {
            "type": "string",
            "description": "The date and time for the revoked at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "sendFailureReason": {
            "type": "string",
            "description": "The human-readable send failure reason explaining this business invitation.",
            "nullable": true
          },
          "licenseBillingStatus": {
            "type": "string",
            "description": "The billing status for the paid license created by this invitation.",
            "nullable": true
          },
          "licenseQuantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The quantity on the shared business user license subscription item after this change.",
            "format": "int64",
            "nullable": true
          },
          "licenseRenewalDate": {
            "type": "string",
            "description": "The renewal date used for proration of this license.",
            "format": "date-time",
            "nullable": true
          },
          "licenseActivatedAt": {
            "type": "string",
            "description": "The date and time this invitation's paid license was created.",
            "format": "date-time",
            "nullable": true
          },
          "licenseReleasedAt": {
            "type": "string",
            "description": "The date and time this invitation's paid license was released.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API response containing business invitation data returned to callers."
      },
      "BusinessInvitationStatus": {
        "enum": [
          "Pending",
          "Accepted",
          "Expired",
          "Revoked",
          "Resent",
          "Failed to send"
        ],
        "type": "string",
        "description": "Defines the supported Business Invitation Status values."
      },
      "BusinessInvitationTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this business invitation."
          },
          "business": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this business."
          },
          "email": {
            "type": "string",
            "description": "The email address associated with this business invitation."
          },
          "role": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessUserRole"
              }
            ],
            "description": "The role value for this business invitation."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessInvitationStatus"
              }
            ],
            "description": "The current status for this business invitation."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this business invitation.",
            "format": "date-time"
          },
          "expiresAt": {
            "type": "string",
            "description": "The date and time for the expires at value on this business invitation.",
            "format": "date-time"
          },
          "sentAt": {
            "type": "string",
            "description": "The date and time for the sent at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "resentAt": {
            "type": "string",
            "description": "The date and time for the resent at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "acceptedAt": {
            "type": "string",
            "description": "The date and time for the accepted at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "revokedAt": {
            "type": "string",
            "description": "The date and time for the revoked at value on this business invitation.",
            "format": "date-time",
            "nullable": true
          },
          "sendFailureReason": {
            "type": "string",
            "description": "The human-readable send failure reason explaining this business invitation.",
            "nullable": true
          },
          "licenseBillingStatus": {
            "type": "string",
            "description": "The billing status for the paid license created by this invitation.",
            "nullable": true
          },
          "licenseQuantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The quantity on the shared business user license subscription item after this change.",
            "format": "int64",
            "nullable": true
          },
          "licenseRenewalDate": {
            "type": "string",
            "description": "The renewal date used for proration of this license.",
            "format": "date-time",
            "nullable": true
          },
          "licenseActivatedAt": {
            "type": "string",
            "description": "The date and time this invitation's paid license was created.",
            "format": "date-time",
            "nullable": true
          },
          "licenseReleasedAt": {
            "type": "string",
            "description": "The date and time this invitation's paid license was released.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API DTO containing business invitation data used by Leadping API contracts."
      },
      "BusinessRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "secondaryName": {
            "type": "string",
            "description": "Alternate business name or DBA shown in Leadping.",
            "nullable": true
          },
          "status": {
            "enum": [
              "SettingUp",
              "SetupCompleted",
              "Active"
            ],
            "type": "string",
            "description": "Defines the supported Business Status values.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this business profile request is active and available in the Leadping API.",
            "nullable": true
          },
          "autoRefillEnabled": {
            "type": "boolean",
            "description": "Indicates whether automatic wallet refill is enabled for the business.",
            "nullable": true
          },
          "autoRefillAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Wallet refill amount charged when automatic refill is triggered.",
            "format": "double",
            "nullable": true
          },
          "autoRefillTrigger": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Wallet balance threshold that triggers automatic refill.",
            "format": "double",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "Phone details for the lead, user, or business represented by this business profile request.",
            "nullable": true
          },
          "address": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/StreetAddress"
              }
            ],
            "description": "Postal address for the business, lead, or contact represented by this business profile request.",
            "nullable": true
          },
          "billingName": {
            "type": "string",
            "description": "Name used for invoices, receipts, and payment processor billing records.",
            "nullable": true
          },
          "billingAddress": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/StreetAddress"
              }
            ],
            "description": "Postal address used for invoices, receipts, and payment processor billing records.",
            "nullable": true
          },
          "website": {
            "type": "string",
            "description": "Business website URL used for compliance, brand review, and lead attribution.",
            "nullable": true
          },
          "vertical": {
            "type": "string",
            "description": "Industry vertical used for lead routing, compliance review, and reporting.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this business profile request to API users.",
            "nullable": true
          },
          "ein": {
            "type": "string",
            "description": "Employer Identification Number used for business and 10DLC verification.",
            "nullable": true
          },
          "isYoungerThan90": {
            "type": "boolean",
            "description": "Indicates whether the business serves customers younger than 90, for compliance and underwriting context.",
            "nullable": true
          },
          "einDocument": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNameValue"
              }
            ],
            "description": "Uploaded EIN document reference used for business verification.",
            "nullable": true
          },
          "phones": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNameValue"
                }
              ],
              "description": "A minimal Record type with an Id (string), Name (string), nullable Value (string?) and maximum JSON compatibility"
            },
            "description": "Phone numbers assigned to this business.",
            "nullable": true
          },
          "compliancePolicy": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessCompliancePolicy"
              }
            ],
            "description": "Compliance policy configuration for the business.",
            "nullable": true
          },
          "name": {
            "maxLength": 255,
            "minLength": 0,
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity, when updating an existing entity.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API business profile request, including the fields clients can send."
      },
      "BusinessResponse": {
        "type": "object",
        "properties": {
          "secondaryName": {
            "type": "string",
            "description": "Alternate business name or DBA shown in Leadping.",
            "nullable": true
          },
          "user": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary connected to this business profile response.",
            "nullable": true
          },
          "accountBalance": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Current wallet balance available to the business.",
            "format": "double"
          },
          "billingPlan": {
            "enum": [
              "Annual",
              "Monthly"
            ],
            "type": "string",
            "description": "Defines the supported Billing Plan values.",
            "nullable": true
          },
          "subscriptionStatus": {
            "enum": [
              "Pending",
              "Active",
              "Overdue",
              "Canceled"
            ],
            "type": "string",
            "description": "Defines the supported Subscription Status values.",
            "nullable": true
          },
          "billingState": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessBillingState"
              }
            ],
            "description": "Customer-safe billing state for this business.",
            "nullable": true
          },
          "autoRefillEnabled": {
            "type": "boolean",
            "description": "Indicates whether automatic wallet refill is enabled for the business."
          },
          "autoRefillAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Wallet refill amount charged when automatic refill is triggered.",
            "format": "double",
            "nullable": true
          },
          "autoRefillTrigger": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Wallet balance threshold that triggers automatic refill.",
            "format": "double",
            "nullable": true
          },
          "status": {
            "enum": [
              "SettingUp",
              "SetupCompleted",
              "Active"
            ],
            "type": "string",
            "description": "Defines the supported Business Status values.",
            "nullable": true
          },
          "setupStatus": {
            "enum": [
              "Personal",
              "Business",
              "Details",
              "Compliance",
              "Phone",
              "Plan",
              "Billing",
              "Review",
              "Complete"
            ],
            "type": "string",
            "description": "Defines the supported User Setup Status values.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this business profile response is active and available in the Leadping API."
          },
          "phone": {
            "type": "string",
            "description": "Phone details for the lead, user, or business represented by this business profile response.",
            "nullable": true
          },
          "website": {
            "type": "string",
            "description": "Business website URL used for compliance, brand review, and lead attribution.",
            "nullable": true
          },
          "address": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/StreetAddress"
              }
            ],
            "description": "Postal address for the business, lead, or contact represented by this business profile response.",
            "nullable": true
          },
          "billingName": {
            "type": "string",
            "description": "Name used for invoices, receipts, and payment processor billing records.",
            "nullable": true
          },
          "billingAddress": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/StreetAddress"
              }
            ],
            "description": "Postal address used for invoices, receipts, and payment processor billing records.",
            "nullable": true
          },
          "vertical": {
            "type": "string",
            "description": "Industry vertical used for lead routing, compliance review, and reporting.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this business profile response to API users.",
            "nullable": true
          },
          "ein": {
            "type": "string",
            "description": "Employer Identification Number used for business and 10DLC verification.",
            "nullable": true
          },
          "einDocument": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNameValue"
              }
            ],
            "description": "Uploaded EIN document reference used for business verification.",
            "nullable": true
          },
          "domain": {
            "type": "string",
            "description": "Domain name connected to the business website or activation workflow.",
            "nullable": true
          },
          "phones": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/IdNameValue"
                }
              ],
              "description": "A minimal Record type with an Id (string), Name (string), nullable Value (string?) and maximum JSON compatibility"
            },
            "description": "Phone numbers assigned to this business.",
            "nullable": true
          },
          "site": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "Leadping website record connected to this business.",
            "nullable": true
          },
          "setupStep": {
            "enum": [
              "DomainFinding",
              "DomainOptionsFound",
              "SiteGenerating",
              "SiteGenerated",
              "BrandSubmitted",
              "BrandApproved",
              "CampaignSubmitted",
              "CampaignApproved",
              "CarrierReviewing",
              "TenDlcComplete",
              "Complete"
            ],
            "type": "string",
            "description": "Defines the supported Business Setup Step values.",
            "nullable": true
          },
          "activation": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessActivationState"
              }
            ],
            "description": "Business activation state covering site, billing, compliance, and telephony readiness.",
            "nullable": true
          },
          "compliancePolicy": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessCompliancePolicy"
              }
            ],
            "description": "Compliance policy configuration for the business.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API business profile response returned to authenticated clients."
      },
      "BusinessSetupStep": {
        "enum": [
          "DomainFinding",
          "DomainOptionsFound",
          "SiteGenerating",
          "SiteGenerated",
          "BrandSubmitted",
          "BrandApproved",
          "CampaignSubmitted",
          "CampaignApproved",
          "CarrierReviewing",
          "TenDlcComplete",
          "Complete"
        ],
        "type": "string",
        "description": "Defines the supported Business Setup Step values."
      },
      "BusinessStatus": {
        "enum": [
          "SettingUp",
          "SetupCompleted",
          "Active"
        ],
        "type": "string",
        "description": "Defines the supported Business Status values."
      },
      "BusinessSwitchOption": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this business switch option."
          },
          "name": {
            "type": "string",
            "description": "The human-readable name shown for this business switch option."
          },
          "role": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessUserRole"
              }
            ],
            "description": "The role value for this business switch option."
          },
          "isCurrent": {
            "type": "boolean",
            "description": "Whether this business switch option is current."
          },
          "lastUsedAt": {
            "type": "string",
            "description": "The date and time for the last used at value on this business switch option.",
            "format": "date-time",
            "nullable": true
          },
          "businessStatus": {
            "enum": [
              "SettingUp",
              "SetupCompleted",
              "Active"
            ],
            "type": "string",
            "description": "Defines the supported Business Status values.",
            "nullable": true
          },
          "activationStatus": {
            "enum": [
              "DraftOnboarding",
              "PaymentMethodPending",
              "PaymentMethodConfirmed",
              "SubscriptionPending",
              "SubscriptionReceived",
              "SubscriptionActive",
              "LaunchReviewPending",
              "TelephonyProvisioningPending",
              "TelephonyPartiallyProvisioned",
              "TelephonyReady",
              "AwaitingReview",
              "DomainSelection",
              "WebsiteSetup",
              "ComplianceRegistration",
              "ReadyForApproval",
              "Active",
              "Failed",
              "Blocked",
              "BlockedRequiresOperatorAction",
              "ManuallyBypassed"
            ],
            "type": "string",
            "description": "Defines the supported Customer Activation Status values.",
            "nullable": true
          },
          "needsAdminReview": {
            "type": "boolean",
            "description": "Whether needs admin review applies to this business switch option."
          },
          "activationSummary": {
            "type": "string",
            "description": "The activation summary value for this business switch option.",
            "nullable": true
          },
          "hasPaymentMethod": {
            "type": "boolean",
            "description": "Whether the business has a default billing payment method."
          },
          "readyForCustomerTraffic": {
            "type": "boolean",
            "description": "Whether ready for customer traffic applies to this business switch option."
          }
        },
        "description": "API DTO containing business switch option data used by Leadping API contracts."
      },
      "BusinessSwitchRequest": {
        "type": "object",
        "properties": {
          "businessId": {
            "type": "string",
            "description": "Business ID to switch into for the current Leadping session."
          }
        },
        "description": "Request schema for the Leadping API business switch request, including the fields clients can send."
      },
      "BusinessTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this business."
          },
          "name": {
            "type": "string",
            "description": "The human-readable name shown for this business."
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this business.",
            "nullable": true
          },
          "industry": {
            "type": "string",
            "description": "The industry value for this business.",
            "nullable": true
          },
          "userCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The user count for this business.",
            "format": "int32"
          },
          "accountBalance": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The account balance value for this business.",
            "format": "double",
            "nullable": true
          },
          "billingPlan": {
            "enum": [
              "Annual",
              "Monthly"
            ],
            "type": "string",
            "description": "Defines the supported Billing Plan values.",
            "nullable": true
          },
          "subscriptionStatus": {
            "enum": [
              "Pending",
              "Active",
              "Overdue",
              "Canceled"
            ],
            "type": "string",
            "description": "Defines the supported Subscription Status values.",
            "nullable": true
          },
          "lastSubscriptionEventAt": {
            "type": "string",
            "description": "Date and time when this Leadping business table row was last subscription event.",
            "format": "date-time",
            "nullable": true
          },
          "subscriptionCancelAt": {
            "type": "string",
            "description": "Date and time when this Leadping business table row was subscription cancel.",
            "format": "date-time",
            "nullable": true
          },
          "paymentFailedAt": {
            "type": "string",
            "description": "Date and time when this Leadping business table row was payment failed.",
            "format": "date-time",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "The phone number associated with this business."
          },
          "website": {
            "type": "string",
            "description": "The website URL associated with this business."
          },
          "status": {
            "enum": [
              "SettingUp",
              "SetupCompleted",
              "Active"
            ],
            "type": "string",
            "description": "Defines the supported Business Status values.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Whether this business is enabled."
          },
          "apiKeyPreview": {
            "type": "string",
            "description": "The masked API key preview owned by this business.",
            "nullable": true
          },
          "apiKeyIssuedAt": {
            "type": "string",
            "description": "The date and time this business API key was issued.",
            "format": "date-time",
            "nullable": true
          },
          "apiKeyFirstUsedAt": {
            "type": "string",
            "description": "The date and time this business API key was first used.",
            "format": "date-time",
            "nullable": true
          },
          "apiKeyLastUsedAt": {
            "type": "string",
            "description": "The date and time this business API key was last used.",
            "format": "date-time",
            "nullable": true
          },
          "apiKeyExpiresAt": {
            "type": "string",
            "description": "The date and time this business API key expires, or null when it has no expiration.",
            "format": "date-time",
            "nullable": true
          },
          "apiKeyTotalUses": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of tracked uses for this business API key.",
            "format": "int64"
          },
          "setupStep": {
            "enum": [
              "DomainFinding",
              "DomainOptionsFound",
              "SiteGenerating",
              "SiteGenerated",
              "BrandSubmitted",
              "BrandApproved",
              "CampaignSubmitted",
              "CampaignApproved",
              "CarrierReviewing",
              "TenDlcComplete",
              "Complete"
            ],
            "type": "string",
            "description": "Defines the supported Business Setup Step values.",
            "nullable": true
          },
          "activationStatus": {
            "enum": [
              "DraftOnboarding",
              "PaymentMethodPending",
              "PaymentMethodConfirmed",
              "SubscriptionPending",
              "SubscriptionReceived",
              "SubscriptionActive",
              "LaunchReviewPending",
              "TelephonyProvisioningPending",
              "TelephonyPartiallyProvisioned",
              "TelephonyReady",
              "AwaitingReview",
              "DomainSelection",
              "WebsiteSetup",
              "ComplianceRegistration",
              "ReadyForApproval",
              "Active",
              "Failed",
              "Blocked",
              "BlockedRequiresOperatorAction",
              "ManuallyBypassed"
            ],
            "type": "string",
            "description": "Defines the supported Customer Activation Status values.",
            "nullable": true
          },
          "websiteStatus": {
            "enum": [
              "NotStarted",
              "DomainSuggestionsPending",
              "DomainSelectionPending",
              "DomainPurchasePending",
              "DomainPurchased",
              "WebsiteGenerationQueued",
              "WebsiteGenerating",
              "WebsiteDeploymentQueued",
              "WebsiteDeploying",
              "WebsiteLive",
              "WebsiteFailed",
              "ManuallyBypassed"
            ],
            "type": "string",
            "description": "Defines the supported Website Lifecycle Status values.",
            "nullable": true
          },
          "tenDlcStatus": {
            "enum": [
              "NotStarted",
              "DraftGenerated",
              "DraftNeedsAdminReview",
              "ReadyToSubmit",
              "Submitted",
              "PendingTelnyxReview",
              "Approved",
              "Rejected",
              "NeedsChanges",
              "ResubmissionReady",
              "Failed"
            ],
            "type": "string",
            "description": "Defines the supported 10DLC Application Status values.",
            "nullable": true
          },
          "needsAdminReview": {
            "type": "boolean",
            "description": "Whether needs admin review applies to this business."
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time for the modified at value on this business.",
            "format": "date-time"
          }
        },
        "description": "API DTO containing business data used by Leadping API contracts."
      },
      "BusinessUserRequest": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "description": "User ID to add, update, or remove from the business.",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "Email address for the person represented by this business user request.",
            "nullable": true
          },
          "role": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessUserRole"
              }
            ],
            "description": "Business role assigned to the user."
          }
        },
        "description": "Request schema for the Leadping API business user request, including the fields clients can send."
      },
      "BusinessUserResponse": {
        "type": "object",
        "properties": {
          "business": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The business value for this business user."
          },
          "user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The user value for this business user."
          },
          "userEmail": {
            "type": "string",
            "description": "The user email value for this business user.",
            "nullable": true
          },
          "role": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessUserRole"
              }
            ],
            "description": "The role value for this business user."
          },
          "createdByUserId": {
            "type": "string",
            "description": "The created by user ID associated with this business user.",
            "nullable": true
          },
          "removedAt": {
            "type": "string",
            "description": "The date and time for the removed at value on this business user.",
            "format": "date-time",
            "nullable": true
          },
          "removedByUserId": {
            "type": "string",
            "description": "The removed by user ID associated with this business user.",
            "nullable": true
          },
          "lastUsedAt": {
            "type": "string",
            "description": "The date and time for the last used at value on this business user.",
            "format": "date-time",
            "nullable": true
          },
          "licenseBillingStatus": {
            "type": "string",
            "description": "The billing status for this user's business license.",
            "nullable": true
          },
          "licenseQuantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The quantity on the shared business user license item after this change.",
            "format": "int64",
            "nullable": true
          },
          "licenseRenewalDate": {
            "type": "string",
            "description": "The renewal date used for this user's license proration.",
            "format": "date-time",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API response containing business user data returned to callers."
      },
      "BusinessUserRole": {
        "enum": [
          "Owner",
          "Admin",
          "Agent"
        ],
        "type": "string",
        "description": "Defines the supported Business User Role values."
      },
      "BusinessUserTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this business user."
          },
          "user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this user."
          },
          "userEmail": {
            "type": "string",
            "description": "The user email value for this business user.",
            "nullable": true
          },
          "role": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessUserRole"
              }
            ],
            "description": "The role value for this business user."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this business user.",
            "format": "date-time"
          },
          "licenseBillingStatus": {
            "type": "string",
            "description": "The billing status for this user's business license.",
            "nullable": true
          },
          "licenseRenewalDate": {
            "type": "string",
            "description": "The renewal date used for this user's license proration.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API DTO containing business user data used by Leadping API contracts."
      },
      "CallEventTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this call event table row."
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID associated with this call event.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "Business ID associated with this call event.",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "description": "User ID associated with the person or agent who initiated this call event.",
            "nullable": true
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this call event table row to the Leadping inbox thread.",
            "nullable": true
          },
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call.",
            "nullable": true
          },
          "fromPhoneNumber": {
            "type": "string",
            "description": "Sender phone number used for this communication."
          },
          "toPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number used for this communication."
          },
          "callerId": {
            "type": "string",
            "description": "Caller ID phone number presented during the outbound call.",
            "nullable": true
          },
          "status": {
            "enum": [
              "scheduled",
              "queued",
              "initiated",
              "ringing",
              "in_progress",
              "active",
              "completed",
              "ended",
              "busy",
              "no_answer",
              "failed",
              "canceled",
              "missed",
              "transferred",
              "voicemail",
              "blocked_billing",
              "blocked_phone_number_status",
              "blocked_configuration",
              "blocked_permission",
              "configuration_required"
            ],
            "type": "string",
            "description": "Defines the supported Phone Call Status values.",
            "nullable": true
          },
          "statusReason": {
            "type": "string",
            "description": "Human-readable reason explaining the current status of this call event table row.",
            "nullable": true
          },
          "direction": {
            "type": "string",
            "description": "Communication direction for this call event table row, such as inbound or outbound."
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this call event table row was created.",
            "format": "date-time"
          },
          "answeredAt": {
            "type": "string",
            "description": "UTC timestamp when the call was answered.",
            "format": "date-time",
            "nullable": true
          },
          "endedAt": {
            "type": "string",
            "description": "UTC timestamp when the call ended.",
            "format": "date-time",
            "nullable": true
          },
          "duration": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Call duration or processing duration represented by this call event table row.",
            "format": "int32",
            "nullable": true
          },
          "billableSeconds": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Billable call duration in seconds.",
            "format": "int32",
            "nullable": true
          },
          "billableAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Monetary amount billed for this Leadping communication or transaction.",
            "format": "double",
            "nullable": true
          },
          "billingStatus": {
            "type": "string",
            "description": "Billing state for this communication, charge, or transaction.",
            "nullable": true
          },
          "recordingUrl": {
            "type": "string",
            "description": "URL for the call recording, when the provider makes one available.",
            "nullable": true
          },
          "user": {
            "type": "string",
            "description": "User summary connected to this call event table row."
          },
          "business": {
            "type": "string",
            "description": "Business summary connected to this call event table row."
          }
        },
        "description": "List item schema for Leadping API call event table row results shown in searchable tables."
      },
      "ChangeBillingPlanRequest": {
        "type": "object",
        "properties": {
          "billingPlan": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BillingPlan"
              }
            ],
            "description": "The billing plan value for this billing plan."
          },
          "userId": {
            "type": "string",
            "description": "The user ID associated with this billing plan.",
            "nullable": true
          }
        },
        "description": "Request payload for change billing plan."
      },
      "ComplianceUpdateRequest": {
        "type": "object",
        "properties": {
          "compliance": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserCompliance"
              }
            ],
            "description": "The compliance value for this compliance update.",
            "nullable": true
          },
          "source": {
            "type": "string",
            "description": "The source value for this compliance update.",
            "nullable": true
          }
        },
        "description": "Request payload for compliance update."
      },
      "ContactRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Display name for this contact form request in the Leadping API.",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "Email address for the person represented by this contact form request."
          },
          "message": {
            "type": "string",
            "description": "Message text supplied by the user or returned by the Leadping API for this contact form request."
          },
          "token": {
            "type": "string",
            "description": "Invitation or workflow token used to authorize this request."
          }
        },
        "description": "Request schema for the Leadping API contact form request, including the fields clients can send."
      },
      "ContactResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "Message text supplied by the user or returned by the Leadping API for this contact form response."
          }
        },
        "description": "Response schema for the Leadping API contact form response returned to authenticated clients."
      },
      "ConversationResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this conversation response."
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID associated with this inbox conversation."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the lead, user, or contact represented by this conversation response."
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the lead, user, or contact represented by this conversation response."
          },
          "lastSnippet": {
            "type": "string",
            "description": "Most recent message preview shown for the conversation.",
            "nullable": true
          },
          "lastEventAt": {
            "type": "string",
            "description": "UTC timestamp when the most recent conversation event occurred.",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "enum": [
              "needs_reply",
              "waiting",
              "failed",
              "open"
            ],
            "type": "string",
            "description": "Defines the customer-facing operational status for an inbox conversation.",
            "nullable": true
          },
          "statusReason": {
            "type": "string",
            "description": "Human-readable reason explaining the current status of this conversation response.",
            "nullable": true
          },
          "archivedAt": {
            "type": "string",
            "description": "UTC timestamp when this record was archived.",
            "format": "date-time",
            "nullable": true
          },
          "archiveReason": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9
            ],
            "type": "integer",
            "description": "Defines why a lead was removed from the active working pipeline.",
            "format": "int32",
            "nullable": true
          },
          "isArchived": {
            "type": "boolean",
            "description": "Indicates whether the Leadping conversation has been archived."
          },
          "currentDisposition": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CurrentDispositionSummary"
              }
            ],
            "description": "Current disposition summary that describes the lead outcome.",
            "nullable": true
          },
          "nextStep": {
            "type": "string",
            "description": "Recommended next step to move this conversation response forward.",
            "nullable": true
          },
          "isUnread": {
            "type": "boolean",
            "description": "Indicates whether the current user has unread activity in the conversation."
          },
          "phoneNumber": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNameValue"
              }
            ],
            "description": "Phone number used by this conversation response for calls, SMS, lookup, or routing.",
            "nullable": true
          },
          "leadPhoneNumber": {
            "type": "string",
            "description": "Lead's phone number used for conversation matching and outreach.",
            "nullable": true
          },
          "outboundPhoneNumberOverrideId": {
            "type": "string",
            "description": "Phone number ID manually chosen to override automatic outbound selection.",
            "nullable": true
          },
          "activeOutboundPhoneNumberId": {
            "type": "string",
            "description": "Phone number ID currently active for outbound delivery.",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API conversation response returned to authenticated clients."
      },
      "ConversationStatus": {
        "enum": [
          "needs_reply",
          "waiting",
          "failed",
          "open"
        ],
        "type": "string",
        "description": "Defines the customer-facing operational status for an inbox conversation."
      },
      "Coordinate": {
        "required": [
          "latitude",
          "longitude"
        ],
        "type": "object",
        "properties": {
          "latitude": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "description": "Latitude of the geographic coordinate in decimal degrees, from -90 through 90.",
            "format": "double"
          },
          "longitude": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?$",
            "description": "Longitude of the geographic coordinate in decimal degrees, from -180 through 180.",
            "format": "double"
          }
        },
        "description": "Latitude and longitude coordinate for this lead contact profile."
      },
      "CreateNoteRequest": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The text value for this note."
          }
        },
        "description": "Request payload for create note."
      },
      "CurrentDispositionSummary": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this current disposition summary.",
            "nullable": true
          },
          "category": {
            "enum": [
              "Open",
              "Qualified",
              "Converted",
              "Lost",
              "Invalid",
              "Duplicate"
            ],
            "type": "string",
            "description": "Controlled disposition categories used for reporting, automation, and analytics.",
            "nullable": true
          },
          "outcome": {
            "type": "string",
            "description": "Current disposition outcome assigned to the lead.",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "description": "Human-readable display name shown for this current disposition summary."
          },
          "changedAt": {
            "type": "string",
            "description": "UTC timestamp when the disposition last changed.",
            "format": "date-time",
            "nullable": true
          },
          "changedByUserId": {
            "type": "string",
            "description": "User ID of the person who last changed the disposition.",
            "nullable": true
          },
          "changedByAutomationId": {
            "type": "string",
            "description": "Automation ID that last changed the disposition.",
            "nullable": true
          },
          "source": {
            "enum": [
              "User",
              "AI",
              "Automation",
              "System",
              "API"
            ],
            "type": "string",
            "description": "Known sources that can change a lead's current disposition.",
            "nullable": true
          }
        },
        "description": "Summary schema for Leadping API current disposition summary data used in dashboards and reports."
      },
      "CustomerActivationHealth": {
        "type": "object",
        "properties": {
          "overallStatus": {
            "type": "string",
            "description": "Current overall status for this Leadping customer activation health."
          },
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CustomerActivationHealthItem"
                }
              ],
              "description": "Represents customer activation health item data exposed by Leadping analytics."
            },
            "description": "Collection of items included with this Leadping customer activation health."
          }
        },
        "description": "Represents customer activation health data exposed by Leadping analytics."
      },
      "CustomerActivationHealthItem": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "Key associated with this Leadping customer activation health item."
          },
          "label": {
            "type": "string",
            "description": "Human-readable label for this Leadping customer activation health item."
          },
          "status": {
            "type": "string",
            "description": "Current status for this Leadping customer activation health item."
          },
          "detail": {
            "type": "string",
            "description": "Human-readable detail for this Leadping customer activation health item."
          },
          "actionHref": {
            "type": "string",
            "description": "Relative URL for the recommended follow-up action.",
            "nullable": true
          }
        },
        "description": "Represents customer activation health item data exposed by Leadping analytics."
      },
      "CustomerActivationStatus": {
        "enum": [
          "DraftOnboarding",
          "PaymentMethodPending",
          "PaymentMethodConfirmed",
          "SubscriptionPending",
          "SubscriptionReceived",
          "SubscriptionActive",
          "LaunchReviewPending",
          "TelephonyProvisioningPending",
          "TelephonyPartiallyProvisioned",
          "TelephonyReady",
          "AwaitingReview",
          "DomainSelection",
          "WebsiteSetup",
          "ComplianceRegistration",
          "ReadyForApproval",
          "Active",
          "Failed",
          "Blocked",
          "BlockedRequiresOperatorAction",
          "ManuallyBypassed"
        ],
        "type": "string",
        "description": "Defines the supported Customer Activation Status values."
      },
      "CustomerAnalyticsResponse": {
        "type": "object",
        "properties": {
          "range": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AnalyticsDateRange"
              }
            ],
            "description": "Range associated with this Leadping customer analytics."
          },
          "summary": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerAnalyticsSummary"
              }
            ],
            "description": "Human-readable summary for this Leadping customer analytics."
          },
          "leadTrend": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerLeadTrend"
              }
            ],
            "description": "Lead trend associated with this Leadping customer analytics."
          },
          "responseMetrics": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerResponseMetrics"
              }
            ],
            "description": "Response metrics associated with this Leadping customer analytics."
          },
          "communicationUsage": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerCommunicationUsage"
              }
            ],
            "description": "Communication usage associated with this Leadping customer analytics."
          },
          "leadSources": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CustomerLeadSourceBreakdown"
                }
              ],
              "description": "Represents customer lead source breakdown data exposed by Leadping analytics."
            },
            "description": "Collection of lead sources included with this Leadping customer analytics."
          },
          "automationHealth": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerAutomationHealth"
              }
            ],
            "description": "Automation health associated with this Leadping customer analytics."
          },
          "activationHealth": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerActivationHealth"
              }
            ],
            "description": "Activation health associated with this Leadping customer analytics."
          },
          "needsAttention": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CustomerNeedsAttentionItem"
                }
              ],
              "description": "Represents customer needs attention item data exposed by Leadping analytics."
            },
            "description": "Date and time when this Leadping customer analytics was needs attention."
          },
          "generatedAt": {
            "type": "string",
            "description": "Date and time when this Leadping customer analytics was generated.",
            "format": "date-time"
          }
        },
        "description": "Response model containing customer analytics data returned by the Leadping API."
      },
      "CustomerAnalyticsSummary": {
        "type": "object",
        "properties": {
          "leads": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of leads represented by this Leadping customer analytics summary.",
            "format": "int32"
          },
          "leadsComparison": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AnalyticsComparison"
              }
            ],
            "description": "Date and time when this Leadping customer analytics summary was leads comparison."
          },
          "averageResponseMinutes": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Average time, in minutes, before a lead receives a response.",
            "format": "double",
            "nullable": true
          },
          "medianResponseMinutes": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Median response minutes measured in minutes.",
            "format": "double",
            "nullable": true
          },
          "respondedWithinFiveMinutesPercent": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Responded within five minutes percent expressed as a percentage.",
            "format": "double"
          },
          "missedLeads": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of missed leads represented by this Leadping customer analytics summary.",
            "format": "int32"
          },
          "unreadMessages": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of unread messages represented by this Leadping customer analytics summary.",
            "format": "int32"
          },
          "missedCalls": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of calls missed during the reporting period.",
            "format": "int32"
          },
          "smsSent": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages sent during the reporting period.",
            "format": "int32"
          },
          "smsReceived": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages received during the reporting period.",
            "format": "int32"
          },
          "callsPlaced": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of outbound calls placed during the reporting period.",
            "format": "int32"
          },
          "callsReceived": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of inbound calls received during the reporting period.",
            "format": "int32"
          },
          "callMinutes": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Total connected call duration, in minutes, during the reporting period.",
            "format": "double"
          },
          "usageSpend": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Usage spend represented by this Leadping customer analytics summary.",
            "format": "double"
          },
          "walletBalance": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Wallet balance represented by this Leadping customer analytics summary.",
            "format": "double"
          },
          "billingStatus": {
            "type": "string",
            "description": "Current billing status for this Leadping customer analytics summary."
          },
          "walletStatus": {
            "type": "string",
            "description": "Current wallet status for this Leadping customer analytics summary."
          }
        },
        "description": "Represents customer analytics summary data exposed by Leadping analytics."
      },
      "CustomerAutomationHealth": {
        "type": "object",
        "properties": {
          "automationCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of automation records represented by this Leadping customer automation health.",
            "format": "int32"
          },
          "enabledCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of enabled records represented by this Leadping customer automation health.",
            "format": "int32"
          },
          "executions": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of executions represented by this Leadping customer automation health.",
            "format": "int32"
          },
          "successCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of success records represented by this Leadping customer automation health.",
            "format": "int32"
          },
          "failureCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of failure records represented by this Leadping customer automation health.",
            "format": "int32"
          },
          "lastFailure": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomerFailingAutomation"
              }
            ],
            "description": "Last failure associated with this Leadping customer automation health.",
            "nullable": true
          },
          "failingAutomations": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CustomerFailingAutomation"
                }
              ],
              "description": "Represents customer failing automation data exposed by Leadping analytics."
            },
            "description": "Collection of failing automations included with this Leadping customer automation health."
          }
        },
        "description": "Represents customer automation health data exposed by Leadping analytics."
      },
      "CustomerCommunicationUsage": {
        "type": "object",
        "properties": {
          "smsSent": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages sent during the reporting period.",
            "format": "int32"
          },
          "smsReceived": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages received during the reporting period.",
            "format": "int32"
          },
          "failedOrBlockedSms": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages that failed or were blocked during the reporting period.",
            "format": "int32"
          },
          "callsPlaced": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of outbound calls placed during the reporting period.",
            "format": "int32"
          },
          "callsReceived": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of inbound calls received during the reporting period.",
            "format": "int32"
          },
          "answeredCalls": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of calls answered during the reporting period.",
            "format": "int32"
          },
          "missedCalls": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of calls missed during the reporting period.",
            "format": "int32"
          },
          "callMinutes": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Total connected call duration, in minutes, during the reporting period.",
            "format": "double"
          },
          "usageSpend": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Usage spend represented by this Leadping customer communication usage.",
            "format": "double"
          },
          "trend": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CustomerCommunicationUsagePoint"
                }
              ],
              "description": "Represents customer communication usage point data exposed by Leadping analytics."
            },
            "description": "Collection of trend included with this Leadping customer communication usage."
          }
        },
        "description": "Represents customer communication usage data exposed by Leadping analytics."
      },
      "CustomerCommunicationUsagePoint": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "string",
            "description": "Date and time when this Leadping customer communication usage point was start.",
            "format": "date-time"
          },
          "endAt": {
            "type": "string",
            "description": "Date and time when this Leadping customer communication usage point was end.",
            "format": "date-time"
          },
          "label": {
            "type": "string",
            "description": "Human-readable label for this Leadping customer communication usage point."
          },
          "smsSent": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages sent during the reporting period.",
            "format": "int32"
          },
          "smsReceived": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages received during the reporting period.",
            "format": "int32"
          },
          "calls": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of calls represented by this Leadping customer communication usage point.",
            "format": "int32"
          },
          "callMinutes": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Total connected call duration, in minutes, during the reporting period.",
            "format": "double"
          },
          "spend": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Spend represented by this Leadping customer communication usage point.",
            "format": "double"
          }
        },
        "description": "Represents customer communication usage point data exposed by Leadping analytics."
      },
      "CustomerFailingAutomation": {
        "type": "object",
        "properties": {
          "automationId": {
            "type": "string",
            "description": "Unique identifier of the automation associated with this Leadping customer failing automation.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Human-readable name of the customer failing automation."
          },
          "failedAt": {
            "type": "string",
            "description": "Date and time when the customer failing automation failed.",
            "format": "date-time",
            "nullable": true
          },
          "error": {
            "type": "string",
            "description": "Error associated with this Leadping customer failing automation.",
            "nullable": true
          }
        },
        "description": "Represents customer failing automation data exposed by Leadping analytics."
      },
      "CustomerLeadSourceBreakdown": {
        "type": "object",
        "properties": {
          "source": {
            "type": "string",
            "description": "Source classification for this Leadping customer lead source breakdown."
          },
          "leads": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of leads represented by this Leadping customer lead source breakdown.",
            "format": "int32"
          },
          "percent": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Percent expressed as a percentage.",
            "format": "double"
          }
        },
        "description": "Represents customer lead source breakdown data exposed by Leadping analytics."
      },
      "CustomerLeadTrend": {
        "type": "object",
        "properties": {
          "total": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of total records represented by this Leadping customer lead trend.",
            "format": "int32"
          },
          "comparison": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AnalyticsComparison"
              }
            ],
            "description": "Date and time when this Leadping customer lead trend was comparison."
          },
          "points": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AnalyticsTrendPointOfint"
                }
              ],
              "description": "Represents analytics trend point data exposed by Leadping analytics."
            },
            "description": "Collection of points included with this Leadping customer lead trend."
          }
        },
        "description": "Represents customer lead trend data exposed by Leadping analytics."
      },
      "CustomerNeedsAttentionItem": {
        "type": "object",
        "properties": {
          "severity": {
            "type": "string",
            "description": "Severity associated with this Leadping customer needs attention item."
          },
          "title": {
            "type": "string",
            "description": "Human-readable title for this Leadping customer needs attention item."
          },
          "detail": {
            "type": "string",
            "description": "Human-readable detail for this Leadping customer needs attention item."
          },
          "actionHref": {
            "type": "string",
            "description": "Relative URL for the recommended follow-up action.",
            "nullable": true
          },
          "actionText": {
            "type": "string",
            "description": "Action text associated with this Leadping customer needs attention item.",
            "nullable": true
          }
        },
        "description": "Represents customer needs attention item data exposed by Leadping analytics."
      },
      "CustomerResponseMetrics": {
        "type": "object",
        "properties": {
          "averageMinutes": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Average minutes measured in minutes.",
            "format": "double",
            "nullable": true
          },
          "medianMinutes": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Median minutes measured in minutes.",
            "format": "double",
            "nullable": true
          },
          "respondedWithinFiveMinutesPercent": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Responded within five minutes percent expressed as a percentage.",
            "format": "double"
          },
          "respondedLeads": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of responded leads represented by this Leadping customer response metrics.",
            "format": "int32"
          },
          "unrespondedLeads": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of unresponded leads represented by this Leadping customer response metrics.",
            "format": "int32"
          },
          "unreadMessages": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of unread messages represented by this Leadping customer response metrics.",
            "format": "int32"
          },
          "missedCalls": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of calls missed during the reporting period.",
            "format": "int32"
          },
          "averageMinutesTrend": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AnalyticsTrendPointOfdecimal"
                }
              ],
              "description": "Represents analytics trend point data exposed by Leadping analytics."
            },
            "description": "Collection of average minutes trend included with this Leadping customer response metrics."
          }
        },
        "description": "Represents customer response metrics data exposed by Leadping analytics."
      },
      "DispositionCategory": {
        "enum": [
          "Open",
          "Qualified",
          "Converted",
          "Lost",
          "Invalid",
          "Duplicate"
        ],
        "type": "string",
        "description": "Controlled disposition categories used for reporting, automation, and analytics."
      },
      "DispositionChangeSource": {
        "enum": [
          "User",
          "AI",
          "Automation",
          "System",
          "API"
        ],
        "type": "string",
        "description": "Known sources that can change a lead's current disposition."
      },
      "DispositionExportResponse": {
        "type": "object",
        "properties": {
          "fileName": {
            "type": "string",
            "description": "The file name value for this disposition export."
          },
          "contentType": {
            "type": "string",
            "description": "The content type classification for this disposition export."
          },
          "csv": {
            "type": "string",
            "description": "The csv value for this disposition export."
          },
          "rows": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/DispositionExportRow"
                }
              ],
              "description": "API response containing disposition export row data returned to callers."
            },
            "description": "The rows included with this disposition export."
          }
        },
        "description": "API response containing disposition export data returned to callers."
      },
      "DispositionExportRow": {
        "type": "object",
        "properties": {
          "leadId": {
            "type": "string",
            "description": "The lead ID associated with this disposition export row.",
            "nullable": true
          },
          "dispositionId": {
            "type": "string",
            "description": "The disposition ID associated with this disposition export row.",
            "nullable": true
          },
          "type": {
            "type": "string",
            "description": "The type classification for this disposition export row.",
            "nullable": true
          },
          "outcome": {
            "type": "string",
            "description": "The outcome value for this disposition export row.",
            "nullable": true
          },
          "category": {
            "enum": [
              "Open",
              "Qualified",
              "Converted",
              "Lost",
              "Invalid",
              "Duplicate"
            ],
            "type": "string",
            "description": "Controlled disposition categories used for reporting, automation, and analytics.",
            "nullable": true
          },
          "oldDispositionId": {
            "type": "string",
            "description": "Unique identifier of the old disposition associated with this Leadping disposition export row.",
            "nullable": true
          },
          "oldDispositionType": {
            "type": "string",
            "description": "Old disposition type classification for this Leadping disposition export row.",
            "nullable": true
          },
          "oldDispositionOutcome": {
            "type": "string",
            "description": "Old disposition outcome associated with this Leadping disposition export row.",
            "nullable": true
          },
          "newDispositionId": {
            "type": "string",
            "description": "Unique identifier of the new disposition associated with this Leadping disposition export row.",
            "nullable": true
          },
          "changeSource": {
            "enum": [
              "User",
              "AI",
              "Automation",
              "System",
              "API"
            ],
            "type": "string",
            "description": "Known sources that can change a lead's current disposition.",
            "nullable": true
          },
          "changedByUserId": {
            "type": "string",
            "description": "Unique identifier of the Leadping user who made the change.",
            "nullable": true
          },
          "changedByAutomationId": {
            "type": "string",
            "description": "Unique identifier of the automation that changed the disposition, when applicable.",
            "nullable": true
          },
          "changedAt": {
            "type": "string",
            "description": "Date and time when the disposition change occurred.",
            "format": "date-time",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "description": "Human-readable explanation for the current disposition export row outcome.",
            "nullable": true
          },
          "followUpStatus": {
            "type": "string",
            "description": "The current follow up status for this disposition export row.",
            "nullable": true
          },
          "callbackAt": {
            "type": "string",
            "description": "The date and time for the callback at value on this disposition export row.",
            "format": "date-time",
            "nullable": true
          },
          "taskDueAt": {
            "type": "string",
            "description": "The date and time for the task due at value on this disposition export row.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentStartAt": {
            "type": "string",
            "description": "The date and time for the appointment start at value on this disposition export row.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentEndAt": {
            "type": "string",
            "description": "The date and time for the appointment end at value on this disposition export row.",
            "format": "date-time",
            "nullable": true
          },
          "assignedToUserId": {
            "type": "string",
            "description": "The assigned to user ID associated with this disposition export row.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "The source ID associated with this disposition export row.",
            "nullable": true
          },
          "relatedCallEventId": {
            "type": "string",
            "description": "The related call event ID associated with this disposition export row.",
            "nullable": true
          },
          "isMissedCallFollowUp": {
            "type": "boolean",
            "description": "Whether this disposition export row is missed call follow up."
          },
          "notes": {
            "type": "string",
            "description": "The operator or customer notes recorded for this disposition export row.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this disposition export row.",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time for the updated at value on this disposition export row.",
            "format": "date-time"
          }
        },
        "description": "API response containing disposition export row data returned to callers."
      },
      "DispositionRequest": {
        "type": "object",
        "properties": {
          "leadId": {
            "type": "string",
            "description": "The lead ID associated with this disposition."
          },
          "type": {
            "type": "string",
            "description": "The type classification for this disposition."
          },
          "outcome": {
            "type": "string",
            "description": "The outcome value for this disposition."
          },
          "category": {
            "enum": [
              "Open",
              "Qualified",
              "Converted",
              "Lost",
              "Invalid",
              "Duplicate"
            ],
            "type": "string",
            "description": "Controlled disposition categories used for reporting, automation, and analytics.",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "description": "The operator or customer notes recorded for this disposition.",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "description": "The reason this disposition was changed.",
            "nullable": true
          },
          "changeSource": {
            "enum": [
              "User",
              "AI",
              "Automation",
              "System",
              "API"
            ],
            "type": "string",
            "description": "Known sources that can change a lead's current disposition.",
            "nullable": true
          },
          "changedByAutomationId": {
            "type": "string",
            "description": "The automation that changed this disposition, when applicable.",
            "nullable": true
          },
          "timestamp": {
            "type": "string",
            "description": "The date and time for the timestamp value on this disposition.",
            "format": "date-time"
          },
          "followUpStatus": {
            "type": "string",
            "description": "The current follow up status for this disposition.",
            "nullable": true
          },
          "callbackAt": {
            "type": "string",
            "description": "The date and time for the callback at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "taskDueAt": {
            "type": "string",
            "description": "The date and time for the task due at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentStartAt": {
            "type": "string",
            "description": "The date and time for the appointment start at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentEndAt": {
            "type": "string",
            "description": "The date and time for the appointment end at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentNotes": {
            "type": "string",
            "description": "The appointment notes value for this disposition.",
            "nullable": true
          },
          "assignedToUserId": {
            "type": "string",
            "description": "The assigned to user ID associated with this disposition.",
            "nullable": true
          },
          "relatedCallEventId": {
            "type": "string",
            "description": "The related call event ID associated with this disposition.",
            "nullable": true
          },
          "isMissedCallFollowUp": {
            "type": "boolean",
            "description": "Whether this disposition is missed call follow up."
          },
          "sourceId": {
            "type": "string",
            "description": "The source ID associated with this disposition.",
            "nullable": true
          }
        },
        "description": "Request model for creating or updating a disposition."
      },
      "DispositionResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this disposition."
          },
          "leadId": {
            "type": "string",
            "description": "The lead ID associated with this disposition."
          },
          "type": {
            "type": "string",
            "description": "The type classification for this disposition."
          },
          "outcome": {
            "type": "string",
            "description": "The outcome value for this disposition."
          },
          "category": {
            "enum": [
              "Open",
              "Qualified",
              "Converted",
              "Lost",
              "Invalid",
              "Duplicate"
            ],
            "type": "string",
            "description": "Controlled disposition categories used for reporting, automation, and analytics.",
            "nullable": true
          },
          "oldDispositionId": {
            "type": "string",
            "description": "Unique identifier of the old disposition associated with this Leadping disposition.",
            "nullable": true
          },
          "oldDispositionType": {
            "type": "string",
            "description": "Old disposition type classification for this Leadping disposition.",
            "nullable": true
          },
          "oldDispositionOutcome": {
            "type": "string",
            "description": "Old disposition outcome associated with this Leadping disposition.",
            "nullable": true
          },
          "newDispositionId": {
            "type": "string",
            "description": "Unique identifier of the new disposition associated with this Leadping disposition.",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "description": "The operator or customer notes recorded for this disposition."
          },
          "reason": {
            "type": "string",
            "description": "The reason this disposition was changed.",
            "nullable": true
          },
          "changedByUserId": {
            "type": "string",
            "description": "Unique identifier of the Leadping user who made the change.",
            "nullable": true
          },
          "changedByAutomationId": {
            "type": "string",
            "description": "Unique identifier of the automation that changed the disposition, when applicable.",
            "nullable": true
          },
          "changedAt": {
            "type": "string",
            "description": "Date and time when the disposition change occurred.",
            "format": "date-time",
            "nullable": true
          },
          "changeSource": {
            "enum": [
              "User",
              "AI",
              "Automation",
              "System",
              "API"
            ],
            "type": "string",
            "description": "Known sources that can change a lead's current disposition.",
            "nullable": true
          },
          "timestamp": {
            "type": "string",
            "description": "The date and time for the timestamp value on this disposition.",
            "format": "date-time"
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this disposition.",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time for the updated at value on this disposition.",
            "format": "date-time"
          },
          "followUpStatus": {
            "type": "string",
            "description": "The current follow up status for this disposition.",
            "nullable": true
          },
          "callbackAt": {
            "type": "string",
            "description": "The date and time for the callback at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "taskDueAt": {
            "type": "string",
            "description": "The date and time for the task due at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentStartAt": {
            "type": "string",
            "description": "The date and time for the appointment start at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentEndAt": {
            "type": "string",
            "description": "The date and time for the appointment end at value on this disposition.",
            "format": "date-time",
            "nullable": true
          },
          "appointmentNotes": {
            "type": "string",
            "description": "The appointment notes value for this disposition.",
            "nullable": true
          },
          "assignedToUserId": {
            "type": "string",
            "description": "The assigned to user ID associated with this disposition.",
            "nullable": true
          },
          "relatedCallEventId": {
            "type": "string",
            "description": "The related call event ID associated with this disposition.",
            "nullable": true
          },
          "isMissedCallFollowUp": {
            "type": "boolean",
            "description": "Whether this disposition is missed call follow up."
          },
          "sourceId": {
            "type": "string",
            "description": "The source ID associated with this disposition.",
            "nullable": true
          }
        },
        "description": "Response model for disposition data."
      },
      "EligibleOutgoingNumberResponse": {
        "type": "object",
        "properties": {
          "phoneNumberId": {
            "type": "string",
            "description": "Leadping phone number ID connected to this eligible outgoing phone number."
          },
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this eligible outgoing phone number."
          },
          "displayNumber": {
            "type": "string",
            "description": "Human-readable phone number shown in Leadping UI and API responses."
          },
          "healthStatus": {
            "enum": [
              "Not Started",
              "Warming",
              "Healthy",
              "Needs Attention",
              "Paused",
              "Blocked",
              "Ready"
            ],
            "type": "string",
            "description": "Defines the supported SMS Warmup Health State values.",
            "nullable": true
          },
          "healthLabel": {
            "type": "string",
            "description": "Short label describing the health state for display in dashboards.",
            "nullable": true
          },
          "healthWarning": {
            "type": "string",
            "description": "Warning text that explains a potential health or readiness issue.",
            "nullable": true
          },
          "canSend": {
            "type": "boolean",
            "description": "Indicates whether Leadping can send outbound messages using this eligible outgoing phone number."
          },
          "selectionReason": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OutgoingNumberSelectionReason"
              }
            ],
            "description": "Reason Leadping selected this outbound sender number."
          },
          "reasonLabel": {
            "type": "string",
            "description": "Human-readable label for the reason code on this eligible outgoing phone number."
          },
          "label": {
            "type": "string",
            "description": "Short display label for this eligible outgoing phone number, formatted for charts, filters, or list views.",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this eligible outgoing phone number.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID used to determine this phone number's outbound eligibility.",
            "nullable": true
          },
          "teamId": {
            "type": "string",
            "description": "Team ID used to determine this phone number's outbound eligibility.",
            "nullable": true
          },
          "isSelected": {
            "type": "boolean",
            "description": "Indicates whether this eligible outgoing phone number was selected for the requested operation."
          }
        },
        "description": "Response schema for the Leadping API eligible outgoing phone number returned to authenticated clients."
      },
      "EmploymentType": {
        "enum": [
          "Employed",
          "PartTime",
          "SelfEmployed",
          "Contractor",
          "Unemployed",
          "Retired",
          "Student",
          "Military",
          "Homemaker",
          "Disabled",
          "Other"
        ],
        "type": "string",
        "description": "Defines the supported Employment Type values."
      },
      "EventDetailResponse": {
        "type": "object",
        "properties": {
          "eventType": {
            "type": "string",
            "description": "Event type used to classify this timeline, SMS, call, or automation event."
          },
          "secondaryEventType": {
            "type": "string",
            "description": "Secondary event type used for additional event classification.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this event detail response to API users.",
            "nullable": true
          },
          "eventCategory": {
            "type": "string",
            "description": "High-level category used to group this Leadping event.",
            "nullable": true
          },
          "timelineType": {
            "enum": [
              "Message",
              "Sms",
              "Mms",
              "Call",
              "Voicemail",
              "Note",
              "Disposition",
              "LeadCreated",
              "LeadUpdated",
              "Notification",
              "Payment",
              "Warmup"
            ],
            "type": "string",
            "description": "Defines the supported Event timeline type values.",
            "nullable": true
          },
          "timelineCategory": {
            "type": "string",
            "description": "Timeline category used to group events for display and filtering.",
            "nullable": true
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this event detail response to the Leadping inbox thread.",
            "nullable": true
          },
          "summary": {
            "type": "string",
            "description": "Short human-readable summary of this event detail response for lists, timelines, and notifications.",
            "nullable": true
          },
          "direction": {
            "type": "string",
            "description": "Communication direction for this event detail response, such as inbound or outbound.",
            "nullable": true
          },
          "status": {
            "enum": [
              "Pending",
              "InProgress",
              "Completed",
              "Failed",
              "Cancelled"
            ],
            "type": "string",
            "description": "Defines the supported Event status values.",
            "nullable": true
          },
          "statusReason": {
            "type": "string",
            "description": "Human-readable reason explaining the current status of this event detail response.",
            "nullable": true
          },
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call.",
            "nullable": true
          },
          "outboundPhoneNumberId": {
            "type": "string",
            "description": "Phone number ID selected for outbound delivery.",
            "nullable": true
          },
          "fromPhoneNumber": {
            "type": "string",
            "description": "Sender phone number used for this communication.",
            "nullable": true
          },
          "toPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number used for this communication.",
            "nullable": true
          },
          "queuedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping queued this event detail response for processing.",
            "format": "date-time",
            "nullable": true
          },
          "scheduledFor": {
            "type": "string",
            "description": "UTC timestamp when the related delivery or workflow action is scheduled to run.",
            "format": "date-time",
            "nullable": true
          },
          "sendingStartedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping began sending this message.",
            "format": "date-time",
            "nullable": true
          },
          "sentAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping sent this message to the provider.",
            "format": "date-time",
            "nullable": true
          },
          "deliveredAt": {
            "type": "string",
            "description": "UTC timestamp when the provider confirmed delivery.",
            "format": "date-time",
            "nullable": true
          },
          "receivedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping received this inbound event or message.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "UTC timestamp when processing failed for this event detail response.",
            "format": "date-time",
            "nullable": true
          },
          "undeliverableAt": {
            "type": "string",
            "description": "UTC timestamp when the provider marked the message undeliverable.",
            "format": "date-time",
            "nullable": true
          },
          "blockedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping blocked this communication.",
            "format": "date-time",
            "nullable": true
          },
          "canceledAt": {
            "type": "string",
            "description": "UTC timestamp when this delivery or workflow was canceled.",
            "format": "date-time",
            "nullable": true
          },
          "user": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary connected to this event detail response.",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "description": "User ID associated with the activity that created this event."
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID associated with this event detail record.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API event detail response returned to authenticated clients."
      },
      "EventStatus": {
        "enum": [
          "Pending",
          "InProgress",
          "Completed",
          "Failed",
          "Cancelled"
        ],
        "type": "string",
        "description": "Defines the supported Event status values."
      },
      "EventTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this event timeline table row."
          },
          "eventType": {
            "type": "string",
            "description": "Event type used to classify this timeline, SMS, call, or automation event."
          },
          "eventCategory": {
            "type": "string",
            "description": "High-level category used to group this Leadping event.",
            "nullable": true
          },
          "timelineType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EventTimelineType"
              }
            ],
            "description": "Timeline type used to render this event in Leadping activity feeds."
          },
          "timelineCategory": {
            "type": "string",
            "description": "Timeline category used to group events for display and filtering."
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this event timeline table row to API users."
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this event timeline table row to the Leadping inbox thread.",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID associated with this timeline event.",
            "nullable": true
          },
          "relatedEntityType": {
            "type": "string",
            "description": "Related entity type connected to this event or notification.",
            "nullable": true
          },
          "relatedEntityId": {
            "type": "string",
            "description": "Related entity ID connected to this event or notification.",
            "nullable": true
          },
          "summary": {
            "type": "string",
            "description": "Short human-readable summary of this event timeline table row for lists, timelines, and notifications.",
            "nullable": true
          },
          "direction": {
            "type": "string",
            "description": "Communication direction for this event timeline table row, such as inbound or outbound.",
            "nullable": true
          },
          "status": {
            "enum": [
              "Pending",
              "InProgress",
              "Completed",
              "Cancelled",
              "Scheduled",
              "Queued",
              "Sending",
              "Sent",
              "Received",
              "Delivered",
              "Undeliverable",
              "Opted out",
              "Blocked",
              "Initiated",
              "Ringing",
              "Active",
              "Ended",
              "Missed",
              "Voicemail",
              "Failed",
              "Canceled"
            ],
            "type": "string",
            "description": "Defines the supported Event timeline status values.",
            "nullable": true
          },
          "statusReason": {
            "type": "string",
            "description": "Human-readable reason explaining the current status of this event timeline table row.",
            "nullable": true
          },
          "trafficType": {
            "enum": [
              "RealLead",
              "Warmup",
              "Test",
              "SystemInternal",
              "FailedAttempt"
            ],
            "type": "string",
            "description": "Defines the supported SMS Traffic Type values.",
            "nullable": true
          },
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call.",
            "nullable": true
          },
          "outboundPhoneNumberId": {
            "type": "string",
            "description": "Phone number ID selected for outbound delivery.",
            "nullable": true
          },
          "fromPhoneNumber": {
            "type": "string",
            "description": "Sender phone number used for this communication.",
            "nullable": true
          },
          "toPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number used for this communication.",
            "nullable": true
          },
          "selectionReason": {
            "enum": [
              "StickyConversation",
              "LeadAssigned",
              "CampaignOrSource",
              "Preferred",
              "LocalArea",
              "HealthyPool",
              "FallbackDefault",
              "ManualOverride"
            ],
            "type": "string",
            "description": "Defines the supported Outgoing Number Selection Reason values.",
            "nullable": true
          },
          "wasManuallyOverridden": {
            "type": "boolean",
            "description": "Indicates whether a user manually overrode Leadping's automatic number selection for this event timeline table row."
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this event timeline table row.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID used for event attribution.",
            "nullable": true
          },
          "complianceAction": {
            "type": "string",
            "description": "Compliance action applied to this message, lead, or sender.",
            "nullable": true
          },
          "billingStatus": {
            "type": "string",
            "description": "Billing state for this communication, charge, or transaction.",
            "nullable": true
          },
          "billableAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Monetary amount billed for this Leadping communication or transaction.",
            "format": "double",
            "nullable": true
          },
          "errorCode": {
            "type": "string",
            "description": "Machine-readable error code returned while processing this event timeline table row.",
            "nullable": true
          },
          "retryCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of retry attempts already made for this event timeline table row.",
            "format": "int32"
          },
          "queuedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping queued this event timeline table row for processing.",
            "format": "date-time",
            "nullable": true
          },
          "sendingStartedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping began sending this message.",
            "format": "date-time",
            "nullable": true
          },
          "sentAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping sent this message to the provider.",
            "format": "date-time",
            "nullable": true
          },
          "deliveredAt": {
            "type": "string",
            "description": "UTC timestamp when the provider confirmed delivery.",
            "format": "date-time",
            "nullable": true
          },
          "receivedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping received this inbound event or message.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "UTC timestamp when processing failed for this event timeline table row.",
            "format": "date-time",
            "nullable": true
          },
          "undeliverableAt": {
            "type": "string",
            "description": "UTC timestamp when the provider marked the message undeliverable.",
            "format": "date-time",
            "nullable": true
          },
          "blockedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping blocked this communication.",
            "format": "date-time",
            "nullable": true
          },
          "nextRetryAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping will retry this event timeline table row.",
            "format": "date-time",
            "nullable": true
          },
          "scheduledFor": {
            "type": "string",
            "description": "UTC timestamp when the related delivery or workflow action is scheduled to run.",
            "format": "date-time",
            "nullable": true
          },
          "scheduledReason": {
            "type": "string",
            "description": "Reason Leadping scheduled this delivery for a later time.",
            "nullable": true
          },
          "canceledAt": {
            "type": "string",
            "description": "UTC timestamp when this delivery or workflow was canceled.",
            "format": "date-time",
            "nullable": true
          },
          "cancelReason": {
            "type": "string",
            "description": "Reason this delivery, run, or request was canceled.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this event timeline table row was created.",
            "format": "date-time"
          },
          "createdBy": {
            "type": "string",
            "description": "Display name or identifier for the person or system that created this event timeline table row."
          },
          "actorUserId": {
            "type": "string",
            "description": "User ID for the person or system that created this event timeline table row.",
            "nullable": true
          },
          "actorDisplayName": {
            "type": "string",
            "description": "Display name for the person or system that created this event timeline table row.",
            "nullable": true
          }
        },
        "description": "List item schema for Leadping API event timeline table row results shown in searchable tables."
      },
      "EventTimelineStatus": {
        "enum": [
          "Pending",
          "InProgress",
          "Completed",
          "Cancelled",
          "Scheduled",
          "Queued",
          "Sending",
          "Sent",
          "Received",
          "Delivered",
          "Undeliverable",
          "Opted out",
          "Blocked",
          "Initiated",
          "Ringing",
          "Active",
          "Ended",
          "Missed",
          "Voicemail",
          "Failed",
          "Canceled"
        ],
        "type": "string",
        "description": "Defines the supported Event timeline status values."
      },
      "EventTimelineType": {
        "enum": [
          "Message",
          "Sms",
          "Mms",
          "Call",
          "Voicemail",
          "Note",
          "Disposition",
          "LeadCreated",
          "LeadUpdated",
          "Notification",
          "Payment",
          "Warmup"
        ],
        "type": "string",
        "description": "Defines the supported Event timeline type values."
      },
      "ExactMatchFilter": {
        "type": "object",
        "properties": {
          "value": {
            "description": "The value that the field must match."
          },
          "field": {
            "type": "string",
            "description": "The field to filter by."
          }
        },
        "description": "A generic object for handling exact match filtering during querying"
      },
      "FeedbackCreateRequest": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "bug",
              "confusing",
              "feature_request",
              "missing_capability",
              "other"
            ],
            "type": "string",
            "description": "Defines the type of product feedback submitted from inside Leadping.",
            "nullable": true
          },
          "message": {
            "type": "string",
            "description": "Message text supplied by the user or returned by the Leadping API for this feedback creation request.",
            "nullable": true
          },
          "route": {
            "type": "string",
            "description": "Application route where this feedback creation request originated or should direct the user.",
            "nullable": true
          },
          "area": {
            "type": "string",
            "description": "Product area or app section connected to this feedback creation request.",
            "nullable": true
          },
          "allowContact": {
            "type": "boolean",
            "description": "Indicates whether the submitter permits Leadping support to contact them about the feedback."
          },
          "clientVersion": {
            "type": "string",
            "description": "Client application version that submitted this feedback creation request.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API feedback creation request, including the fields clients can send."
      },
      "FeedbackResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this feedback item response."
          },
          "businessId": {
            "type": "string",
            "description": "Business ID connected to the feedback item, when the feedback came from a business workspace.",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "description": "User ID for the person who submitted the feedback.",
            "nullable": true
          },
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FeedbackType"
              }
            ],
            "description": "Type classification used to route and interpret this feedback item response in the Leadping API."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FeedbackStatus"
              }
            ],
            "description": "Current lifecycle status for this feedback item response in the Leadping API."
          },
          "area": {
            "type": "string",
            "description": "Product area or app section connected to this feedback item response.",
            "nullable": true
          },
          "route": {
            "type": "string",
            "description": "Application route where this feedback item response originated or should direct the user.",
            "nullable": true
          },
          "message": {
            "type": "string",
            "description": "Message text supplied by the user or returned by the Leadping API for this feedback item response."
          },
          "allowContact": {
            "type": "boolean",
            "description": "Indicates whether the submitter permits Leadping support to contact them about the feedback."
          },
          "clientVersion": {
            "type": "string",
            "description": "Client application version that submitted this feedback item response.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this feedback item response was created.",
            "format": "date-time"
          }
        },
        "description": "Response schema for the Leadping API feedback item response returned to authenticated clients."
      },
      "FeedbackStatus": {
        "enum": [
          "new",
          "reviewed",
          "planned",
          "in_progress",
          "shipped",
          "closed",
          "ignored"
        ],
        "type": "string",
        "description": "Defines admin triage statuses for durable product feedback."
      },
      "FeedbackType": {
        "enum": [
          "bug",
          "confusing",
          "feature_request",
          "missing_capability",
          "other"
        ],
        "type": "string",
        "description": "Defines the type of product feedback submitted from inside Leadping."
      },
      "GenderType": {
        "enum": [
          "M",
          "F",
          "NonBinary",
          "PreferNotToSay",
          "Other"
        ],
        "type": "string",
        "description": "Represents a gender classification used for demographic or identification purposes."
      },
      "IdNamePair": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier."
          },
          "name": {
            "type": "string",
            "description": "The display name."
          }
        },
        "description": "A minimal Record type with an (string), (string), and maximum JSON compatibility. The reason for this type (over something like KeyValuePair, dictionary) is because of JSON serialization support."
      },
      "IdNameValue": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The optional value associated with the identifier and name.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier."
          },
          "name": {
            "type": "string",
            "description": "The display name."
          }
        },
        "description": "A minimal Record type with an Id (string), Name (string), nullable Value (string?) and maximum JSON compatibility"
      },
      "InitiateCallRequest": {
        "type": "object",
        "properties": {
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call.",
            "nullable": true
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this phone call initiation request to the Leadping inbox thread.",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID associated with the outbound call request."
          },
          "wasManuallyOverridden": {
            "type": "boolean",
            "description": "Indicates whether a user manually overrode Leadping's automatic number selection for this phone call initiation request."
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this phone call initiation request.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID used for call attribution and sender selection.",
            "nullable": true
          },
          "outboundIdempotencyKey": {
            "type": "string",
            "description": "Idempotency key used to prevent duplicate outbound delivery.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API phone call initiation request, including the fields clients can send."
      },
      "LeadArchiveReason": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9
        ],
        "type": "integer",
        "description": "Defines why a lead was removed from the active working pipeline.",
        "format": "int32"
      },
      "LeadArchiveRequest": {
        "type": "object",
        "properties": {
          "reason": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadArchiveReason"
              }
            ],
            "description": "Human-readable reason supplied for this request or result."
          },
          "note": {
            "maxLength": 500,
            "type": "string",
            "description": "Optional archive note that gives additional context for why the lead was archived.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API lead archive request, including the fields clients can send."
      },
      "LeadContact": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "First name of the lead, user, or contact represented by this lead contact profile.",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the lead, user, or contact represented by this lead contact profile.",
            "nullable": true
          },
          "streetAddress": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/StreetAddress"
              }
            ],
            "description": "Postal street address for the lead contact profile.",
            "nullable": true
          },
          "coordinate": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/Coordinate"
              }
            ],
            "description": "Latitude and longitude coordinate for this lead contact profile.",
            "nullable": true
          },
          "timeZoneId": {
            "type": "string",
            "description": "IANA or Windows time zone identifier used for local scheduling and reporting.",
            "nullable": true
          },
          "phone": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/Phone"
              }
            ],
            "description": "Phone details for the lead, user, or business represented by this lead contact profile.",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "Email address for the person represented by this lead contact profile.",
            "nullable": true
          }
        },
        "description": "Public Leadping API schema for lead contact profile data."
      },
      "LeadIntakeRequest": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "First name of the lead, user, or contact represented by this lead intake request.",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the lead, user, or contact represented by this lead intake request.",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "Email address for the person represented by this lead intake request.",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "Phone details for the lead, user, or business represented by this lead intake request.",
            "nullable": true
          },
          "phoneType": {
            "type": "string",
            "description": "Source-provided phone type, such as mobile, landline, or VoIP, used during lead intake normalization.",
            "nullable": true
          },
          "dateOfBirth": {
            "type": "string",
            "description": "Lead date of birth supplied by intake sources and normalized into the lead profile.",
            "format": "date",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Lead birth date used for demographic matching and insurance intake workflows.",
            "format": "date",
            "nullable": true
          },
          "address1": {
            "type": "string",
            "description": "First street address line submitted by the lead intake source.",
            "nullable": true
          },
          "address2": {
            "type": "string",
            "description": "Second street address line submitted by the lead intake source.",
            "nullable": true
          },
          "city": {
            "type": "string",
            "description": "City for the lead or business postal address.",
            "nullable": true
          },
          "state": {
            "type": "string",
            "description": "State, province, or region for the lead or business postal address.",
            "nullable": true
          },
          "zip": {
            "type": "string",
            "description": "ZIP code submitted by the lead intake source.",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code for the lead or business address.",
            "nullable": true
          },
          "gender": {
            "type": "string",
            "description": "Lead gender supplied by intake sources and normalized when possible.",
            "nullable": true
          },
          "subId": {
            "type": "string",
            "description": "Affiliate or publisher sub ID captured for lead attribution.",
            "nullable": true
          },
          "sellerLeadId": {
            "type": "string",
            "description": "Seller-provided lead identifier used to deduplicate and reconcile lead delivery.",
            "nullable": true
          },
          "sellerLeadIdentifier": {
            "type": "string",
            "description": "Alternate seller-provided lead identifier used during intake normalization.",
            "nullable": true
          },
          "directPostPrice": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Direct-post price supplied by the lead source during intake.",
            "format": "double",
            "nullable": true
          },
          "price": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Lead price or transaction price supplied to the Leadping API.",
            "format": "double",
            "nullable": true
          },
          "utmSource": {
            "type": "string",
            "description": "UTM source parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmMedium": {
            "type": "string",
            "description": "UTM medium parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmCampaign": {
            "type": "string",
            "description": "UTM campaign parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmTerm": {
            "type": "string",
            "description": "UTM term parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmContent": {
            "type": "string",
            "description": "UTM content parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "product": {
            "type": "string",
            "description": "Product or offer associated with the lead or source.",
            "nullable": true
          },
          "vertical": {
            "type": "string",
            "description": "Industry vertical used for lead routing, compliance review, and reporting.",
            "nullable": true
          },
          "referrer": {
            "type": "string",
            "description": "Referring page or traffic source that sent the lead into Leadping.",
            "nullable": true
          },
          "landingPage": {
            "type": "string",
            "description": "Landing page URL where the lead submitted their information.",
            "nullable": true
          },
          "trustedFormUrl": {
            "type": "string",
            "description": "TrustedForm certificate URL used as proof of consumer consent.",
            "nullable": true
          },
          "externalId": {
            "type": "string",
            "description": "External system identifier used to reconcile this lead intake request across integrations.",
            "nullable": true
          },
          "sourceMetadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Source-provided key-value metadata retained for lead attribution and integration troubleshooting.",
            "nullable": true
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag IDs assigned to or filtered against this lead."
          },
          "tagNames": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag names assigned to this lead when matching existing tags by name."
          }
        },
        "description": "Request schema for the Leadping API lead intake request, including the fields clients can send."
      },
      "LeadMetadata": {
        "required": [
          "trustedFormUrl"
        ],
        "type": "object",
        "properties": {
          "utmSource": {
            "type": "string",
            "description": "UTM source parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmMedium": {
            "type": "string",
            "description": "UTM medium parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmCampaign": {
            "type": "string",
            "description": "UTM campaign parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmTerm": {
            "type": "string",
            "description": "UTM term parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "utmContent": {
            "type": "string",
            "description": "UTM content parameter captured for lead attribution reporting.",
            "nullable": true
          },
          "referrer": {
            "type": "string",
            "description": "Referring page or traffic source that sent the lead into Leadping.",
            "nullable": true
          },
          "landingPage": {
            "type": "string",
            "description": "Landing page URL where the lead submitted their information.",
            "nullable": true
          },
          "subId": {
            "type": "string",
            "description": "Affiliate or publisher sub ID captured for lead attribution.",
            "nullable": true
          },
          "pubId": {
            "type": "string",
            "description": "Publisher ID supplied by the lead source for attribution.",
            "nullable": true
          },
          "ipAddress": {
            "type": "string",
            "description": "IP address captured with the request for audit and compliance review.",
            "nullable": true
          },
          "userAgent": {
            "type": "string",
            "description": "Browser or client user agent captured when this lead attribution metadata was submitted.",
            "nullable": true
          },
          "externalId": {
            "type": "string",
            "description": "External system identifier used to reconcile this lead attribution metadata across integrations.",
            "nullable": true
          },
          "sellerLeadId": {
            "type": "string",
            "description": "Seller-provided lead identifier used to deduplicate and reconcile lead delivery.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this lead attribution metadata was created.",
            "format": "date-time",
            "nullable": true
          },
          "price": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Lead price or transaction price supplied to the Leadping API.",
            "format": "double",
            "nullable": true
          },
          "directPostPrice": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Direct-post price supplied by the lead source during intake.",
            "format": "double",
            "nullable": true
          },
          "product": {
            "type": "string",
            "description": "Product or offer associated with the lead or source.",
            "nullable": true
          },
          "vertical": {
            "type": "string",
            "description": "Industry vertical used for lead routing, compliance review, and reporting.",
            "nullable": true
          },
          "complianceStatus": {
            "type": "string",
            "description": "Compliance status used to decide whether Leadping can send messages.",
            "nullable": true
          },
          "complianceBlockedReason": {
            "type": "string",
            "description": "Reason Leadping blocked this operation for compliance.",
            "nullable": true
          },
          "sourceMetadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Source-provided key-value metadata retained for lead attribution and integration troubleshooting.",
            "nullable": true
          },
          "origin": {
            "type": "string",
            "description": "System or workflow that created this event.",
            "nullable": true
          },
          "importBatchId": {
            "type": "string",
            "description": "Bulk import batch ID that created or updated this lead.",
            "nullable": true
          },
          "isImported": {
            "type": "boolean",
            "description": "Indicates whether this lead was imported rather than captured through a live source."
          },
          "assignedPhoneNumberId": {
            "type": "string",
            "description": "Phone number ID assigned to the lead, business, or source.",
            "nullable": true
          },
          "smsConsentStatus": {
            "type": "string",
            "description": "Current SMS consent status recorded for this lead.",
            "nullable": true
          },
          "smsOptedOut": {
            "type": "boolean",
            "description": "Indicates whether the lead has opted out of SMS communication."
          },
          "smsOptOutAt": {
            "type": "string",
            "description": "UTC timestamp when the lead opted out of SMS communication.",
            "format": "date-time",
            "nullable": true
          },
          "smsOptInAt": {
            "type": "string",
            "description": "UTC timestamp when the lead opted in to SMS communication.",
            "format": "date-time",
            "nullable": true
          },
          "smsHelpRequestedAt": {
            "type": "string",
            "description": "UTC timestamp when the lead requested SMS help instructions.",
            "format": "date-time",
            "nullable": true
          },
          "smsConsentPhoneNumber": {
            "type": "string",
            "description": "Phone number where SMS consent was captured or evaluated.",
            "nullable": true
          },
          "trustedFormUrl": {
            "type": "string",
            "description": "TrustedForm certificate URL used as proof of consumer consent."
          },
          "userId": {
            "type": "string",
            "description": "User ID associated with this lead's attribution metadata.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "Business ID that owns this lead's attribution metadata.",
            "nullable": true
          }
        },
        "description": "Public Leadping API schema for lead attribution metadata data."
      },
      "LeadProfile": {
        "type": "object",
        "properties": {
          "gender": {
            "enum": [
              "M",
              "F",
              "NonBinary",
              "PreferNotToSay",
              "Other"
            ],
            "type": "string",
            "description": "Represents a gender classification used for demographic or identification purposes.",
            "nullable": true
          },
          "height": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Lead height provided for qualification workflows that require demographic details.",
            "format": "int32",
            "nullable": true
          },
          "weight": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Relative weighting used to rank or score this lead demographic profile.",
            "format": "int32",
            "nullable": true
          },
          "birthDate": {
            "type": "string",
            "description": "Lead birth date used for demographic matching and insurance intake workflows.",
            "format": "date",
            "nullable": true
          },
          "maritalStatus": {
            "enum": [
              "Married",
              "Single",
              "Widow",
              "Separated",
              "Divorced"
            ],
            "type": "string",
            "description": "Defines the supported Marital Status Type values.",
            "nullable": true
          },
          "income": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Lead income amount or range supplied for qualification workflows.",
            "format": "int32",
            "nullable": true
          },
          "isHomeowner": {
            "type": "boolean",
            "description": "Indicates whether the lead owns their home.",
            "nullable": true
          },
          "monthsAtResidence": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of months the lead has lived at the current residence.",
            "format": "int32",
            "nullable": true
          },
          "creditScore": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Lead credit score range or score supplied by the intake source.",
            "format": "int32",
            "nullable": true
          },
          "hasBankruptcy": {
            "type": "boolean",
            "description": "Indicates whether the lead reported bankruptcy history.",
            "nullable": true
          },
          "employmentType": {
            "enum": [
              "Employed",
              "PartTime",
              "SelfEmployed",
              "Contractor",
              "Unemployed",
              "Retired",
              "Student",
              "Military",
              "Homemaker",
              "Disabled",
              "Other"
            ],
            "type": "string",
            "description": "Defines the supported Employment Type values.",
            "nullable": true
          },
          "numberOfDependents": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of dependents reported by the lead.",
            "format": "int32",
            "nullable": true
          },
          "hasMedicalCondition": {
            "type": "boolean",
            "description": "Indicates whether the lead reported a medical condition relevant to qualification.",
            "nullable": true
          }
        },
        "description": "Public Leadping API schema for lead demographic profile data."
      },
      "LeadRequest": {
        "type": "object",
        "properties": {
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadMetadata"
              }
            ],
            "description": "Structured metadata used for attribution, integrations, and reporting on this lead request."
          },
          "contact": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadContact"
              }
            ],
            "description": "Contact details for the lead or customer represented by this lead request."
          },
          "customer": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadProfile"
              }
            ],
            "description": "Demographic profile details for the lead represented by this lead request."
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this lead request is active and available in the Leadping API.",
            "nullable": true
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag IDs assigned to or filtered against this lead."
          },
          "tagNames": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag names assigned to this lead when matching existing tags by name."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity, when updating an existing entity.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API lead request, including the fields clients can send."
      },
      "LeadResponse": {
        "type": "object",
        "properties": {
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadMetadata"
              }
            ],
            "description": "Structured metadata used for attribution, integrations, and reporting on this lead response."
          },
          "contact": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadContact"
              }
            ],
            "description": "Contact details for the lead or customer represented by this lead response."
          },
          "customer": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LeadProfile"
              }
            ],
            "description": "Demographic profile details for the lead represented by this lead response."
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this lead response is active and available in the Leadping API."
          },
          "archivedAt": {
            "type": "string",
            "description": "UTC timestamp when this record was archived.",
            "format": "date-time",
            "nullable": true
          },
          "archivedByUserId": {
            "type": "string",
            "description": "User ID of the person who archived this record.",
            "nullable": true
          },
          "archiveReason": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9
            ],
            "type": "integer",
            "description": "Defines why a lead was removed from the active working pipeline.",
            "format": "int32",
            "nullable": true
          },
          "archiveNote": {
            "type": "string",
            "description": "Optional note explaining why the lead was archived.",
            "nullable": true
          },
          "isArchived": {
            "type": "boolean",
            "description": "Indicates whether the lead has been archived in Leadping."
          },
          "currentDisposition": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CurrentDispositionSummary"
              }
            ],
            "description": "Current disposition summary that describes the lead outcome.",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/TagSummary"
                }
              ],
              "description": "Summary schema for Leadping API tag summary data used in dashboards and reports."
            },
            "description": "Tags currently attached to this lead, source, or record."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API lead response returned to authenticated clients."
      },
      "LeadTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this lead table row."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the lead, user, or contact represented by this lead table row."
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the lead, user, or contact represented by this lead table row."
          },
          "phone": {
            "type": "string",
            "description": "Phone details for the lead, user, or business represented by this lead table row."
          },
          "email": {
            "type": "string",
            "description": "Email address for the person represented by this lead table row."
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this lead table row was created.",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "description": "UTC timestamp when this lead table row was last updated.",
            "format": "date-time"
          },
          "status": {
            "type": "string",
            "description": "Current lifecycle status for this lead table row in the Leadping API."
          },
          "statusTone": {
            "type": "string",
            "description": "Presentation tone that helps clients style the current status of this lead table row."
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this lead table row is active and available in the Leadping API."
          },
          "archivedAt": {
            "type": "string",
            "description": "UTC timestamp when this record was archived.",
            "format": "date-time",
            "nullable": true
          },
          "archivedByUserId": {
            "type": "string",
            "description": "User ID of the person who archived this record.",
            "nullable": true
          },
          "archiveReason": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9
            ],
            "type": "integer",
            "description": "Defines why a lead was removed from the active working pipeline.",
            "format": "int32",
            "nullable": true
          },
          "isArchived": {
            "type": "boolean",
            "description": "Whether this lead is archived."
          },
          "currentDisposition": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/CurrentDispositionSummary"
              }
            ],
            "description": "Current disposition summary that describes the lead outcome.",
            "nullable": true
          },
          "price": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Lead price or transaction price supplied to the Leadping API.",
            "format": "double",
            "nullable": true
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this business.",
            "nullable": true
          },
          "source": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this source.",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/TagSummary"
                }
              ],
              "description": "Summary schema for Leadping API tag summary data used in dashboards and reports."
            },
            "description": "Tags currently attached to this lead, source, or record."
          }
        },
        "description": "List item schema for Leadping API lead table row results shown in searchable tables."
      },
      "LeadTagsRequest": {
        "type": "object",
        "properties": {
          "tagIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag IDs assigned to or filtered against this lead."
          },
          "tagNames": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag names assigned to this lead when matching existing tags by name."
          },
          "createMissing": {
            "type": "boolean",
            "description": "Indicates whether Leadping should create missing records while processing the request."
          }
        },
        "description": "Request schema for the Leadping API lead tag update request, including the fields clients can send."
      },
      "MaritalStatusType": {
        "enum": [
          "Married",
          "Single",
          "Widow",
          "Separated",
          "Divorced"
        ],
        "type": "string",
        "description": "Defines the supported Marital Status Type values."
      },
      "MobileDevicePreferences": {
        "type": "object",
        "properties": {
          "device": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this device."
          },
          "inboundPhoneCallsEnabled": {
            "type": "boolean",
            "description": "Whether inbound phone calls are enabled for this user device."
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time this device preference was last updated.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API DTO containing Leadping mobile preferences for a single user device."
      },
      "NotificationPriority": {
        "enum": [
          "Low",
          "Medium",
          "High",
          "Critical"
        ],
        "type": "string",
        "description": "Defines the supported Notification Priority values."
      },
      "NotificationTableRow": {
        "type": "object",
        "properties": {
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationType"
              }
            ],
            "description": "The type classification for this notification."
          },
          "priority": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationPriority"
              }
            ],
            "description": "The priority value for this notification."
          },
          "message": {
            "type": "string",
            "description": "The message value for this notification."
          },
          "details": {
            "type": "string",
            "description": "The details value for this notification.",
            "nullable": true
          },
          "isRead": {
            "type": "boolean",
            "description": "Whether this notification is read."
          },
          "readAt": {
            "type": "string",
            "description": "The date and time for the read at value on this notification.",
            "format": "date-time",
            "nullable": true
          },
          "actionUrl": {
            "type": "string",
            "description": "The URL associated with this notification.",
            "nullable": true
          },
          "actionButtonText": {
            "type": "string",
            "description": "The action button text value for this notification.",
            "nullable": true
          },
          "relatedEntityId": {
            "type": "string",
            "description": "The related entity ID associated with this notification.",
            "nullable": true
          },
          "relatedEntityType": {
            "type": "string",
            "description": "The related entity type classification for this notification.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API response containing notification data returned to callers."
      },
      "NotificationType": {
        "enum": [
          "General",
          "Lead",
          "Call",
          "Sms",
          "Billing",
          "System",
          "Success",
          "Warning",
          "Error",
          "Info",
          "Announcement",
          "Activation"
        ],
        "type": "string",
        "description": "Defines the supported Notification Type values."
      },
      "OrderByOption": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "description": "The field to sort by."
          },
          "direction": {
            "enum": [
              "asc",
              "desc"
            ],
            "type": "string",
            "description": "An enumerator for sort direction during querying",
            "nullable": true
          }
        },
        "description": "An object for ordering during querying"
      },
      "OutboundCapacityOverview": {
        "type": "object",
        "properties": {
          "smsCapacityRemainingToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "SMS capacity remaining today for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "voiceCapacityRemainingToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Voice capacity remaining today for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "healthyPhoneNumbers": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of healthy phone numbers represented by this Leadping outbound capacity overview.",
            "format": "int32"
          },
          "limitedPhoneNumbers": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of limited phone numbers represented by this Leadping outbound capacity overview.",
            "format": "int32"
          },
          "coolingPhoneNumbers": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of cooling phone numbers represented by this Leadping outbound capacity overview.",
            "format": "int32"
          },
          "scheduledCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of scheduled records represented by this Leadping outbound capacity overview.",
            "format": "int32"
          },
          "blockedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of blocked records represented by this Leadping outbound capacity overview.",
            "format": "int32"
          },
          "phoneNumbers": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/OutboundPhoneNumberCapacity"
                }
              ],
              "description": "Represents outbound phone number capacity data used by Leadping."
            },
            "description": "Collection of phone numbers included with this Leadping outbound capacity overview."
          },
          "recentDecisions": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/OutboundQueueItem"
                }
              ],
              "description": "Represents outbound queue item data used by Leadping."
            },
            "description": "Collection of recent decisions included with this Leadping outbound capacity overview."
          }
        },
        "description": "Represents outbound capacity overview data used by Leadping."
      },
      "OutboundDeliveryChannel": {
        "enum": [
          "sms",
          "voice",
          "email",
          "webhook",
          "internal_notification"
        ],
        "type": "string",
        "description": "Defines outbound delivery channels protected by delivery control."
      },
      "OutboundDeliverySource": {
        "enum": [
          "manual",
          "automation",
          "campaign",
          "import",
          "api",
          "system_notification",
          "warmup",
          "retry"
        ],
        "type": "string",
        "description": "Defines the source that requested outbound delivery."
      },
      "OutboundDeliveryStatus": {
        "enum": [
          "pending",
          "scheduled",
          "reserved",
          "sending",
          "sent",
          "failed",
          "skipped",
          "blocked",
          "cancelled"
        ],
        "type": "string",
        "description": "Defines durable outbound delivery request statuses."
      },
      "OutboundPacingReasonCode": {
        "enum": [
          "allowed",
          "no_eligible_phone_number",
          "ten_dlc_not_approved",
          "phone_number_daily_limit_reached",
          "phone_number_hourly_limit_reached",
          "phone_number_minute_limit_reached",
          "business_daily_limit_reached",
          "business_hourly_limit_reached",
          "business_minute_limit_reached",
          "lead_daily_limit_reached",
          "lead_hourly_limit_reached",
          "lead_recently_contacted",
          "lead_archived",
          "quiet_hours",
          "wallet_insufficient",
          "contact_opted_out",
          "imported_lead_requires_consent",
          "automation_bulk_import_disabled",
          "number_cooling_down",
          "number_health_blocked",
          "provider_failure_backoff",
          "campaign_daily_limit_reached",
          "reservation_unavailable"
        ],
        "type": "string",
        "description": "Structured reason codes for outbound pacing and blocking decisions."
      },
      "OutboundPhoneNumberCapacity": {
        "type": "object",
        "properties": {
          "phoneNumberId": {
            "type": "string",
            "description": "Unique identifier of the phone number associated with this Leadping outbound phone number capacity.",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number associated with this Leadping outbound phone number capacity.",
            "nullable": true
          },
          "healthStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberOutboundHealthStatus"
              }
            ],
            "description": "Current health status for this Leadping outbound phone number capacity."
          },
          "smsRemainingToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "SMS remaining today for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "smsUsedToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "SMS used today for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "smsLimitToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS limit today represented by this Leadping outbound phone number capacity.",
            "format": "int32"
          },
          "smsRemainingThisHour": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "SMS remaining this hour for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "smsUsedThisHour": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "SMS used this hour for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "smsLimitThisHour": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS limit this hour represented by this Leadping outbound phone number capacity.",
            "format": "int32"
          },
          "voiceRemainingToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Voice remaining today for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "voiceUsedToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Voice used today for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "voiceLimitToday": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Voice limit today associated with this Leadping outbound phone number capacity.",
            "format": "int32"
          },
          "voiceRemainingThisHour": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Voice remaining this hour for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "voiceUsedThisHour": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Voice used this hour for the applicable messaging or voice capacity window.",
            "format": "int32"
          },
          "voiceLimitThisHour": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Voice limit this hour associated with this Leadping outbound phone number capacity.",
            "format": "int32"
          }
        },
        "description": "Represents outbound phone number capacity data used by Leadping."
      },
      "OutboundQueueItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for the outbound queue item.",
            "nullable": true
          },
          "channel": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OutboundDeliveryChannel"
              }
            ],
            "description": "Channel classification for this Leadping outbound queue item."
          },
          "source": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OutboundDeliverySource"
              }
            ],
            "description": "Source classification for this Leadping outbound queue item."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OutboundDeliveryStatus"
              }
            ],
            "description": "Current status for this Leadping outbound queue item."
          },
          "reasonCode": {
            "enum": [
              "allowed",
              "no_eligible_phone_number",
              "ten_dlc_not_approved",
              "phone_number_daily_limit_reached",
              "phone_number_hourly_limit_reached",
              "phone_number_minute_limit_reached",
              "business_daily_limit_reached",
              "business_hourly_limit_reached",
              "business_minute_limit_reached",
              "lead_daily_limit_reached",
              "lead_hourly_limit_reached",
              "lead_recently_contacted",
              "lead_archived",
              "quiet_hours",
              "wallet_insufficient",
              "contact_opted_out",
              "imported_lead_requires_consent",
              "automation_bulk_import_disabled",
              "number_cooling_down",
              "number_health_blocked",
              "provider_failure_backoff",
              "campaign_daily_limit_reached",
              "reservation_unavailable"
            ],
            "type": "string",
            "description": "Structured reason codes for outbound pacing and blocking decisions.",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "description": "Human-readable explanation for the current outbound queue item outcome.",
            "nullable": true
          },
          "scheduledSendAt": {
            "type": "string",
            "description": "Date and time when this Leadping outbound queue item was scheduled send.",
            "format": "date-time",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number associated with this Leadping outbound queue item.",
            "nullable": true
          }
        },
        "description": "Represents outbound queue item data used by Leadping."
      },
      "OutgoingNumberChannel": {
        "enum": [
          "sms",
          "call"
        ],
        "type": "string",
        "description": "Defines the supported Outgoing Number Channel values."
      },
      "OutgoingNumberManualOverrideRequest": {
        "type": "object",
        "properties": {
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call."
          },
          "selection": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OutgoingNumberSelectionRequest"
              }
            ],
            "description": "Selected outgoing number and selection rationale returned by Leadping."
          }
        },
        "description": "Request schema for the Leadping API outgoing number manual override request, including the fields clients can send."
      },
      "OutgoingNumberSelectionReason": {
        "enum": [
          "StickyConversation",
          "LeadAssigned",
          "CampaignOrSource",
          "Preferred",
          "LocalArea",
          "HealthyPool",
          "FallbackDefault",
          "ManualOverride"
        ],
        "type": "string",
        "description": "Defines the supported Outgoing Number Selection Reason values."
      },
      "OutgoingNumberSelectionRequest": {
        "type": "object",
        "properties": {
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this outgoing number selection request to the Leadping inbox thread.",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID used to choose the best outgoing sender number.",
            "nullable": true
          },
          "recipientPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number that receives the outbound message or call.",
            "nullable": true
          },
          "channel": {
            "enum": [
              "sms",
              "call"
            ],
            "type": "string",
            "description": "Defines the supported Outgoing Number Channel values.",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this outgoing number selection request.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID used to choose the best outgoing sender number.",
            "nullable": true
          },
          "teamId": {
            "type": "string",
            "description": "Team ID used to choose the best outgoing sender number.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API outgoing number selection request, including the fields clients can send."
      },
      "OutgoingNumberSelectionResponse": {
        "type": "object",
        "properties": {
          "canSend": {
            "type": "boolean",
            "description": "Indicates whether Leadping can send outbound messages using this outgoing number selection response."
          },
          "setupMessage": {
            "type": "string",
            "description": "Human-readable setup guidance shown for this outgoing number selection response.",
            "nullable": true
          },
          "phoneNumberId": {
            "type": "string",
            "description": "Leadping phone number ID connected to this outgoing number selection response.",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this outgoing number selection response.",
            "nullable": true
          },
          "displayNumber": {
            "type": "string",
            "description": "Human-readable phone number shown in Leadping UI and API responses.",
            "nullable": true
          },
          "healthStatus": {
            "enum": [
              "Not Started",
              "Warming",
              "Healthy",
              "Needs Attention",
              "Paused",
              "Blocked",
              "Ready"
            ],
            "type": "string",
            "description": "Defines the supported SMS Warmup Health State values.",
            "nullable": true
          },
          "healthLabel": {
            "type": "string",
            "description": "Short label describing the health state for display in dashboards.",
            "nullable": true
          },
          "healthWarning": {
            "type": "string",
            "description": "Warning text that explains a potential health or readiness issue.",
            "nullable": true
          },
          "selectionReason": {
            "enum": [
              "StickyConversation",
              "LeadAssigned",
              "CampaignOrSource",
              "Preferred",
              "LocalArea",
              "HealthyPool",
              "FallbackDefault",
              "ManualOverride"
            ],
            "type": "string",
            "description": "Defines the supported Outgoing Number Selection Reason values.",
            "nullable": true
          },
          "reasonLabel": {
            "type": "string",
            "description": "Human-readable label for the reason code on this outgoing number selection response.",
            "nullable": true
          },
          "wasManuallyOverridden": {
            "type": "boolean",
            "description": "Indicates whether a user manually overrode Leadping's automatic number selection for this outgoing number selection response."
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this outgoing number selection response.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID considered when Leadping selected the outgoing phone number.",
            "nullable": true
          },
          "eligibleNumbers": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EligibleOutgoingNumberResponse"
                }
              ],
              "description": "Response schema for the Leadping API eligible outgoing phone number returned to authenticated clients."
            },
            "description": "Phone numbers that are eligible to send the requested outbound message or call."
          }
        },
        "description": "Response schema for the Leadping API outgoing number selection response returned to authenticated clients."
      },
      "PagedResultOfAutomationTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AutomationTableRow"
                }
              ],
              "description": "List item schema for Leadping API automation table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfBusinessTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/BusinessTableRow"
                }
              ],
              "description": "API DTO containing business data used by Leadping API contracts."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfCallEventTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CallEventTableRow"
                }
              ],
              "description": "List item schema for Leadping API call event table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfConversationResponse": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/ConversationResponse"
                }
              ],
              "description": "Response schema for the Leadping API conversation response returned to authenticated clients."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfEventTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EventTableRow"
                }
              ],
              "description": "List item schema for Leadping API event timeline table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfLeadTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LeadTableRow"
                }
              ],
              "description": "List item schema for Leadping API lead table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfNotificationTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/NotificationTableRow"
                }
              ],
              "description": "API response containing notification data returned to callers."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfPhoneNumberTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/PhoneNumberTableRow"
                }
              ],
              "description": "List item schema for Leadping API phone number table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfSmsEventTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SmsEventTableRow"
                }
              ],
              "description": "List item schema for Leadping API SMS event table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfSourceTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SourceTableRow"
                }
              ],
              "description": "List item schema for Leadping API lead source table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfTransactionTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/TransactionTableRow"
                }
              ],
              "description": "List item schema for Leadping API billing transaction table row results shown in searchable tables."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "PagedResultOfUsageLedgerTableRow": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/UsageLedgerTableRow"
                }
              ],
              "description": "API DTO containing usage ledger data used by Leadping API contracts."
            },
            "description": "The subset of items returned for the current page."
          },
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The number of items returned per page in the response. This may reflect the client's requested page size, or a server-defined default or limit.",
            "format": "int32"
          },
          "totalCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The total number of items that match the query across all pages. May be null if the count is not computed or not applicable (e.g., in continuation-based pagination).",
            "format": "int32",
            "nullable": true
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque storage continuation token. ‑ `null` → the current page was the last page.",
            "nullable": true
          }
        },
        "description": "A generic container for paginated results returned to the client."
      },
      "Phone": {
        "type": "object",
        "properties": {
          "phoneIdentityId": {
            "type": "string",
            "description": "Identifier of the canonical phone identity stored by Leadping.",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this lead phone number."
          },
          "type": {
            "type": "string",
            "description": "Type classification used to route and interpret this lead phone number in the Leadping API.",
            "nullable": true
          }
        },
        "description": "Public Leadping API schema for lead phone number data."
      },
      "PhoneCallResponse": {
        "type": "object",
        "properties": {
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneCallStatus"
              }
            ],
            "description": "Current lifecycle status for this phone call in the Leadping API."
          },
          "statusReason": {
            "type": "string",
            "description": "Human-readable reason explaining the current status of this phone call.",
            "nullable": true
          },
          "direction": {
            "type": "string",
            "description": "Communication direction for this phone call, such as inbound or outbound.",
            "nullable": true
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this phone call to the Leadping inbox thread.",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID associated with the call conversation or outreach attempt.",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number used by this phone call for calls, SMS, lookup, or routing."
          },
          "toPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number used for this communication.",
            "nullable": true
          },
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call.",
            "nullable": true
          },
          "fromPhoneNumber": {
            "type": "string",
            "description": "Sender phone number used for this communication.",
            "nullable": true
          },
          "callerId": {
            "type": "string",
            "description": "Caller ID phone number presented during the outbound call.",
            "nullable": true
          },
          "selectionReason": {
            "enum": [
              "StickyConversation",
              "LeadAssigned",
              "CampaignOrSource",
              "Preferred",
              "LocalArea",
              "HealthyPool",
              "FallbackDefault",
              "ManualOverride"
            ],
            "type": "string",
            "description": "Defines the supported Outgoing Number Selection Reason values.",
            "nullable": true
          },
          "wasManuallyOverridden": {
            "type": "boolean",
            "description": "Indicates whether a user manually overrode Leadping's automatic number selection for this phone call."
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this phone call.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID used for attribution and routing on this call.",
            "nullable": true
          },
          "endedAt": {
            "type": "string",
            "description": "UTC timestamp when the call ended.",
            "format": "date-time",
            "nullable": true
          },
          "queuedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping queued this phone call for processing.",
            "format": "date-time",
            "nullable": true
          },
          "ringingAt": {
            "type": "string",
            "description": "UTC timestamp when the call started ringing.",
            "format": "date-time",
            "nullable": true
          },
          "answeredAt": {
            "type": "string",
            "description": "UTC timestamp when the call was answered.",
            "format": "date-time",
            "nullable": true
          },
          "durationSeconds": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Call duration in seconds.",
            "format": "int32",
            "nullable": true
          },
          "billingStatus": {
            "type": "string",
            "description": "Billing state for this communication, charge, or transaction.",
            "nullable": true
          },
          "billableAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Monetary amount billed for this Leadping communication or transaction.",
            "format": "double",
            "nullable": true
          },
          "recordingUrl": {
            "type": "string",
            "description": "URL for the call recording, when the provider makes one available.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API phone call returned to authenticated clients."
      },
      "PhoneCallStatus": {
        "enum": [
          "scheduled",
          "queued",
          "initiated",
          "ringing",
          "in_progress",
          "active",
          "completed",
          "ended",
          "busy",
          "no_answer",
          "failed",
          "canceled",
          "missed",
          "transferred",
          "voicemail",
          "blocked_billing",
          "blocked_phone_number_status",
          "blocked_configuration",
          "blocked_permission",
          "configuration_required"
        ],
        "type": "string",
        "description": "Defines the supported Phone Call Status values."
      },
      "PhoneNumberAvailabilityRequest": {
        "type": "object",
        "properties": {
          "phoneNumber": {
            "type": "string",
            "description": "Phone number to check for availability, formatted for provider lookup."
          }
        },
        "description": "Request schema for checking phone number availability before purchase or assignment."
      },
      "PhoneNumberAvailabilityResponse": {
        "type": "object",
        "properties": {
          "phoneNumber": {
            "type": "string",
            "description": "Phone number used by this phone number availability result for calls, SMS, lookup, or routing."
          },
          "isAvailable": {
            "type": "boolean",
            "description": "Indicates whether this phone number is available for purchase or assignment."
          },
          "price": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Lead price or transaction price supplied to the Leadping API.",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "description": "ISO currency code used for the monetary amounts in this phone number availability result.",
            "nullable": true
          },
          "location": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberLocation"
              }
            ],
            "description": "Geographic location metadata for the phone number, lead, or lookup result.",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API phone number availability result returned to authenticated clients."
      },
      "PhoneNumberLocation": {
        "type": "object",
        "properties": {
          "location": {
            "type": "string",
            "description": "Geographic location metadata for the phone number, lead, or lookup result.",
            "nullable": true
          },
          "state": {
            "type": "string",
            "description": "State, province, or region for the lead or business postal address.",
            "nullable": true
          },
          "countryCode": {
            "type": "string",
            "description": "Country code for the phone number or location represented by this phone number location.",
            "nullable": true
          },
          "coordinate": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/Coordinate"
              }
            ],
            "description": "Latitude and longitude coordinate for this phone number location.",
            "nullable": true
          },
          "timeZoneId": {
            "type": "string",
            "description": "IANA or Windows time zone identifier used for local scheduling and reporting.",
            "nullable": true
          }
        },
        "description": "Public Leadping API schema for phone number location data."
      },
      "PhoneNumberMessagingEventResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this phone number messaging event."
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this phone number messaging event was created.",
            "format": "date-time"
          },
          "label": {
            "type": "string",
            "description": "Short display label for this phone number messaging event, formatted for charts, filters, or list views."
          },
          "eventType": {
            "type": "string",
            "description": "Event type used to classify this timeline, SMS, call, or automation event."
          },
          "direction": {
            "type": "string",
            "description": "Communication direction for this phone number messaging event, such as inbound or outbound."
          },
          "fromPhoneNumber": {
            "type": "string",
            "description": "Sender phone number used for this communication."
          },
          "toPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number used for this communication."
          },
          "textPreview": {
            "type": "string",
            "description": "Short preview of the SMS or conversation text for this phone number messaging event."
          },
          "isOptOut": {
            "type": "boolean",
            "description": "Indicates whether the recipient has opted out of further SMS communication."
          }
        },
        "description": "Response schema for the Leadping API phone number messaging event returned to authenticated clients."
      },
      "PhoneNumberOptOutMetricsResponse": {
        "type": "object",
        "properties": {
          "windowDays": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of days included in the metrics reporting window.",
            "format": "int32"
          },
          "windowStartedAt": {
            "type": "string",
            "description": "UTC timestamp when the metrics reporting window starts.",
            "format": "date-time"
          },
          "distinctContactedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of distinct recipients contacted during this metrics window.",
            "format": "int32"
          },
          "optOutCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of recipients who opted out during this metrics window.",
            "format": "int32"
          },
          "optOutRatePercent": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Percentage of contacted recipients who opted out during this metrics window.",
            "format": "double"
          }
        },
        "description": "Response schema for the Leadping API phone number opt-out metrics response returned to authenticated clients."
      },
      "PhoneNumberOutboundHealthStatus": {
        "enum": [
          "unknown",
          "new",
          "healthy",
          "warmup",
          "limited",
          "cooling_down",
          "suspended",
          "disabled"
        ],
        "type": "string",
        "description": "Defines phone-number outbound health states used by pacing."
      },
      "PhoneNumberRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this phone number update request."
          },
          "businessId": {
            "type": "string",
            "description": "Business ID that owns the phone number being created or updated.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this phone number update request is active and available in the Leadping API."
          },
          "name": {
            "maxLength": 255,
            "minLength": 0,
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity, when updating an existing entity.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API phone number update request, including the fields clients can send."
      },
      "PhoneNumberResponse": {
        "type": "object",
        "properties": {
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this phone number."
          },
          "phoneIdentityId": {
            "type": "string",
            "description": "Identifier of the canonical phone identity for this number.",
            "nullable": true
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "Business summary connected to this phone number.",
            "nullable": true
          },
          "leadpingOwned": {
            "type": "boolean",
            "description": "Indicates whether Leadping provisions and manages this phone number."
          },
          "routing": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberRoutingMetadata"
              }
            ],
            "description": "Routing metadata that connects this phone number to teams, campaigns, and sources."
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this phone number is active and available in the Leadping API."
          },
          "warmup": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberWarmup"
              }
            ],
            "description": "SMS and voice warmup state for this phone number."
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API phone number returned to authenticated clients."
      },
      "PhoneNumberRoutingMetadata": {
        "type": "object",
        "properties": {
          "smsEnabled": {
            "type": "boolean",
            "description": "Indicates whether the phone number can be used for SMS messaging."
          },
          "voiceEnabled": {
            "type": "boolean",
            "description": "Indicates whether the phone number can be used for voice calls."
          },
          "teamId": {
            "type": "string",
            "description": "Team ID used to route calls and messages for this phone number.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID assigned to this phone number for attribution and routing.",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this phone number routing metadata.",
            "nullable": true
          }
        },
        "description": "Public Leadping API schema for phone number routing metadata data."
      },
      "PhoneNumberSearchRequest": {
        "type": "object",
        "properties": {
          "phoneNumber": {
            "type": "string",
            "description": "Phone number used by this phone number search request for calls, SMS, lookup, or routing.",
            "nullable": true
          },
          "location": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberLocation"
              }
            ],
            "description": "Geographic location metadata for the phone number, lead, or lookup result.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API phone number search request, including the fields clients can send."
      },
      "PhoneNumberSearchResponse": {
        "type": "object",
        "properties": {
          "numbers": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/PhoneNumberSearchResult"
                }
              ],
              "description": "Result schema for the Leadping API phone number search result returned by lookup and validation endpoints."
            },
            "description": "Phone numbers returned or evaluated by this phone number search response."
          }
        },
        "description": "Response schema for the Leadping API phone number search response returned to authenticated clients."
      },
      "PhoneNumberSearchResult": {
        "type": "object",
        "properties": {
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this phone number search result."
          },
          "location": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberLocation"
              }
            ],
            "description": "Geographic location metadata for the phone number, lead, or lookup result.",
            "nullable": true
          }
        },
        "description": "Result schema for the Leadping API phone number search result returned by lookup and validation endpoints."
      },
      "PhoneNumberStatusResponse": {
        "type": "object",
        "properties": {
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this phone number readiness status."
          },
          "messagesPossible": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Indicates whether this phone number can currently send SMS messages.",
            "format": "int32"
          },
          "callsPossible": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Indicates whether this phone number can currently place outbound calls.",
            "format": "int32"
          },
          "smsWarmup": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/SmsWarmupStatusResponse"
              }
            ],
            "description": "SMS sender warmup status for this phone number.",
            "nullable": true
          },
          "outboundCapacity": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/OutboundPhoneNumberCapacity"
              }
            ],
            "description": "Current outbound SMS and voice capacity for this phone number.",
            "nullable": true
          },
          "optOutMetrics": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberOptOutMetricsResponse"
              }
            ],
            "description": "Recent SMS opt-out metrics used to evaluate sender health and compliance risk."
          },
          "trafficMetrics": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberTrafficMetricsResponse"
              }
            ],
            "description": "Phone number traffic metrics for recent SMS and call activity."
          },
          "recentEvents": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/PhoneNumberMessagingEventResponse"
                }
              ],
              "description": "Response schema for the Leadping API phone number messaging event returned to authenticated clients."
            },
            "description": "Recent workflow events returned for timeline and troubleshooting."
          }
        },
        "description": "Response schema for the Leadping API phone number readiness status returned to authenticated clients."
      },
      "PhoneNumberTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this phone number table row."
          },
          "name": {
            "type": "string",
            "description": "Display name for this phone number table row in the Leadping API."
          },
          "number": {
            "type": "string",
            "description": "E.164 phone number exposed by this phone number table row."
          },
          "type": {
            "type": "string",
            "description": "Type classification used to route and interpret this phone number table row in the Leadping API."
          },
          "business": {
            "type": "string",
            "description": "Business summary connected to this phone number table row."
          },
          "businessId": {
            "type": "string",
            "description": "Unique Leadping business identifier connected to this phone number table row.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this phone number table row is active and available in the Leadping API."
          },
          "warmup": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PhoneNumberWarmup"
              }
            ],
            "description": "Warmup state for this phone number."
          },
          "ownership": {
            "type": "string",
            "description": "Ownership classification for this phone number, such as Leadping-owned or customer-owned."
          },
          "routingSummary": {
            "type": "string",
            "description": "Human-readable routing summary for this phone number."
          },
          "smsReady": {
            "type": "boolean",
            "description": "Indicates whether SMS messaging is ready for this business or phone number."
          },
          "voiceReady": {
            "type": "boolean",
            "description": "Indicates whether voice calling is ready for this business or phone number."
          },
          "tenDlcCampaignStatus": {
            "type": "string",
            "description": "10DLC campaign status associated with this sender or SMS event.",
            "nullable": true
          }
        },
        "description": "List item schema for Leadping API phone number table row results shown in searchable tables."
      },
      "PhoneNumberTrafficMetricsResponse": {
        "type": "object",
        "properties": {
          "windowDays": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of days included in the metrics reporting window.",
            "format": "int32"
          },
          "windowStartedAt": {
            "type": "string",
            "description": "UTC timestamp when the metrics reporting window starts.",
            "format": "date-time"
          },
          "smsSentCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages sent during this metrics window.",
            "format": "int32"
          },
          "smsFailedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages that failed during this metrics window.",
            "format": "int32"
          },
          "callPlacedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of outbound calls placed during this metrics window.",
            "format": "int32"
          },
          "callFailedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of outbound calls that failed during this metrics window.",
            "format": "int32"
          },
          "trend": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/PhoneNumberTrafficTrendPoint"
                }
              ],
              "description": "Time-series data point schema for Leadping API phone number traffic trend bucket charts and metrics."
            },
            "description": "Time-series buckets that show how the metric changes across the reporting window."
          }
        },
        "description": "Response schema for the Leadping API phone number traffic metrics response returned to authenticated clients."
      },
      "PhoneNumberTrafficTrendPoint": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "string",
            "description": "UTC timestamp when this reporting bucket starts.",
            "format": "date-time"
          },
          "endAt": {
            "type": "string",
            "description": "UTC timestamp when this reporting bucket ends.",
            "format": "date-time"
          },
          "label": {
            "type": "string",
            "description": "Short display label for this phone number traffic trend bucket, formatted for charts, filters, or list views."
          },
          "smsSentCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages sent during this metrics window.",
            "format": "int32"
          },
          "smsFailedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of SMS messages that failed during this metrics window.",
            "format": "int32"
          },
          "callPlacedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of outbound calls placed during this metrics window.",
            "format": "int32"
          },
          "callFailedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of outbound calls that failed during this metrics window.",
            "format": "int32"
          }
        },
        "description": "Time-series data point schema for Leadping API phone number traffic trend bucket charts and metrics."
      },
      "PhoneNumberWarmup": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether the phone number warmup is enabled in Leadping."
          },
          "state": {
            "enum": [
              "Not Started",
              "Warming",
              "Healthy",
              "Needs Attention",
              "Paused",
              "Blocked",
              "Ready"
            ],
            "type": "string",
            "description": "Defines the supported SMS Warmup Health State values.",
            "nullable": true
          },
          "healthStatus": {
            "enum": [
              "Not Started",
              "Warming",
              "Healthy",
              "Needs Attention",
              "Paused",
              "Blocked",
              "Ready"
            ],
            "type": "string",
            "description": "Defines the supported SMS Warmup Health State values.",
            "nullable": true
          },
          "healthScore": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Current warmup health score used to assess phone number readiness.",
            "format": "int32"
          },
          "progressPercent": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Warmup completion percentage, from 0 through 100.",
            "format": "int32"
          }
        },
        "description": "Warmup state for a Leadping phone number."
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "URI reference that identifies the problem type.",
            "nullable": true
          },
          "title": {
            "type": "string",
            "description": "Short, human-readable summary of the problem.",
            "nullable": true
          },
          "status": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "HTTP status code returned for the problem.",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "description": "Human-readable explanation specific to this occurrence of the problem.",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "description": "URI reference that identifies this specific occurrence of the problem.",
            "nullable": true
          }
        }
      },
      "RangeFilter": {
        "type": "object",
        "properties": {
          "greaterThan": {
            "description": "The exclusive lower bound for the field value."
          },
          "greaterThanOrEqual": {
            "description": "The inclusive lower bound for the field value."
          },
          "lessThan": {
            "description": "The exclusive upper bound for the field value."
          },
          "lessThanOrEqual": {
            "description": "The inclusive upper bound for the field value."
          },
          "field": {
            "type": "string",
            "description": "The field to filter by."
          }
        },
        "description": "A generic object for handling range filtering during querying"
      },
      "RequestDataOptions": {
        "type": "object",
        "properties": {
          "pageSize": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Maximum items to return in one page",
            "format": "int32"
          },
          "continuationToken": {
            "type": "string",
            "description": "Opaque Cosmos DB continuation token. ‑ on the **first** request. ‑ Client must echo back the NextToken it received from the previous page.",
            "nullable": true
          },
          "orderBy": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/OrderByOption"
                }
              ],
              "description": "An object for ordering during querying"
            },
            "description": "List of sort instructions, in priority order.",
            "nullable": true
          },
          "includeCount": {
            "type": "boolean",
            "description": "Whether to include the total count in the response (for pagination).",
            "nullable": true
          },
          "search": {
            "type": "string",
            "description": "The search term to filter results (applied to ).",
            "nullable": true
          },
          "searchFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of fields to apply the Search term to (must be string properties).",
            "nullable": true
          },
          "filters": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/ExactMatchFilter"
                }
              ],
              "description": "A generic object for handling exact match filtering during querying"
            },
            "description": "Key-value exact match filters (e.g., Status = Active).",
            "nullable": true
          },
          "rangeFilters": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/RangeFilter"
                }
              ],
              "description": "A generic object for handling range filtering during querying"
            },
            "description": "Advanced range-based filters (e.g., Price > 50 and Price <= 200).",
            "nullable": true
          }
        },
        "description": "Options for flexible, efficient, and explicit querying in Cosmos DB or similar repositories."
      },
      "SendSmsRequest": {
        "type": "object",
        "properties": {
          "smsEventId": {
            "type": "string",
            "description": "Existing SMS event ID to reuse or update when retrying a send request.",
            "nullable": true
          },
          "scheduledFor": {
            "type": "string",
            "description": "UTC timestamp when Leadping should send the SMS message.",
            "format": "date-time",
            "nullable": true
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this SMS send request to the Leadping inbox thread."
          },
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call.",
            "nullable": true
          },
          "wasManuallyOverridden": {
            "type": "boolean",
            "description": "Indicates whether a user manually overrode Leadping's automatic number selection for this SMS send request."
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this SMS send request.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID used for attribution and sender selection.",
            "nullable": true
          },
          "text": {
            "type": "string",
            "description": "Body text for the SMS message or communication represented by this SMS send request."
          },
          "outboundIdempotencyKey": {
            "type": "string",
            "description": "Idempotency key used to prevent duplicate outbound delivery.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API SMS send request, including the fields clients can send."
      },
      "SmsEventTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this SMS event table row."
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this SMS event table row to the Leadping inbox thread.",
            "nullable": true
          },
          "lead": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this lead."
          },
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call."
          },
          "outboundPhoneNumberId": {
            "type": "string",
            "description": "Phone number ID selected for outbound delivery."
          },
          "fromPhoneNumber": {
            "type": "string",
            "description": "Sender phone number used for this communication."
          },
          "toPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number used for this communication."
          },
          "text": {
            "type": "string",
            "description": "Body text for the SMS message or communication represented by this SMS event table row."
          },
          "status": {
            "enum": [
              "draft",
              "scheduled",
              "queued",
              "sending",
              "sent",
              "received",
              "delivered",
              "failed",
              "undeliverable",
              "opted_out",
              "blocked_compliance",
              "blocked_billing",
              "blocked_missing_campaign",
              "canceled"
            ],
            "type": "string",
            "description": "Defines the supported SMS Message Status values.",
            "nullable": true
          },
          "statusReason": {
            "type": "string",
            "description": "Human-readable reason explaining the current status of this SMS event table row.",
            "nullable": true
          },
          "direction": {
            "type": "string",
            "description": "Communication direction for this SMS event table row, such as inbound or outbound."
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this SMS event table row was created.",
            "format": "date-time"
          },
          "queuedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping queued this SMS event table row for processing.",
            "format": "date-time",
            "nullable": true
          },
          "scheduledFor": {
            "type": "string",
            "description": "UTC timestamp when this SMS event is scheduled to send.",
            "format": "date-time",
            "nullable": true
          },
          "scheduledReason": {
            "type": "string",
            "description": "Reason Leadping scheduled this delivery for a later time.",
            "nullable": true
          },
          "sendingStartedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping began sending this message.",
            "format": "date-time",
            "nullable": true
          },
          "sentAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping sent this message to the provider.",
            "format": "date-time",
            "nullable": true
          },
          "deliveredAt": {
            "type": "string",
            "description": "UTC timestamp when the provider confirmed delivery.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "UTC timestamp when processing failed for this SMS event table row.",
            "format": "date-time",
            "nullable": true
          },
          "undeliverableAt": {
            "type": "string",
            "description": "UTC timestamp when the provider marked the message undeliverable.",
            "format": "date-time",
            "nullable": true
          },
          "receivedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping received this inbound event or message.",
            "format": "date-time",
            "nullable": true
          },
          "blockedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping blocked this communication.",
            "format": "date-time",
            "nullable": true
          },
          "canceledAt": {
            "type": "string",
            "description": "UTC timestamp when this delivery or workflow was canceled.",
            "format": "date-time",
            "nullable": true
          },
          "cancelReason": {
            "type": "string",
            "description": "Reason this delivery, run, or request was canceled.",
            "nullable": true
          },
          "errorCode": {
            "type": "string",
            "description": "Machine-readable error code returned while processing this SMS event table row.",
            "nullable": true
          },
          "errorMessage": {
            "type": "string",
            "description": "Human-readable error message returned while processing this SMS event table row.",
            "nullable": true
          },
          "isAutomated": {
            "type": "boolean",
            "description": "Indicates whether automation created or triggered this SMS event table row."
          },
          "outboundSource": {
            "enum": [
              "manual",
              "automation",
              "campaign",
              "import",
              "api",
              "system_notification",
              "warmup",
              "retry"
            ],
            "type": "string",
            "description": "Defines the source that requested outbound delivery.",
            "nullable": true
          },
          "trafficType": {
            "enum": [
              "RealLead",
              "Warmup",
              "Test",
              "SystemInternal",
              "FailedAttempt"
            ],
            "type": "string",
            "description": "Defines the supported SMS Traffic Type values.",
            "nullable": true
          },
          "billableAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Monetary amount billed for this Leadping communication or transaction.",
            "format": "double",
            "nullable": true
          },
          "billingStatus": {
            "type": "string",
            "description": "Billing state for this communication, charge, or transaction.",
            "nullable": true
          },
          "complianceAction": {
            "type": "string",
            "description": "Compliance action applied to this message, lead, or sender.",
            "nullable": true
          },
          "user": {
            "type": "string",
            "description": "User summary connected to this SMS event table row."
          },
          "actorUserId": {
            "type": "string",
            "description": "User ID for the actor that performed the action.",
            "nullable": true
          },
          "actorDisplayName": {
            "type": "string",
            "description": "Display name for the actor that performed the action.",
            "nullable": true
          },
          "userName": {
            "type": "string",
            "description": "Display name for the user connected to this SMS event table row.",
            "nullable": true
          },
          "senderName": {
            "type": "string",
            "description": "Display name for the sender of this message.",
            "nullable": true
          },
          "business": {
            "type": "string",
            "description": "Business summary connected to this SMS event table row."
          },
          "businessName": {
            "type": "string",
            "description": "Business display name shown for this SMS event.",
            "nullable": true
          }
        },
        "description": "List item schema for Leadping API SMS event table row results shown in searchable tables."
      },
      "SmsMessageStatus": {
        "enum": [
          "draft",
          "scheduled",
          "queued",
          "sending",
          "sent",
          "received",
          "delivered",
          "failed",
          "undeliverable",
          "opted_out",
          "blocked_compliance",
          "blocked_billing",
          "blocked_missing_campaign",
          "canceled"
        ],
        "type": "string",
        "description": "Defines the supported SMS Message Status values."
      },
      "SmsResponse": {
        "type": "object",
        "properties": {
          "conversationId": {
            "type": "string",
            "description": "Conversation ID that links this SMS message to the Leadping inbox thread."
          },
          "leadId": {
            "type": "string",
            "description": "Lead ID associated with the SMS conversation or outreach attempt."
          },
          "fromPhoneNumberId": {
            "type": "string",
            "description": "Sender phone number ID used for this outbound SMS or call."
          },
          "outboundPhoneNumberId": {
            "type": "string",
            "description": "Phone number ID selected for outbound delivery."
          },
          "fromPhoneNumber": {
            "type": "string",
            "description": "Sender phone number used for this communication.",
            "nullable": true
          },
          "selectionReason": {
            "enum": [
              "StickyConversation",
              "LeadAssigned",
              "CampaignOrSource",
              "Preferred",
              "LocalArea",
              "HealthyPool",
              "FallbackDefault",
              "ManualOverride"
            ],
            "type": "string",
            "description": "Defines the supported Outgoing Number Selection Reason values.",
            "nullable": true
          },
          "wasManuallyOverridden": {
            "type": "boolean",
            "description": "Indicates whether a user manually overrode Leadping's automatic number selection for this SMS message."
          },
          "campaignId": {
            "type": "string",
            "description": "Messaging campaign identifier associated with this SMS message.",
            "nullable": true
          },
          "sourceId": {
            "type": "string",
            "description": "Lead source ID used for attribution and sender selection on this SMS message.",
            "nullable": true
          },
          "text": {
            "type": "string",
            "description": "Body text for the SMS message or communication represented by this SMS message."
          },
          "status": {
            "enum": [
              "draft",
              "scheduled",
              "queued",
              "sending",
              "sent",
              "received",
              "delivered",
              "failed",
              "undeliverable",
              "opted_out",
              "blocked_compliance",
              "blocked_billing",
              "blocked_missing_campaign",
              "canceled"
            ],
            "type": "string",
            "description": "Defines the supported SMS Message Status values.",
            "nullable": true
          },
          "statusReason": {
            "type": "string",
            "description": "Human-readable reason explaining the current status of this SMS message.",
            "nullable": true
          },
          "queuedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping queued this SMS message for processing.",
            "format": "date-time",
            "nullable": true
          },
          "scheduledFor": {
            "type": "string",
            "description": "UTC timestamp when Leadping is scheduled to send this SMS message.",
            "format": "date-time",
            "nullable": true
          },
          "scheduledReason": {
            "type": "string",
            "description": "Reason Leadping scheduled this delivery for a later time.",
            "nullable": true
          },
          "sendingStartedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping began sending this message.",
            "format": "date-time",
            "nullable": true
          },
          "sentAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping sent this message to the provider.",
            "format": "date-time",
            "nullable": true
          },
          "deliveredAt": {
            "type": "string",
            "description": "UTC timestamp when the provider confirmed delivery.",
            "format": "date-time",
            "nullable": true
          },
          "receivedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping received this inbound event or message.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "UTC timestamp when processing failed for this SMS message.",
            "format": "date-time",
            "nullable": true
          },
          "undeliverableAt": {
            "type": "string",
            "description": "UTC timestamp when the provider marked the message undeliverable.",
            "format": "date-time",
            "nullable": true
          },
          "blockedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping blocked this communication.",
            "format": "date-time",
            "nullable": true
          },
          "nextRetryAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping will retry this SMS message.",
            "format": "date-time",
            "nullable": true
          },
          "retryCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Number of retry attempts already made for this SMS message.",
            "format": "int32"
          },
          "canceledAt": {
            "type": "string",
            "description": "UTC timestamp when this delivery or workflow was canceled.",
            "format": "date-time",
            "nullable": true
          },
          "cancelReason": {
            "type": "string",
            "description": "Reason this delivery, run, or request was canceled.",
            "nullable": true
          },
          "errorCode": {
            "type": "string",
            "description": "Machine-readable error code returned while processing this SMS message.",
            "nullable": true
          },
          "errorMessage": {
            "type": "string",
            "description": "Human-readable error message returned while processing this SMS message.",
            "nullable": true
          },
          "trafficType": {
            "enum": [
              "RealLead",
              "Warmup",
              "Test",
              "SystemInternal",
              "FailedAttempt"
            ],
            "type": "string",
            "description": "Defines the supported SMS Traffic Type values.",
            "nullable": true
          },
          "billableAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Monetary amount billed for this Leadping communication or transaction.",
            "format": "double",
            "nullable": true
          },
          "billingStatus": {
            "type": "string",
            "description": "Billing state for this communication, charge, or transaction.",
            "nullable": true
          },
          "complianceAction": {
            "type": "string",
            "description": "Compliance action applied to this message, lead, or sender.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API SMS message returned to authenticated clients."
      },
      "SmsTrafficType": {
        "enum": [
          "RealLead",
          "Warmup",
          "Test",
          "SystemInternal",
          "FailedAttempt"
        ],
        "type": "string",
        "description": "Defines the supported SMS Traffic Type values."
      },
      "SmsWarmupHealthState": {
        "enum": [
          "Not Started",
          "Warming",
          "Healthy",
          "Needs Attention",
          "Paused",
          "Blocked",
          "Ready"
        ],
        "type": "string",
        "description": "Defines the supported SMS Warmup Health State values."
      },
      "SmsWarmupStatusResponse": {
        "type": "object",
        "properties": {
          "phoneNumberId": {
            "type": "string",
            "description": "The phone number ID associated with this SMS warmup status."
          },
          "phoneNumber": {
            "type": "string",
            "description": "The phone number associated with this SMS warmup status."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SmsWarmupHealthState"
              }
            ],
            "description": "The current status for this SMS warmup status."
          },
          "healthScore": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The health score metric for this SMS warmup status.",
            "format": "int32"
          },
          "progressPercent": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The progress percent metric for this SMS warmup status.",
            "format": "int32"
          },
          "warmupEnabled": {
            "type": "boolean",
            "description": "Whether warmup is enabled for this SMS warmup status."
          },
          "uiState": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SmsWarmupUiState"
              }
            ],
            "description": "The current UI state for this SMS warmup status."
          }
        },
        "description": "API response containing SMS warmup status data returned to callers."
      },
      "SmsWarmupUiState": {
        "type": "object",
        "properties": {
          "label": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SmsWarmupHealthState"
              }
            ],
            "description": "The human-readable label shown for this SMS warmup UI state."
          },
          "tone": {
            "type": "string",
            "description": "The tone value for this SMS warmup UI state."
          },
          "description": {
            "type": "string",
            "description": "The human-readable description of this SMS warmup UI state."
          }
        },
        "description": "API DTO containing SMS warmup ui state data used by Leadping API contracts."
      },
      "SortDirection": {
        "enum": [
          "asc",
          "desc"
        ],
        "type": "string",
        "description": "An enumerator for sort direction during querying"
      },
      "SourceMetricsResponse": {
        "type": "object",
        "properties": {
          "range": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AnalyticsDateRange"
              }
            ],
            "description": "Range associated with this Leadping source metrics."
          },
          "totalLeads": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of leads records represented by this Leadping source metrics.",
            "format": "int32"
          },
          "points": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/AnalyticsTrendPointOfint"
                }
              ],
              "description": "Represents analytics trend point data exposed by Leadping analytics."
            },
            "description": "Collection of points included with this Leadping source metrics."
          },
          "generatedAt": {
            "type": "string",
            "description": "Date and time when the source metrics was generated.",
            "format": "date-time"
          }
        },
        "description": "Response model containing source metrics data returned by the Leadping API."
      },
      "SourceRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this lead source request to API users.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this lead source request is active and available in the Leadping API."
          },
          "regenerateApiKey": {
            "type": "boolean",
            "description": "Indicates whether Leadping should issue a new API key for this source."
          },
          "costPerLead": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Configured cost charged when this source creates a billable lead.",
            "format": "double",
            "nullable": true
          },
          "allowedStates": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "State or region allowlist used to accept leads from this source."
          },
          "allowedProducts": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Product allowlist used to accept or route leads from this source."
          },
          "requiresTrustedForm": {
            "type": "boolean",
            "description": "Indicates whether leads from this source must include a TrustedForm certificate for consent proof."
          },
          "defaultTagIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag IDs automatically assigned to leads created by this source."
          },
          "defaultTagNames": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag names automatically assigned to leads created by this source."
          },
          "name": {
            "maxLength": 255,
            "minLength": 0,
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity, when updating an existing entity.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API lead source request, including the fields clients can send."
      },
      "SourceResponse": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this lead source response to API users.",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this lead source response is active and available in the Leadping API."
          },
          "apiKeyPreview": {
            "type": "string",
            "description": "Masked preview of the source API key for compact display.",
            "nullable": true
          },
          "firstLeadReceivedAt": {
            "type": "string",
            "description": "UTC timestamp when this source first delivered a lead to Leadping.",
            "format": "date-time",
            "nullable": true
          },
          "lastLeadReceivedAt": {
            "type": "string",
            "description": "UTC timestamp when this source most recently delivered a lead to Leadping.",
            "format": "date-time",
            "nullable": true
          },
          "user": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary connected to this lead source response.",
            "nullable": true
          },
          "createdByUser": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary for the person who created this lead source response.",
            "nullable": true
          },
          "modifiedByUser": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary for the person who last modified this lead source response.",
            "nullable": true
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "Business summary connected to this lead source response.",
            "nullable": true
          },
          "costPerLead": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Configured cost charged when this source creates a billable lead.",
            "format": "double",
            "nullable": true
          },
          "allowedStates": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "State or region allowlist used to accept leads from this source."
          },
          "allowedProducts": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Product allowlist used to accept or route leads from this source."
          },
          "requiresTrustedForm": {
            "type": "boolean",
            "description": "Indicates whether leads from this source must include a TrustedForm certificate for consent proof."
          },
          "complianceApproved": {
            "type": "boolean",
            "description": "Indicates whether the business or sender passed compliance review."
          },
          "defaultTagIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag IDs automatically assigned to leads created by this source."
          },
          "defaultTags": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/TagSummary"
                }
              ],
              "description": "Summary schema for Leadping API tag summary data used in dashboards and reports."
            },
            "description": "Default tag summaries automatically applied to leads from this source."
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API lead source response returned to authenticated clients."
      },
      "SourceTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this lead source table row."
          },
          "name": {
            "type": "string",
            "description": "Display name for this lead source table row in the Leadping API."
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this lead source table row to API users."
          },
          "apiKeyPreview": {
            "type": "string",
            "description": "Masked preview of the source API key for compact display."
          },
          "apiKeyLastUsedAt": {
            "type": "string",
            "description": "UTC timestamp when the source API key was last used.",
            "format": "date-time",
            "nullable": true
          },
          "apiKeyTotalUses": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of authenticated requests made with this source API key.",
            "format": "int64"
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this lead source table row was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "UTC timestamp when this lead source table row was last modified.",
            "format": "date-time"
          },
          "firstLeadReceivedAt": {
            "type": "string",
            "description": "UTC timestamp when this source first delivered a lead to Leadping.",
            "format": "date-time",
            "nullable": true
          },
          "lastLeadReceivedAt": {
            "type": "string",
            "description": "UTC timestamp when this source most recently delivered a lead to Leadping.",
            "format": "date-time",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Indicates whether this lead source table row is active and available in the Leadping API."
          },
          "user": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary connected to this lead source table row.",
            "nullable": true
          },
          "createdByUser": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary for the person who created this lead source table row.",
            "nullable": true
          },
          "modifiedByUser": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "User summary for the person who last modified this lead source table row.",
            "nullable": true
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "Business summary connected to this lead source table row.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "Business ID that owns this lead source.",
            "nullable": true
          },
          "costPerLead": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Configured cost charged when this source creates a billable lead.",
            "format": "double",
            "nullable": true
          },
          "allowedStates": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "State or region allowlist used to accept leads from this source."
          },
          "allowedProducts": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Product allowlist used to accept or route leads from this source."
          },
          "requiresTrustedForm": {
            "type": "boolean",
            "description": "Indicates whether leads from this source must include a TrustedForm certificate for consent proof."
          },
          "complianceApproved": {
            "type": "boolean",
            "description": "Indicates whether the business or sender passed compliance review."
          },
          "defaultTagIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tag IDs automatically assigned to leads created by this source."
          },
          "defaultTags": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/TagSummary"
                }
              ],
              "description": "Summary schema for Leadping API tag summary data used in dashboards and reports."
            },
            "description": "Default tag summaries automatically applied to leads from this source."
          }
        },
        "description": "List item schema for Leadping API lead source table row results shown in searchable tables."
      },
      "StreetAddress": {
        "type": "object",
        "properties": {
          "line1": {
            "type": "string",
            "description": "The primary address line (e.g., street address, P.O. box, company name).",
            "nullable": true
          },
          "line2": {
            "type": "string",
            "description": "The secondary address line (e.g., apartment, suite, unit, or building).",
            "nullable": true
          },
          "city": {
            "type": "string",
            "description": "The city, town, or locality.",
            "nullable": true
          },
          "state": {
            "type": "string",
            "description": "The state, province, or equivalent administrative region. Commonly used in countries like the US, Canada, and Australia.",
            "nullable": true
          },
          "province": {
            "type": "string",
            "description": "The province or territory, if distinct from state in your use case (optional, use with care).",
            "nullable": true
          },
          "region": {
            "type": "string",
            "description": "The broader region, district, or administrative area (e.g., prefecture or county).",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "description": "The postal or ZIP code.",
            "nullable": true
          },
          "country": {
            "type": "string",
            "description": "The ISO 3166-1 alpha-2 country code (e.g., \"US\", \"GB\", \"CA\").",
            "nullable": true
          },
          "additionalInfo": {
            "type": "string",
            "description": "Optional additional notes or delivery instructions.",
            "nullable": true
          }
        },
        "description": "A minimal, serializable record type for physical mailing addresses, with support for international formats and compatibility with common APIs."
      },
      "StripePaymentMethodResponse": {
        "required": [
          "id",
          "brand",
          "last4"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this Stripe payment method."
          },
          "brand": {
            "type": "string",
            "description": "The brand value for this Stripe payment method."
          },
          "last4": {
            "type": "string",
            "description": "The date and time for the last4 value on this Stripe payment method."
          },
          "expMonth": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The exp month value for this Stripe payment method.",
            "format": "int32"
          },
          "expYear": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The exp year value for this Stripe payment method.",
            "format": "int32"
          },
          "isDefault": {
            "type": "boolean",
            "description": "Whether this Stripe payment method is default."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this Stripe payment method.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API DTO containing stripe payment method data used by Leadping API contracts."
      },
      "SubscriptionStatus": {
        "enum": [
          "Pending",
          "Active",
          "Overdue",
          "Canceled"
        ],
        "type": "string",
        "description": "Defines the supported Subscription Status values."
      },
      "SuppressionCheckResult": {
        "type": "object",
        "properties": {
          "allowed": {
            "type": "boolean",
            "description": "Whether this ion check result allows ed."
          },
          "businessId": {
            "type": "string",
            "description": "The business ID associated with this ion check result.",
            "nullable": true
          },
          "recipientIdentifier": {
            "type": "string",
            "description": "The recipient identifier value for this ion check result.",
            "nullable": true
          },
          "normalizedPhoneNumber": {
            "type": "string",
            "description": "The phone number associated with this ion check result.",
            "nullable": true
          },
          "normalizedEmail": {
            "type": "string",
            "description": "The normalized email value for this ion check result.",
            "nullable": true
          },
          "channel": {
            "type": "string",
            "description": "The channel value for this ion check result.",
            "nullable": true
          },
          "suppressionEntryId": {
            "type": "string",
            "description": "The suppression entry ID associated with this ion check result.",
            "nullable": true
          },
          "source": {
            "type": "string",
            "description": "The source value on the active suppression entry that blocked this check.",
            "nullable": true
          },
          "suppressedAt": {
            "type": "string",
            "description": "The date and time the blocking suppression became active.",
            "format": "date-time",
            "nullable": true
          },
          "customerReason": {
            "type": "string",
            "description": "The human-readable customer reason explaining this ion check result.",
            "nullable": true
          }
        },
        "description": "API response containing suppression check result data returned to callers."
      },
      "SuppressionEntryAudit": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this ion entry audit."
          },
          "status": {
            "type": "string",
            "description": "The current status for this ion entry audit."
          },
          "source": {
            "type": "string",
            "description": "The source value for this ion entry audit."
          },
          "timestamp": {
            "type": "string",
            "description": "The date and time for the timestamp value on this ion entry audit.",
            "format": "date-time"
          },
          "actorId": {
            "type": "string",
            "description": "The actor ID associated with this ion entry audit.",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "description": "The human-readable reason explaining this ion entry audit.",
            "nullable": true
          },
          "safeMetadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The safe metadata key-value data carried with this ion entry audit; values must be safe to expose in API responses."
          }
        },
        "description": "API DTO containing ion entry audit data used by Leadping API contracts."
      },
      "SuppressionEntryRequest": {
        "type": "object",
        "properties": {
          "businessId": {
            "type": "string",
            "description": "The business ID associated with this ion entry."
          },
          "recipientIdentifier": {
            "type": "string",
            "description": "The recipient identifier value for this ion entry.",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "description": "The phone number associated with this ion entry.",
            "nullable": true
          },
          "email": {
            "type": "string",
            "description": "The email address associated with this ion entry.",
            "nullable": true
          },
          "channel": {
            "type": "string",
            "description": "The channel value for this ion entry."
          },
          "reason": {
            "type": "string",
            "description": "The human-readable reason explaining this ion entry.",
            "nullable": true
          }
        },
        "description": "Request payload for suppression entry."
      },
      "SuppressionEntryResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this ion entry.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "The business ID associated with this ion entry.",
            "nullable": true
          },
          "recipientIdentifier": {
            "type": "string",
            "description": "The recipient identifier value for this ion entry.",
            "nullable": true
          },
          "normalizedPhoneNumber": {
            "type": "string",
            "description": "The phone number associated with this ion entry.",
            "nullable": true
          },
          "normalizedEmail": {
            "type": "string",
            "description": "The normalized email value for this ion entry.",
            "nullable": true
          },
          "channel": {
            "type": "string",
            "description": "The channel value for this ion entry.",
            "nullable": true
          },
          "source": {
            "type": "string",
            "description": "The source value for this ion entry.",
            "nullable": true
          },
          "status": {
            "type": "string",
            "description": "The current status for this ion entry.",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "description": "The human-readable reason explaining this ion entry.",
            "nullable": true
          },
          "suppressedAt": {
            "type": "string",
            "description": "The date and time for the suppressed at value on this ion entry.",
            "format": "date-time",
            "nullable": true
          },
          "releasedAt": {
            "type": "string",
            "description": "The date and time for the released at value on this ion entry.",
            "format": "date-time",
            "nullable": true
          },
          "audit": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SuppressionEntryAudit"
                }
              ],
              "description": "API DTO containing ion entry audit data used by Leadping API contracts."
            },
            "description": "The audit included with this ion entry."
          }
        },
        "description": "API response containing suppression entry data returned to callers."
      },
      "TagRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Display name for this tag request in the Leadping API.",
            "nullable": true
          },
          "color": {
            "type": "string",
            "description": "Hex color used to display this tag or status in Leadping clients.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this tag request to API users.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity, when updating an existing entity.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API tag request, including the fields clients can send."
      },
      "TagResponse": {
        "type": "object",
        "properties": {
          "businessId": {
            "type": "string",
            "description": "Business ID that owns this tag.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Display name for this tag response in the Leadping API."
          },
          "normalizedName": {
            "type": "string",
            "description": "Normalized name used for case-insensitive tag matching and deduplication."
          },
          "color": {
            "type": "string",
            "description": "Hex color used to display this tag or status in Leadping clients.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this tag response to API users.",
            "nullable": true
          },
          "createdByUserId": {
            "type": "string",
            "description": "User ID of the person who created this tag response.",
            "nullable": true
          },
          "isArchived": {
            "type": "boolean",
            "description": "Indicates whether this lead or record is archived."
          },
          "archivedAt": {
            "type": "string",
            "description": "UTC timestamp when this record was archived.",
            "format": "date-time",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API tag response returned to authenticated clients."
      },
      "TagSummary": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this tag summary."
          },
          "name": {
            "type": "string",
            "description": "Display name for this tag summary in the Leadping API."
          },
          "normalizedName": {
            "type": "string",
            "description": "Normalized name used for case-insensitive tag matching and deduplication."
          },
          "color": {
            "type": "string",
            "description": "Hex color used to display this tag or status in Leadping clients.",
            "nullable": true
          }
        },
        "description": "Summary schema for Leadping API tag summary data used in dashboards and reports."
      },
      "TelephonyLoginRequest": {
        "type": "object",
        "properties": {
          "device": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this device.",
            "nullable": true
          }
        },
        "description": "Request model for telephony login token generation."
      },
      "TelephonyLoginResponse": {
        "type": "object",
        "properties": {
          "username": {
            "type": "string",
            "description": "The username value for this telephony login."
          },
          "password": {
            "type": "string",
            "description": "The password value for this telephony login."
          },
          "expiresAt": {
            "type": "string",
            "description": "The date and time for the expires at value on this telephony login.",
            "format": "date-time",
            "nullable": true
          },
          "callbackToken": {
            "type": "string",
            "description": "The callback token value for this telephony login."
          }
        },
        "description": "Response model for telephony login token generation."
      },
      "TenDlcApplicationDraft": {
        "type": "object",
        "properties": {
          "companyName": {
            "type": "string",
            "description": "The company name value for this 10DLC application draft.",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "description": "The contact name value for this 10DLC application draft.",
            "nullable": true
          },
          "contactEmail": {
            "type": "string",
            "description": "The contact email value for this 10DLC application draft.",
            "nullable": true
          },
          "contactPhone": {
            "type": "string",
            "description": "The contact phone value for this 10DLC application draft.",
            "nullable": true
          },
          "ein": {
            "type": "string",
            "description": "The EIN value for this 10DLC application draft.",
            "nullable": true
          },
          "websiteUrl": {
            "type": "string",
            "description": "The URL associated with this 10DLC application draft.",
            "nullable": true
          },
          "industry": {
            "type": "string",
            "description": "The industry value for this 10DLC application draft.",
            "nullable": true
          },
          "useCase": {
            "type": "string",
            "description": "The use case value for this 10DLC application draft.",
            "nullable": true
          },
          "useCaseDescription": {
            "type": "string",
            "description": "The use case description value for this 10DLC application draft.",
            "nullable": true
          },
          "messageExamples": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The message examples included with this 10DLC application draft."
          },
          "optInLanguage": {
            "type": "string",
            "description": "The opt in language value for this 10DLC application draft.",
            "nullable": true
          },
          "privacyPolicyUrl": {
            "type": "string",
            "description": "The URL associated with this 10DLC application draft.",
            "nullable": true
          },
          "termsUrl": {
            "type": "string",
            "description": "The URL associated with this 10DLC application draft.",
            "nullable": true
          },
          "expectedMonthlyVolume": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The expected monthly volume value for this 10DLC application draft.",
            "format": "int32",
            "nullable": true
          },
          "leadSource": {
            "type": "string",
            "description": "The lead source value for this 10DLC application draft.",
            "nullable": true
          },
          "trustedFormRequired": {
            "type": "boolean",
            "description": "Whether TrustedForm required applies to this 10DLC application draft."
          },
          "complianceWarnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The compliance warnings included with this 10DLC application draft."
          },
          "missingFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The missing fields included with this 10DLC application draft."
          },
          "lastSubmittedAt": {
            "type": "string",
            "description": "The date and time for the last submitted at value on this 10DLC application draft.",
            "format": "date-time",
            "nullable": true
          },
          "rejectionReason": {
            "type": "string",
            "description": "The human-readable rejection reason explaining this 10DLC application draft.",
            "nullable": true
          },
          "updatedAt": {
            "type": "string",
            "description": "The date and time for the updated at value on this 10DLC application draft.",
            "format": "date-time",
            "nullable": true
          },
          "version": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The version value for this 10DLC application draft.",
            "format": "int32"
          }
        },
        "description": "API DTO containing ten dlc application draft data used by Leadping API contracts."
      },
      "TenDlcApplicationStatus": {
        "enum": [
          "NotStarted",
          "DraftGenerated",
          "DraftNeedsAdminReview",
          "ReadyToSubmit",
          "Submitted",
          "PendingTelnyxReview",
          "Approved",
          "Rejected",
          "NeedsChanges",
          "ResubmissionReady",
          "Failed"
        ],
        "type": "string",
        "description": "Defines the supported 10DLC Application Status values."
      },
      "TransactionResponse": {
        "type": "object",
        "properties": {
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this business.",
            "nullable": true
          },
          "lead": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this lead.",
            "nullable": true
          },
          "amount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Monetary amount for this billing transaction or wallet operation.",
            "format": "double"
          },
          "netAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Net monetary amount after fees, credits, or adjustments.",
            "format": "double"
          },
          "gatewayFeeAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Payment gateway fee amount charged for the wallet transaction.",
            "format": "double",
            "nullable": true
          },
          "gatewayStatus": {
            "type": "string",
            "description": "Payment gateway status returned for this transaction.",
            "nullable": true
          },
          "platformFeeAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Leadping platform fee amount included in the transaction.",
            "format": "double",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "description": "Additional billing notes that explain the transaction for admins or customers.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this billing transaction response to API users.",
            "nullable": true
          },
          "paymentMethodDisplay": {
            "type": "string",
            "description": "Masked or human-readable payment method shown for this transaction.",
            "nullable": true
          },
          "transactionType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionType"
              }
            ],
            "description": "Debit or credit classification for this wallet transaction."
          },
          "transactionStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionStatus"
              }
            ],
            "description": "Processing status for this wallet transaction."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API billing transaction response returned to authenticated clients."
      },
      "TransactionStatus": {
        "enum": [
          "Pending",
          "Confirmed",
          "Failed"
        ],
        "type": "string",
        "description": "Defines the supported Transaction Status values."
      },
      "TransactionTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for this billing transaction table row."
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this business.",
            "nullable": true
          },
          "lead": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this lead.",
            "nullable": true
          },
          "amount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Monetary amount for this billing transaction or wallet operation.",
            "format": "double"
          },
          "netAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Net monetary amount after fees, credits, or adjustments.",
            "format": "double"
          },
          "transactionType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionType"
              }
            ],
            "description": "Debit or credit classification for this wallet transaction."
          },
          "transactionStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TransactionStatus"
              }
            ],
            "description": "Processing status for this wallet transaction."
          },
          "paymentMethodDisplay": {
            "type": "string",
            "description": "Masked or human-readable payment method shown for this transaction.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Human-readable description that explains this billing transaction table row to API users.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "UTC timestamp when this billing transaction table row was created.",
            "format": "date-time"
          }
        },
        "description": "List item schema for Leadping API billing transaction table row results shown in searchable tables."
      },
      "TransactionType": {
        "enum": [
          "Debit",
          "Adjustment",
          "Deposit"
        ],
        "type": "string",
        "description": "Defines the supported Transaction Type values."
      },
      "TrustedFormCertificate": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this TrustedForm certificate.",
            "nullable": true
          },
          "url": {
            "type": "string",
            "description": "The URL associated with this TrustedForm certificate."
          },
          "source": {
            "type": "string",
            "description": "The source value for this TrustedForm certificate.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this TrustedForm certificate.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API DTO containing trusted form certificate data used by Leadping API contracts."
      },
      "UsageChannel": {
        "enum": [
          "sms",
          "mms",
          "email",
          "voice",
          "phone_number",
          "warmup",
          "website",
          "domain",
          "10dlc",
          "connection",
          "automation"
        ],
        "type": "string",
        "description": "Defines the supported Usage Channel values."
      },
      "UsageCounterLine": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "The stable key for this usage counter."
          },
          "label": {
            "type": "string",
            "description": "The human-readable label for this usage counter."
          },
          "value": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The numeric value for this usage counter.",
            "format": "double"
          },
          "unit": {
            "type": "string",
            "description": "The unit label for this usage counter."
          },
          "sortOrder": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The display order for this usage counter.",
            "format": "int32"
          }
        },
        "description": "API DTO containing a named usage counter shown in usage summaries."
      },
      "UsageLedgerTableRow": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID for this usage ledger."
          },
          "business": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this business.",
            "nullable": true
          },
          "user": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this user.",
            "nullable": true
          },
          "lead": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The ID and name for this lead.",
            "nullable": true
          },
          "phoneNumberId": {
            "type": "string",
            "description": "The phone number ID associated with this usage ledger.",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "description": "The phone number associated with this usage ledger.",
            "nullable": true
          },
          "channel": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UsageChannel"
              }
            ],
            "description": "The channel value for this usage ledger."
          },
          "billableUnit": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BillableUnit"
              }
            ],
            "description": "The billable unit value for this usage ledger."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UsageRecordStatus"
              }
            ],
            "description": "The current status for this usage ledger."
          },
          "quantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The quantity value for this usage ledger.",
            "format": "double"
          },
          "durationSeconds": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The duration seconds value for this usage ledger.",
            "format": "int32",
            "nullable": true
          },
          "billableSeconds": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The billable seconds value for this usage ledger.",
            "format": "int32",
            "nullable": true
          },
          "smsSegments": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The SMS segments value for this usage ledger.",
            "format": "int32",
            "nullable": true
          },
          "unitPrice": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The unit price value for this usage ledger.",
            "format": "double"
          },
          "customerChargeAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The monetary customer charge amount for this usage ledger.",
            "format": "double"
          },
          "isBillable": {
            "type": "boolean",
            "description": "Whether this usage ledger is billable."
          },
          "description": {
            "type": "string",
            "description": "The human-readable description of this usage ledger.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time for the created at value on this usage ledger.",
            "format": "date-time"
          }
        },
        "description": "API DTO containing usage ledger data used by Leadping API contracts."
      },
      "UsageRecordStatus": {
        "enum": [
          "recorded",
          "rated",
          "pending_invoice",
          "invoiced",
          "charged",
          "failed",
          "refunded_credited",
          "non_billable_internal",
          "blocked_due_to_billing"
        ],
        "type": "string",
        "description": "Defines the supported Usage Record Status values."
      },
      "UsageSummaryLine": {
        "type": "object",
        "properties": {
          "channel": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UsageChannel"
              }
            ],
            "description": "The channel value for this usage summary line."
          },
          "billableUnit": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BillableUnit"
              }
            ],
            "description": "The billable unit value for this usage summary line."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UsageRecordStatus"
              }
            ],
            "description": "The current status for this usage summary line."
          },
          "quantity": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The quantity value for this usage summary line.",
            "format": "double"
          },
          "customerChargeAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The monetary customer charge amount for this usage summary line.",
            "format": "double"
          },
          "recordCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The record count for this usage summary line.",
            "format": "int32"
          }
        },
        "description": "API DTO containing usage summary line data used by Leadping API contracts."
      },
      "UsageSummaryResponse": {
        "type": "object",
        "properties": {
          "periodStart": {
            "type": "string",
            "description": "The date and time for the period start value on this usage summary.",
            "format": "date-time"
          },
          "periodEnd": {
            "type": "string",
            "description": "The date and time for the period end value on this usage summary.",
            "format": "date-time"
          },
          "customerChargeTotal": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The customer charge total for this usage summary.",
            "format": "double"
          },
          "billableQuantityTotal": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "The billable quantity total for this usage summary.",
            "format": "double"
          },
          "usageRecordCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The usage record count for this usage summary.",
            "format": "int32"
          },
          "pendingInvoiceCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The pending invoice count for this usage summary.",
            "format": "int32"
          },
          "failedCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "The failed count for this usage summary.",
            "format": "int32"
          },
          "lines": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/UsageSummaryLine"
                }
              ],
              "description": "API DTO containing usage summary line data used by Leadping API contracts."
            },
            "description": "The lines included with this usage summary."
          },
          "counters": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/UsageCounterLine"
                }
              ],
              "description": "API DTO containing a named usage counter shown in usage summaries."
            },
            "description": "The named usage counters included with this usage summary."
          }
        },
        "description": "API DTO containing usage summary response data."
      },
      "UserCompliance": {
        "type": "object",
        "properties": {
          "acceptedTerms": {
            "type": "boolean",
            "description": "Whether the user accepted terms for this user compliance."
          },
          "acceptedToSubscription": {
            "type": "boolean",
            "description": "Whether the user accepted subscription for this user compliance."
          },
          "acceptedSms": {
            "type": "boolean",
            "description": "Whether the user accepted SMS for this user compliance."
          },
          "acceptedBaa": {
            "type": "boolean",
            "description": "Whether the user accepted BAA for this user compliance."
          },
          "acceptedEmail": {
            "type": "boolean",
            "description": "Whether the user accepted email for this user compliance."
          },
          "trustedFormCertificates": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/TrustedFormCertificate"
                }
              ],
              "description": "API DTO containing trusted form certificate data used by Leadping API contracts."
            },
            "description": "The TrustedForm certificates included with this user compliance.",
            "nullable": true
          }
        },
        "description": "API DTO containing user compliance data used by Leadping API contracts."
      },
      "UserDataExportFile": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "description": "Category classification for this Leadping user data export file."
          },
          "fileName": {
            "type": "string",
            "description": "Human-readable file name associated with this Leadping user data export file."
          },
          "contentType": {
            "type": "string",
            "description": "Media type of the generated file or response content."
          },
          "rowCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of row records represented by this Leadping user data export file.",
            "format": "int32"
          }
        },
        "description": "Response model containing user data export file data returned by the Leadping API."
      },
      "UserDataExportResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Leadping identifier for the user data export."
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDataExportStatuses"
              }
            ],
            "description": "Current status for this Leadping user data export."
          },
          "requestedAt": {
            "type": "string",
            "description": "Date and time when the user data export was requested.",
            "format": "date-time"
          },
          "startedAt": {
            "type": "string",
            "description": "Date and time when the user data export started.",
            "format": "date-time",
            "nullable": true
          },
          "completedAt": {
            "type": "string",
            "description": "Date and time when the user data export completed.",
            "format": "date-time",
            "nullable": true
          },
          "failedAt": {
            "type": "string",
            "description": "Date and time when the user data export failed.",
            "format": "date-time",
            "nullable": true
          },
          "expiresAt": {
            "type": "string",
            "description": "Date and time when the user data export expires.",
            "format": "date-time"
          },
          "message": {
            "type": "string",
            "description": "Human-readable message for this Leadping user data export.",
            "nullable": true
          },
          "downloadUrl": {
            "type": "string",
            "description": "Temporary URL for downloading the completed Leadping data export.",
            "nullable": true
          },
          "fileName": {
            "type": "string",
            "description": "Human-readable file name associated with this Leadping user data export.",
            "nullable": true
          },
          "contentType": {
            "type": "string",
            "description": "Media type of the generated file or response content.",
            "nullable": true
          },
          "sizeBytes": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "File size in bytes.",
            "format": "int64",
            "nullable": true
          },
          "downloadCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of download records represented by this Leadping user data export.",
            "format": "int32"
          },
          "maxDownloadCount": {
            "pattern": "^-?(?:0|[1-9]\\d*)$",
            "description": "Total number of max download records represented by this Leadping user data export.",
            "format": "int32"
          },
          "files": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/UserDataExportFile"
                }
              ],
              "description": "Response model containing user data export file data returned by the Leadping API."
            },
            "description": "Collection of files included with this Leadping user data export."
          }
        },
        "description": "Response model containing user data export data returned by the Leadping API."
      },
      "UserDataExportStatuses": {
        "enum": [
          "Pending",
          "Processing",
          "Completed",
          "Failed",
          "Expired"
        ],
        "type": "string",
        "description": "Defines the supported user data export statuses values."
      },
      "UserIdentity": {
        "type": "object",
        "properties": {
          "issuer": {
            "type": "string",
            "description": "Gets or sets the identity provider that issued the sign-in identity (e.g., \"contoso.com\" or \"facebook.com\")."
          },
          "issuerAssignedId": {
            "type": "string",
            "description": "Gets or sets the unique identifier assigned to the user by the identity provider."
          },
          "signInType": {
            "type": "string",
            "description": "Gets or sets the method of sign-in used by the identity (e.g., \"emailAddress\", \"userName\", or \"federated\")."
          }
        },
        "description": "Represents a user's sign-in identity, including information about the identity provider and method of authentication."
      },
      "UserNotificationPreferences": {
        "type": "object",
        "properties": {
          "paymentFailedEnabled": {
            "type": "boolean",
            "description": "Whether payment failed notifications are enabled for this user notification preferences."
          },
          "paymentFailedSmsEnabled": {
            "type": "boolean",
            "description": "Indicates whether payment failed SMS functionality is enabled for this Leadping user notification preferences."
          },
          "lowWalletBalanceEnabled": {
            "type": "boolean",
            "description": "Whether low wallet balance notifications are enabled for this user notification preferences."
          },
          "lowWalletBalanceEmailEnabled": {
            "type": "boolean",
            "description": "Indicates whether low wallet balance email functionality is enabled for this Leadping user notification preferences."
          },
          "lowWalletBalanceSmsEnabled": {
            "type": "boolean",
            "description": "Indicates whether low wallet balance SMS functionality is enabled for this Leadping user notification preferences."
          },
          "tenDlcStatusEnabled": {
            "type": "boolean",
            "description": "Whether 10DLC status notifications are enabled for this user notification preferences."
          },
          "newLeadEnabled": {
            "type": "boolean",
            "description": "Whether new lead notifications are enabled for this user notification preferences."
          },
          "newLeadEmailEnabled": {
            "type": "boolean",
            "description": "Whether new lead email is enabled for this user notification preferences."
          },
          "newLeadSmsEnabled": {
            "type": "boolean",
            "description": "Whether new lead SMS is enabled for this user notification preferences."
          },
          "missedCallEnabled": {
            "type": "boolean",
            "description": "Whether missed call notifications are enabled for this user notification preferences."
          },
          "missedCallEmailEnabled": {
            "type": "boolean",
            "description": "Indicates whether missed call email functionality is enabled for this Leadping user notification preferences."
          },
          "missedCallSmsEnabled": {
            "type": "boolean",
            "description": "Indicates whether missed call SMS functionality is enabled for this Leadping user notification preferences."
          },
          "unreadSmsEnabled": {
            "type": "boolean",
            "description": "Whether unread SMS notifications are enabled for this user notification preferences."
          },
          "unreadSmsEmailEnabled": {
            "type": "boolean",
            "description": "Indicates whether unread SMS email functionality is enabled for this Leadping user notification preferences."
          },
          "unreadSmsSmsEnabled": {
            "type": "boolean",
            "description": "Indicates whether unread SMS SMS functionality is enabled for this Leadping user notification preferences."
          },
          "automationFailedEnabled": {
            "type": "boolean",
            "description": "Whether automation failed notifications are enabled for this user notification preferences."
          },
          "automationFailedEmailEnabled": {
            "type": "boolean",
            "description": "Indicates whether automation failed email functionality is enabled for this Leadping user notification preferences."
          },
          "automationFailedSmsEnabled": {
            "type": "boolean",
            "description": "Indicates whether automation failed SMS functionality is enabled for this Leadping user notification preferences."
          },
          "billingEmailEnabled": {
            "type": "boolean",
            "description": "Whether billing email is enabled for this user notification preferences."
          },
          "billingSmsEnabled": {
            "type": "boolean",
            "description": "Whether billing SMS is enabled for this user notification preferences."
          },
          "subscriptionRenewingEnabled": {
            "type": "boolean",
            "description": "Whether subscription renewing notifications are enabled for this user notification preferences."
          },
          "subscriptionRenewingEmailEnabled": {
            "type": "boolean",
            "description": "Indicates whether subscription renewing email functionality is enabled for this Leadping user notification preferences."
          },
          "subscriptionRenewingSmsEnabled": {
            "type": "boolean",
            "description": "Indicates whether subscription renewing SMS functionality is enabled for this Leadping user notification preferences."
          },
          "usageLimitHitEnabled": {
            "type": "boolean",
            "description": "Whether usage limit hit notifications are enabled for this user notification preferences."
          }
        },
        "description": "API DTO containing user notification preferences data used by Leadping API contracts."
      },
      "UserRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "Email address for the person represented by this user profile request.",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "description": "First name of the lead, user, or contact represented by this user profile request.",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the lead, user, or contact represented by this user profile request.",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "Phone details for the lead, user, or business represented by this user profile request.",
            "nullable": true
          },
          "billingPlan": {
            "enum": [
              "Annual",
              "Monthly"
            ],
            "type": "string",
            "description": "Defines the supported Billing Plan values.",
            "nullable": true
          },
          "currentBusiness": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "Business currently selected for the user session or profile.",
            "nullable": true
          },
          "compliance": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserCompliance"
              }
            ],
            "description": "User compliance settings and attestations captured for Leadping account review.",
            "nullable": true
          },
          "notificationPreferences": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserNotificationPreferences"
              }
            ],
            "description": "Notification preferences configured for the user.",
            "nullable": true
          },
          "mobileDevicePreferences": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/MobileDevicePreferences"
                }
              ],
              "description": "API DTO containing Leadping mobile preferences for a single user device."
            },
            "description": "Mobile notification preferences configured for the user.",
            "nullable": true
          },
          "name": {
            "maxLength": 255,
            "minLength": 0,
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity, when updating an existing entity.",
            "nullable": true
          }
        },
        "description": "Request schema for the Leadping API user profile request, including the fields clients can send."
      },
      "UserResponse": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The email address associated with this user."
          },
          "firstName": {
            "type": "string",
            "description": "The first name value for this user.",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "description": "The date and time for the last name value on this user.",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "description": "The phone number associated with this user.",
            "nullable": true
          },
          "billingPlan": {
            "enum": [
              "Annual",
              "Monthly"
            ],
            "type": "string",
            "description": "Defines the supported Billing Plan values.",
            "nullable": true
          },
          "subscriptionStatus": {
            "enum": [
              "Pending",
              "Active",
              "Overdue",
              "Canceled"
            ],
            "type": "string",
            "description": "Defines the supported Subscription Status values.",
            "nullable": true
          },
          "billingState": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/BusinessBillingState"
              }
            ],
            "description": "Customer-safe billing state for the user's currently selected business.",
            "nullable": true
          },
          "roles": {
            "type": "array",
            "description": "The roles included with this user.",
            "nullable": true
          },
          "identities": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/UserIdentity"
                }
              ],
              "description": "Represents a user's sign-in identity, including information about the identity provider and method of authentication."
            },
            "description": "The identities included with this user.",
            "nullable": true
          },
          "currentBusiness": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdNamePair"
              }
            ],
            "description": "The current business value for this user.",
            "nullable": true
          },
          "compliance": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserCompliance"
              }
            ],
            "description": "The compliance value for this user.",
            "nullable": true
          },
          "notificationPreferences": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserNotificationPreferences"
              }
            ],
            "description": "The notification preferences value for this user.",
            "nullable": true
          },
          "mobileDevicePreferences": {
            "type": "array",
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/MobileDevicePreferences"
                }
              ],
              "description": "API DTO containing Leadping mobile preferences for a single user device."
            },
            "description": "The Leadping mobile device preferences for this user.",
            "nullable": true
          },
          "lastLoggedInAt": {
            "type": "string",
            "description": "The date and time when this user last completed the Leadping sign-in flow.",
            "format": "date-time",
            "nullable": true
          },
          "personalDataDeletionRequestedAt": {
            "type": "string",
            "description": "The date and time for the personal data deletion requested at value on this user.",
            "format": "date-time",
            "nullable": true
          },
          "personalDataDeletedAt": {
            "type": "string",
            "description": "The date and time for the personal data deleted at value on this user.",
            "format": "date-time",
            "nullable": true
          },
          "personalDataDeletionStatus": {
            "type": "string",
            "description": "The current personal data deletion status for this user.",
            "nullable": true
          },
          "personalDataDeletionReason": {
            "type": "string",
            "description": "The human-readable personal data deletion reason explaining this user.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "API response containing user data returned to callers."
      },
      "UserSetupStatus": {
        "enum": [
          "Personal",
          "Business",
          "Details",
          "Compliance",
          "Phone",
          "Plan",
          "Billing",
          "Review",
          "Complete"
        ],
        "type": "string",
        "description": "Defines the supported User Setup Status values."
      },
      "WalletCreditSourceType": {
        "enum": [
          "purchase",
          "promo",
          "admin_adjustment",
          "refund_adjustment",
          "chargeback_reversal",
          "compromise_restoration"
        ],
        "type": "string",
        "description": "Defines the source that created a wallet credit lot."
      },
      "WalletCreditStatus": {
        "enum": [
          "active",
          "consumed",
          "expired",
          "refunded",
          "voided",
          "disputed"
        ],
        "type": "string",
        "description": "Defines the lifecycle state for a wallet credit lot."
      },
      "WalletResponse": {
        "type": "object",
        "properties": {
          "balance": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Wallet or account balance after this transaction is applied.",
            "format": "double",
            "nullable": true
          },
          "balanceCalculatedAt": {
            "type": "string",
            "description": "UTC timestamp when Leadping last calculated the wallet balance.",
            "format": "date-time",
            "nullable": true
          },
          "amountPurchased": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Amount of wallet credit purchased in this deposit.",
            "format": "double",
            "nullable": true
          },
          "amountRemaining": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Amount of wallet credit still available for future usage.",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "description": "ISO currency code used for the monetary amounts in this billing wallet response.",
            "nullable": true
          },
          "purchasedAt": {
            "type": "string",
            "description": "UTC timestamp when the wallet credit was purchased.",
            "format": "date-time",
            "nullable": true
          },
          "expiresAt": {
            "type": "string",
            "description": "UTC timestamp when the wallet credit expires.",
            "format": "date-time",
            "nullable": true
          },
          "sourceType": {
            "enum": [
              "purchase",
              "promo",
              "admin_adjustment",
              "refund_adjustment",
              "chargeback_reversal",
              "compromise_restoration"
            ],
            "type": "string",
            "description": "Defines the source that created a wallet credit lot.",
            "nullable": true
          },
          "creditStatus": {
            "enum": [
              "active",
              "consumed",
              "expired",
              "refunded",
              "voided",
              "disputed"
            ],
            "type": "string",
            "description": "Defines the lifecycle state for a wallet credit lot.",
            "nullable": true
          },
          "businessId": {
            "type": "string",
            "description": "Business ID that owns this wallet balance or credit.",
            "nullable": true
          },
          "originalTransactionId": {
            "type": "string",
            "description": "Original wallet transaction ID referenced by a reversal, refund, or adjustment.",
            "nullable": true
          },
          "nextCreditExpirationAt": {
            "type": "string",
            "description": "UTC timestamp when the next wallet credit amount expires.",
            "format": "date-time",
            "nullable": true
          },
          "nextExpiringCreditAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Amount of wallet credit scheduled to expire next.",
            "format": "double",
            "nullable": true
          },
          "expiredCreditAmount": {
            "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$",
            "description": "Amount of wallet credit that has expired.",
            "format": "double",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The display name for the entity."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the entity."
          },
          "createdAt": {
            "type": "string",
            "description": "The date and time when the entity was created.",
            "format": "date-time"
          },
          "modifiedAt": {
            "type": "string",
            "description": "The date and time when the entity was last modified, if applicable.",
            "format": "date-time",
            "nullable": true
          }
        },
        "description": "Response schema for the Leadping API billing wallet response returned to authenticated clients."
      },
      "WebsiteLifecycleStatus": {
        "enum": [
          "NotStarted",
          "DomainSuggestionsPending",
          "DomainSelectionPending",
          "DomainPurchasePending",
          "DomainPurchased",
          "WebsiteGenerationQueued",
          "WebsiteGenerating",
          "WebsiteDeploymentQueued",
          "WebsiteDeploying",
          "WebsiteLive",
          "WebsiteFailed",
          "ManuallyBypassed"
        ],
        "type": "string",
        "description": "Defines the supported Website Lifecycle Status values."
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "apiKey",
        "description": "Authorization header using the Bearer scheme. Accepted values are Leadping user JWT access tokens, Leadping business API keys beginning with lp_ but not lp_src_, and Leadping source keys beginning with lp_src_ on lead ingestion endpoints only.",
        "name": "Authorization",
        "in": "header"
      },
      "BusinessApiKey": {
        "type": "apiKey",
        "description": "Leadping business API key using the Authorization header. Example: \"Authorization: Bearer lp_...\".",
        "name": "Authorization",
        "in": "header"
      },
      "SourceKey": {
        "type": "apiKey",
        "description": "Leadping source key for lead ingestion endpoints only using the Authorization header. Example: \"Authorization: Bearer lp_src_...\".",
        "name": "Authorization",
        "in": "header"
      },
      "SourceKeyQuery": {
        "type": "apiKey",
        "description": "Leadping source key supplied as the sourceKey query parameter. Supported only by lead ingestion endpoints.",
        "name": "sourceKey",
        "in": "query"
      }
    }
  },
  "tags": [
    {
      "name": "Analytics"
    },
    {
      "name": "Automations"
    },
    {
      "name": "Contact"
    },
    {
      "name": "Conversations"
    },
    {
      "name": "Dispositions"
    },
    {
      "name": "Feedback"
    },
    {
      "name": "Leads"
    },
    {
      "name": "Notifications"
    },
    {
      "name": "OutboundDelivery"
    },
    {
      "name": "Sources"
    },
    {
      "name": "Suppressions"
    },
    {
      "name": "Tags"
    },
    {
      "name": "Users"
    },
    {
      "name": "Calls"
    },
    {
      "name": "PhoneNumbers"
    },
    {
      "name": "Sms"
    },
    {
      "name": "Telephony"
    },
    {
      "name": "UserDataExports"
    },
    {
      "name": "CallEvents"
    },
    {
      "name": "Events"
    },
    {
      "name": "SmsEvents"
    },
    {
      "name": "Businesses"
    },
    {
      "name": "PaymentMethods"
    },
    {
      "name": "Transactions"
    },
    {
      "name": "Usage"
    },
    {
      "name": "Wallets"
    }
  ]
}