code: public WebhookSharedSecret resetSharedSecret(long webhookId) throws SmartsheetException {
          HttpRequest request = createHttpRequest(this.getSmartsheet().getBaseURI().resolve("webhooks/" +
                  webhookId + "/resetsharedsecret"), HttpMethod.POST);
  
          HttpResponse response = getSmartsheet().getHttpClient().request(request);
  
          WebhookSharedSecret secret = null;
          switch (response.getStatusCode()) {
          case 200:
              try {
                  secret = this.smartsheet.getJsonSerializer().deserialize(WebhookSharedSecret.class,
                      response.getEntity().getContent());
              } catch (JsonParseException e) {
                  throw new SmartsheetException(e);
              } catch (JsonMappingException e) {
                  throw new SmartsheetException(e);
              } catch (IOException e) {
                  throw new SmartsheetException(e);
              }
              break;
          default:
              handleError(response);
          }
  
          getSmartsheet().getHttpClient().releaseConnection();
          return secret;
      }
docs: Resets the shared secret for the specified Webhook. For more information about how a shared secret is used,
  see Authenticating Callbacks.
  
  It mirrors to the following Smartsheet REST API method: POST /webhooks/{webhookId}/resetsharedsecret
  
  @param webhookId the webhook Id
  @return the Webhook shared secret
  @throws IllegalArgumentException if any argument is null or empty string
  @throws InvalidRequestException if there is any problem with the REST API request
  @throws AuthorizationException if there is any problem with  the REST API authorization (access token)
  @throws ResourceNotFoundException if the resource cannot be found
  @throws ServiceUnavailableException if the REST API service is not available (possibly due to rate limiting)
  @throws SmartsheetException if there is any other error during the operation