{
  "openapi": "3.1.0",
  "info": {
    "title": "Resellers APIs",
    "description": "Reseller account management: profile and branding, premium domain selling status,\nsub-reseller operations, and reseller product mappings.\n",
    "version": "2.0.0"
  },
  "servers": [
    {
      "url": "https://api.sandbox.resellerclub.com/v2",
      "description": "Sandbox"
    },
    {
      "url": "https://api.resellerclub.com/v2",
      "description": "Live"
    }
  ],
  "security": [
    {
      "apiKeyAuth": [],
      "userIdHeader": []
    }
  ],
  "paths": {
    "/resellers/{resellerId}/suspension": {
      "put": {
        "tags": [
          "Resellers APIs"
        ],
        "summary": "Suspend or unsuspend a reseller account",
        "description": "Suspends or unsuspends a reseller account.",
        "operationId": "updateResellerSuspension",
        "parameters": [
          {
            "name": "resellerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateResellerSuspensionRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateResellerSuspensionResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          }
        }
      }
    },
    "/resellers": {
      "get": {
        "tags": [
          "Resellers APIs"
        ],
        "summary": "Search and list resellers",
        "description": "Returns sub-resellers matching the search criteria, with pagination.",
        "operationId": "searchResellers",
        "parameters": [
          {
            "name": "noOfRecords",
            "in": "query",
            "description": "Number of records to be fetched. This should be a value between 10 to 500.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageNo",
            "in": "query",
            "description": "Page number for which details are to be fetched",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "username",
            "in": "query",
            "description": "Username of Sub-Reseller. Username should be an email address.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "Name of Sub-Reseller",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "company",
            "in": "query",
            "description": "Company Name of Sub-Reseller",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "city",
            "in": "query",
            "description": "City",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "description": "State",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "country",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/SearchResellersResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          }
        },
        "x-v2-response-schema": "SearchResellersResponse"
      },
      "post": {
        "tags": [
          "Resellers APIs"
        ],
        "summary": "Create a new reseller account",
        "description": "Creates a Sub-Reseller Account using the details provided.",
        "operationId": "createReseller",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateResellerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/CreateResellerResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          }
        },
        "x-v2-response-schema": "CreateResellerResponse"
      }
    },
    "/resellers/products/sign-up": {
      "post": {
        "tags": [
          "Resellers APIs"
        ],
        "summary": "Sign up reseller for additional products",
        "description": "Signs up the reseller for additional products.",
        "operationId": "signUpResellerProducts",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SignUpResellerProductsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/SignUpResellerProductsResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          }
        },
        "x-v2-response-schema": "SignUpResellerProductsResponse"
      }
    },
    "/resellers/profile": {
      "get": {
        "tags": [
          "Resellers APIs"
        ],
        "summary": "Get reseller profile details",
        "description": "Returns Reseller-specific details such as Branding, Personal Details, etc.",
        "operationId": "getResellerProfile",
        "parameters": [
          {
            "name": "resellerId",
            "in": "query",
            "description": "Reseller Id of the Sub-Reseller whose details need to be fetched. In case the Reseller Id is not provided, details of the Reseller making the API call will be returned.",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GetResellerProfileResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          }
        },
        "x-v2-response-schema": "GetResellerProfileResponse"
      },
      "patch": {
        "tags": [
          "Resellers APIs"
        ],
        "summary": "Update reseller profile details",
        "description": "Modifies the Account details of the specified Sub-Reseller.",
        "operationId": "updateResellerProfile",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateResellerProfileRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateResellerProfileResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          }
        },
        "x-v2-response-schema": "UpdateResellerProfileResponse"
      }
    },
    "/resellers/default-customer": {
      "get": {
        "tags": [
          "Resellers APIs"
        ],
        "summary": "Get default customer identifier for the reseller",
        "description": "Returns the default customer identifier for the authenticated reseller.",
        "operationId": "getDefaultCustomerId",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GetDefaultCustomerIdResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GenericResponse"
                }
              }
            }
          }
        },
        "x-v2-response-schema": "GetDefaultCustomerIdResponse"
      }
    }
  },
  "components": {
    "schemas": {
      "GenericResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "path": {
            "type": "string"
          },
          "status": {
            "type": "integer",
            "format": "int32"
          },
          "customLogMessage": {}
        }
      },
      "UpdateResellerSuspensionRequest": {
        "type": "object",
        "description": "Suspends or unsuspends a reseller account.",
        "properties": {
          "suspended": {
            "type": "boolean",
            "description": "When true, suspends the reseller; when false, unsuspends."
          },
          "reason": {
            "type": "string",
            "description": "Reason for the action.",
            "minLength": 1
          }
        },
        "required": [
          "reason",
          "suspended"
        ]
      },
      "CreateResellerRequest": {
        "type": "object",
        "description": "Creates a Sub-Reseller Account using the details provided.",
        "properties": {
          "username": {
            "type": "string",
            "description": "Username for the Sub-Reseller account. Username should be an email address.",
            "minLength": 1
          },
          "password": {
            "type": "string",
            "description": "Password for the Sub-Reseller account. Note Password related information",
            "minLength": 1
          },
          "name": {
            "type": "string",
            "description": "Name of the Sub-Reseller",
            "minLength": 1
          },
          "company": {
            "type": "string",
            "description": "Company Name of the Sub-Reseller",
            "minLength": 1
          },
          "languagePreference": {
            "type": "string",
            "description": "Language Code as per ISO",
            "minLength": 1
          },
          "addressLine1": {
            "type": "string",
            "description": "Address line 1 of the Sub-Reseller's address",
            "minLength": 1
          },
          "addressLine2": {
            "type": "string",
            "description": "Address line 2 of the Sub-Reseller's address"
          },
          "addressLine3": {
            "type": "string",
            "description": "Address line 3 of the Sub-Reseller's address"
          },
          "city": {
            "type": "string",
            "description": "City",
            "minLength": 1
          },
          "state": {
            "type": "string",
            "description": "State",
            "minLength": 1
          },
          "country": {
            "type": "string",
            "description": "Country Code as per ISO 3166-1 alpha-2",
            "minLength": 1
          },
          "zipcode": {
            "type": "string",
            "description": "ZIP code",
            "minLength": 1
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Phone number Country Code",
            "minLength": 1
          },
          "phone": {
            "type": "string",
            "description": "Phone number",
            "minLength": 1
          },
          "altPhoneCountryCode": {
            "type": "string",
            "description": "Alternate phone country code"
          },
          "altPhone": {
            "type": "string",
            "description": "Alternate phone number"
          },
          "faxCountryCode": {
            "type": "string",
            "description": "Fax number country code"
          },
          "fax": {
            "type": "string",
            "description": "Fax number"
          },
          "mobileCountryCode": {
            "type": "string",
            "description": "Mobile number Country Code"
          },
          "mobile": {
            "type": "string",
            "description": "Mobile number"
          },
          "salesContactId": {
            "type": "integer",
            "format": "int32",
            "description": "Sales User Id of Parent Sub-Reseller"
          },
          "accountingCurrencySymbol": {
            "type": "string",
            "description": "Accounting Currency Symbol of Sub-Reseller",
            "minLength": 1
          },
          "sellingCurrencySymbol": {
            "type": "string",
            "description": "Selling Currency Symbol of Sub-Reseller",
            "minLength": 1
          },
          "addDefaultCustomer": {
            "type": "boolean",
            "description": "Add Default Customer."
          },
          "vatId": {
            "type": "string",
            "description": "VAT ID for EU VAT"
          },
          "indianServiceTaxId": {
            "type": "string",
            "description": "Indian Service Tax Id."
          },
          "indianGstId": {
            "type": "string",
            "description": "Indian Gst Id."
          },
          "salesTaxExemptionId": {
            "type": "string",
            "description": "Sales Tax Exemption Id."
          },
          "russiaVatId": {
            "type": "string",
            "description": "Russia Vat Id."
          },
          "australiaGstId": {
            "type": "string",
            "description": "Australia Gst Id."
          },
          "newzealandGstId": {
            "type": "string",
            "description": "Newzealand Gst Id."
          },
          "singaporeGstId": {
            "type": "string",
            "description": "Singapore Gst Id."
          },
          "smsConsent": {
            "type": "boolean",
            "description": "Incase of a US based sub-reseller, consent is required to receive SMSes for low fund or loss alerts"
          },
          "autoActivate": {
            "type": "boolean",
            "description": "Pass true if the reseller account should be activated immediately"
          },
          "isWebpro": {
            "type": "boolean",
            "description": "Is Webpro."
          },
          "productSignupList": {
            "type": "string",
            "description": "Product Signup List."
          },
          "consent": {
            "type": "string",
            "description": "Consent."
          },
          "acceptPolicy": {
            "type": "boolean",
            "description": "Accept Terms and Conditions and Privacy Policy to create an account"
          },
          "marketingEmailConsent": {
            "type": "boolean",
            "description": "In case of EEA (European Economic Area) countries capture consent to receive marketing emails"
          },
          "referrerCode": {
            "type": "string"
          }
        },
        "required": [
          "accountingCurrencySymbol",
          "addressLine1",
          "city",
          "company",
          "country",
          "languagePreference",
          "name",
          "password",
          "phone",
          "phoneCountryCode",
          "sellingCurrencySymbol",
          "state",
          "username",
          "zipcode"
        ]
      },
      "SignUpResellerProductsRequest": {
        "type": "object",
        "description": "Signs up the reseller for additional products.",
        "properties": {
          "productKeys": {
            "type": "array",
            "description": "Product keys to sign up for. Sent as a JSON array in the request body.",
            "items": {
              "type": "string",
              "minLength": 1
            },
            "minItems": 1
          }
        },
        "required": [
          "productKeys"
        ]
      },
      "UpdateResellerProfileRequest": {
        "type": "object",
        "description": "Modifies the Account details of the specified Sub-Reseller.",
        "properties": {
          "resellerId": {
            "type": "integer",
            "format": "int32",
            "description": "Reseller Id of the Sub-Reseller for whom the details need to be modified"
          },
          "username": {
            "type": "string",
            "description": "Username of the Sub-Reseller. Username should be an email address.",
            "minLength": 1
          },
          "languagePreference": {
            "type": "string",
            "description": "Language Code as per ISO",
            "minLength": 1
          },
          "addressLine1": {
            "type": "string",
            "description": "Address line 1 of the Sub-Reseller's address",
            "minLength": 1
          },
          "addressLine2": {
            "type": "string",
            "description": "Address line 2 of the Sub-Reseller's address"
          },
          "addressLine3": {
            "type": "string",
            "description": "Address line 3 of the Sub-Reseller's address"
          },
          "city": {
            "type": "string",
            "description": "City",
            "minLength": 1
          },
          "state": {
            "type": "string",
            "description": "State",
            "minLength": 1
          },
          "zipcode": {
            "type": "string",
            "description": "ZIP code",
            "minLength": 1
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "Phone number Country Code",
            "minLength": 1
          },
          "phone": {
            "type": "string",
            "description": "Phone number",
            "minLength": 1
          },
          "altPhoneCountryCode": {
            "type": "string",
            "description": "Alternate phone country code"
          },
          "altPhone": {
            "type": "string",
            "description": "Alternate phone number"
          },
          "faxCountryCode": {
            "type": "string",
            "description": "Fax number country code"
          },
          "fax": {
            "type": "string",
            "description": "Fax number"
          },
          "mobileCountryCode": {
            "type": "string",
            "description": "Mobile number Country Code"
          },
          "mobile": {
            "type": "string",
            "description": "Mobile number"
          },
          "brandName": {
            "type": "string",
            "description": "Brand name used for branding"
          },
          "websiteUrl": {
            "type": "string",
            "description": "Branded website URL"
          },
          "vatId": {
            "type": "string",
            "description": "VAT ID for EU VAT"
          },
          "indianServiceTaxId": {
            "type": "string",
            "description": "Indian Service Tax Id."
          },
          "indianGstId": {
            "type": "string",
            "description": "GST ID for India GST"
          },
          "russiaVatId": {
            "type": "string",
            "description": "VAT ID for Russia VAT"
          },
          "australiaGstId": {
            "type": "string",
            "description": "GST ID for Australia GST"
          },
          "newzealandGstId": {
            "type": "string",
            "description": "GST ID for New Zealand GST"
          },
          "singaporeGstId": {
            "type": "string",
            "description": "GST ID for Singapore GST"
          },
          "smsConsent": {
            "type": "boolean",
            "description": "Sms Consent."
          }
        },
        "required": [
          "addressLine1",
          "city",
          "languagePreference",
          "phone",
          "phoneCountryCode",
          "resellerId",
          "state",
          "username",
          "zipcode"
        ]
      },
      "ResellerSearchResultDto": {
        "type": "object",
        "description": "One reseller row from a search result.",
        "properties": {
          "resellerId": {
            "type": "string",
            "description": "reseller Id"
          },
          "username": {
            "type": "string",
            "description": "username"
          },
          "name": {
            "type": "string",
            "description": "name"
          },
          "company": {
            "type": "string",
            "description": "company"
          },
          "city": {
            "type": "string",
            "description": "city"
          },
          "state": {
            "type": "string",
            "description": "state"
          },
          "country": {
            "type": "string",
            "description": "country"
          },
          "resellerStatus": {
            "type": "string",
            "description": "reseller Status"
          },
          "totalReceipts": {
            "type": "string",
            "description": "total Receipts"
          }
        }
      },
      "GsuiteTransferTokenEntryDto": {
        "type": "object",
        "description": "Google Workspace transfer token entry.",
        "properties": {
          "tokenKey": {
            "type": "string",
            "description": "Transfer token key"
          },
          "tokenValue": {
            "type": "string",
            "description": "Transfer token value"
          }
        }
      },
      "ResellerProfileDto": {
        "type": "object",
        "description": "Reseller account profile details.",
        "properties": {
          "company": {
            "type": "string",
            "description": "company"
          },
          "name": {
            "type": "string",
            "description": "name"
          },
          "brandName": {
            "type": "string",
            "description": "brand Name"
          },
          "resellerId": {
            "type": "string",
            "description": "reseller Id"
          },
          "parentId": {
            "type": "string",
            "description": "parent Id"
          },
          "resellerStatus": {
            "type": "string",
            "description": "reseller Status"
          },
          "creationDate": {
            "type": "string",
            "description": "creation Date"
          },
          "totalReceipts": {
            "type": "string",
            "description": "total Receipts"
          },
          "addressLine1": {
            "type": "string",
            "description": "address Line1"
          },
          "addressLine2": {
            "type": "string",
            "description": "address Line2"
          },
          "city": {
            "type": "string",
            "description": "city"
          },
          "state": {
            "type": "string",
            "description": "state"
          },
          "stateId": {
            "type": "string",
            "description": "state Id"
          },
          "otherState": {
            "type": "string",
            "description": "other State"
          },
          "zipcode": {
            "type": "string",
            "description": "zipcode"
          },
          "country": {
            "type": "string",
            "description": "country"
          },
          "phoneCountryCode": {
            "type": "string",
            "description": "phone Country Code"
          },
          "phone": {
            "type": "string",
            "description": "phone"
          },
          "email": {
            "type": "string",
            "description": "email"
          },
          "username": {
            "type": "string",
            "description": "username"
          },
          "password": {
            "type": "string",
            "description": "password"
          },
          "pin": {
            "type": "string",
            "description": "pin"
          },
          "languagePreference": {
            "type": "string",
            "description": "language Preference"
          },
          "sfLangPref": {
            "type": "string",
            "description": "storefront language preference"
          },
          "sellingCurrencySymbol": {
            "type": "string",
            "description": "selling Currency Symbol"
          },
          "accountingCurrencySymbol": {
            "type": "string",
            "description": "accounting Currency Symbol"
          },
          "salesContactId": {
            "type": "string",
            "description": "sales Contact Id"
          },
          "salesRepresentative": {
            "type": "string",
            "description": "sales Representative"
          },
          "billingFromName": {
            "type": "string",
            "description": "billing From Name"
          },
          "billingPhoneCountryCode": {
            "type": "string",
            "description": "billing Phone Country Code"
          },
          "billingPhone": {
            "type": "string",
            "description": "billing Phone"
          },
          "billingEmailAddress": {
            "type": "string",
            "description": "billing Email Address"
          },
          "billingSignature": {
            "type": "string",
            "description": "billing Signature"
          },
          "salesFromName": {
            "type": "string",
            "description": "sales From Name"
          },
          "salesPhoneCountryCode": {
            "type": "string",
            "description": "sales Phone Country Code"
          },
          "salesPhone": {
            "type": "string",
            "description": "sales Phone"
          },
          "salesEmailAddress": {
            "type": "string",
            "description": "sales Email Address"
          },
          "salesSignature": {
            "type": "string",
            "description": "sales Signature"
          },
          "technicalSupportPhoneCountryCode": {
            "type": "string",
            "description": "technical Support Phone Country Code"
          },
          "technicalSupportPhone": {
            "type": "string",
            "description": "technical Support Phone"
          },
          "technicalSupportEmailAddress": {
            "type": "string",
            "description": "technical Support Email Address"
          },
          "technicalSupportUrl": {
            "type": "string",
            "description": "technical Support Url"
          },
          "abuseFromName": {
            "type": "string",
            "description": "abuse From Name"
          },
          "abuseEmailAddress": {
            "type": "string",
            "description": "abuse Email Address"
          },
          "abuseSignature": {
            "type": "string",
            "description": "abuse Signature"
          },
          "parentSellingCurrencySymbol": {
            "type": "string",
            "description": "parent Selling Currency Symbol"
          },
          "fundThreshold": {
            "type": "string",
            "description": "fund Threshold"
          },
          "minReceiptRequired": {
            "type": "string",
            "description": "min Receipt Required"
          },
          "minimumBillingAmount": {
            "type": "string",
            "description": "minimum Billing Amount"
          },
          "minimumAddFundAmount": {
            "type": "string",
            "description": "minimum Add Fund Amount"
          },
          "directPaymentDetailsCustomer": {
            "type": "string",
            "description": "direct Payment Details Customer"
          },
          "directPaymentDetailsReseller": {
            "type": "string",
            "description": "direct Payment Details Reseller"
          },
          "showDirectPaymentCustomer": {
            "type": "boolean",
            "description": "show Direct Payment Customer"
          },
          "showDirectPaymentReseller": {
            "type": "boolean",
            "description": "show Direct Payment Reseller"
          },
          "conversionRate": {
            "type": "string",
            "description": "conversion Rate"
          },
          "useSystemConversionRate": {
            "type": "boolean",
            "description": "use System Conversion Rate"
          },
          "sendRiskReportMail": {
            "type": "boolean",
            "description": "send Risk Report Mail"
          },
          "isResellerRestricted": {
            "type": "boolean",
            "description": "is Reseller Restricted"
          },
          "futureProductSignup": {
            "type": "boolean",
            "description": "future Product Signup"
          },
          "parentBrandingUrl": {
            "type": "string",
            "description": "parent Branding Url"
          },
          "partialSupersite2Url": {
            "type": "string",
            "description": "partial Supersite2 Url"
          },
          "partialPartnerSiteUrl": {
            "type": "string",
            "description": "partial Partner Site Url"
          },
          "partialStorefrontUrl": {
            "type": "string",
            "description": "partial Storefront Url"
          },
          "fullyStorefrontUrl": {
            "type": "string",
            "description": "fully Storefront Url"
          },
          "suffixUrl": {
            "type": "string",
            "description": "suffix Url"
          },
          "brandingUrl": {
            "type": "string",
            "description": "branding Url"
          },
          "supersite2Url": {
            "type": "string",
            "description": "supersite2 Url"
          },
          "supersiteUrl": {
            "type": "string",
            "description": "supersite Url"
          },
          "partnerSiteUrl": {
            "type": "string",
            "description": "partner Site Url"
          },
          "australiaGstEnabled": {
            "type": "boolean",
            "description": "australia Gst Enabled"
          },
          "australiaGstId": {
            "type": "string",
            "description": "australia Gst Id"
          },
          "singaporeGstEnabled": {
            "type": "boolean",
            "description": "singapore Gst Enabled"
          },
          "singaporeGstId": {
            "type": "string",
            "description": "singapore Gst Id"
          },
          "newZealandGstEnabled": {
            "type": "boolean",
            "description": "new Zealand Gst Enabled"
          },
          "newZealandGstId": {
            "type": "string",
            "description": "new Zealand Gst Id"
          },
          "indianGstEnabled": {
            "type": "boolean",
            "description": "indian Gst Enabled"
          },
          "indianServiceTaxEnabled": {
            "type": "boolean",
            "description": "indian Service Tax Enabled"
          },
          "indianServiceTaxId": {
            "type": "string",
            "description": "indian Service Tax Id"
          },
          "russiaVatEnabled": {
            "type": "boolean",
            "description": "russia Vat Enabled"
          },
          "russiaVatId": {
            "type": "string",
            "description": "russia Vat Id"
          },
          "brTaxPayerId": {
            "type": "string",
            "description": "br Tax Payer Id"
          },
          "chargeVat": {
            "type": "boolean",
            "description": "charge Vat"
          },
          "usSalesTaxId": {
            "type": "string",
            "description": "us Sales Tax Id"
          },
          "isWebPro": {
            "type": "boolean",
            "description": "is Web Pro"
          },
          "isOldReseller": {
            "type": "boolean",
            "description": "is Old Reseller"
          },
          "isChildInfoAllowed": {
            "type": "boolean",
            "description": "is Child Info Allowed"
          },
          "isDominicanTaxConfiguredByParent": {
            "type": "boolean",
            "description": "is Dominican Tax Configured By Parent"
          },
          "supportAutoRenew": {
            "type": "boolean",
            "description": "support Auto Renew"
          },
          "supportsAutoRenew": {
            "type": "boolean",
            "description": "supports Auto Renew"
          },
          "switchPanelEnabled": {
            "type": "boolean",
            "description": "switch Panel Enabled"
          },
          "twoFactorAuthEnabled": {
            "type": "boolean",
            "description": "two Factor Auth Enabled"
          },
          "twoFactorGoogleAuthEnabled": {
            "type": "boolean",
            "description": "two Factor Google Auth Enabled"
          },
          "twoFactorSmsAuthEnabled": {
            "type": "boolean",
            "description": "two Factor Sms Auth Enabled"
          },
          "gsuiteTransferTokens": {
            "type": "array",
            "description": "Google Workspace transfer token entries",
            "items": {
              "$ref": "#/components/schemas/GsuiteTransferTokenEntryDto"
            }
          }
        }
      },
      "CreateResellerResponse": {
        "type": "object",
        "description": "Returns the identifier and activation details of the newly created reseller account.",
        "properties": {
          "resellerId": {
            "type": "string",
            "description": "Newly created reseller identifier"
          },
          "activationStatus": {
            "type": "string",
            "description": "Sub-Reseller signup option (activation status)"
          },
          "eaqId": {
            "type": "string",
            "description": "Entity action queue identifier"
          },
          "minReceiptRequired": {
            "type": "string",
            "description": "Minimum total receipts required for activation"
          },
          "status": {
            "type": "string",
            "description": "Overall status of the request"
          }
        }
      },
      "GetDefaultCustomerIdResponse": {
        "type": "object",
        "description": "Returns the default customer identifier for the authenticated reseller.",
        "properties": {
          "defaultCustomerId": {
            "type": "string",
            "description": "Default customer identifier"
          },
          "status": {
            "type": "string",
            "description": "Operation status"
          },
          "message": {
            "type": "string",
            "description": "Status message"
          }
        }
      },
      "GetResellerProfileResponse": {
        "type": "object",
        "description": "Returns reseller account details.",
        "properties": {
          "reseller": {
            "$ref": "#/components/schemas/ResellerProfileDto",
            "description": "Reseller profile details"
          },
          "status": {
            "type": "string",
            "description": "Operation status"
          },
          "message": {
            "type": "string",
            "description": "Status message"
          }
        }
      },
      "SearchResellersResponse": {
        "type": "object",
        "description": "Returns sub-resellers matching the search criteria, with pagination.",
        "properties": {
          "totalItems": {
            "type": "integer",
            "format": "int32",
            "description": "Total matching resellers in the database"
          },
          "itemsOnPage": {
            "type": "integer",
            "format": "int32",
            "description": "Number of resellers returned on this page"
          },
          "resellers": {
            "type": "array",
            "description": "Reseller search results",
            "items": {
              "$ref": "#/components/schemas/ResellerSearchResultDto"
            }
          },
          "status": {
            "type": "string",
            "description": "Operation status"
          },
          "message": {
            "type": "string",
            "description": "Status message"
          }
        }
      },
      "SignUpResellerProductsResponse": {
        "type": "object",
        "description": "Returns the result of signing up the reseller for additional products, including action tracking metadata.",
        "properties": {
          "actionStatus": {
            "type": "string",
            "description": "Action status"
          },
          "actionStatusDesc": {
            "type": "string",
            "description": "Action status description"
          },
          "actionTypeDesc": {
            "type": "string",
            "description": "Action type description"
          },
          "entityId": {
            "type": "string",
            "description": "Entity identifier"
          },
          "eaqId": {
            "type": "string",
            "description": "Action queue identifier"
          },
          "actionType": {
            "type": "string",
            "description": "Action type"
          },
          "description": {
            "type": "string",
            "description": "Operation description"
          },
          "status": {
            "type": "string",
            "description": "Operation status"
          },
          "message": {
            "type": "string",
            "description": "Status message"
          }
        }
      },
      "UpdateResellerProfileResponse": {
        "type": "object",
        "description": "Returns the result of updating the reseller profile, including action tracking metadata.",
        "properties": {
          "actionStatus": {
            "type": "string",
            "description": "Action status"
          },
          "actionStatusDesc": {
            "type": "string",
            "description": "Action status description"
          },
          "actionTypeDesc": {
            "type": "string",
            "description": "Action type description"
          },
          "entityId": {
            "type": "string",
            "description": "Entity identifier"
          },
          "eaqId": {
            "type": "string",
            "description": "Action queue identifier"
          },
          "actionType": {
            "type": "string",
            "description": "Action type"
          },
          "description": {
            "type": "string",
            "description": "Operation description"
          },
          "status": {
            "type": "string",
            "description": "Operation status"
          },
          "message": {
            "type": "string",
            "description": "Status message"
          }
        }
      },
      "UpdateResellerSuspensionResponse": {
        "type": "object",
        "description": "Result of suspending or unsuspending a reseller account.",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the operation succeeded."
          },
          "status": {
            "type": "string",
            "description": "Status text."
          },
          "message": {
            "type": "string",
            "description": "Result message."
          }
        }
      }
    },
    "securitySchemes": {
      "apiKeyAuth": {
        "type": "apiKey",
        "description": "Reseller API key. In your own requests, send the full header value: Authorization: ApiKey YOUR_API_KEY",
        "name": "Authorization",
        "in": "header"
      },
      "userIdHeader": {
        "type": "apiKey",
        "description": "Reseller user ID",
        "name": "X-User-Id",
        "in": "header"
      }
    }
  },
  "tags": [
    {
      "name": "Resellers APIs"
    }
  ]
}