summaryrefslogtreecommitdiffstats
path: root/internal/client
diff options
context:
space:
mode:
Diffstat (limited to 'internal/client')
-rw-r--r--internal/client/client.go4
-rw-r--r--internal/client/dns.go15
-rw-r--r--internal/client/x.go90
3 files changed, 109 insertions, 0 deletions
diff --git a/internal/client/client.go b/internal/client/client.go
index eaf87cb..4aa6f06 100644
--- a/internal/client/client.go
+++ b/internal/client/client.go
@@ -126,3 +126,7 @@ func (c *Client) Patch(path string, body interface{}) ([]byte, error) {
func (c *Client) Put(path string, body interface{}) ([]byte, error) {
return c.doRequest(http.MethodPut, path, nil, body)
}
+
+func (c *Client) ListServices() ([]byte, error) {
+ return c.Get("/", nil)
+}
diff --git a/internal/client/dns.go b/internal/client/dns.go
index 9f9d4e8..96ae8e1 100644
--- a/internal/client/dns.go
+++ b/internal/client/dns.go
@@ -59,3 +59,18 @@ func (c *Client) CheckDNSTLDStream(params *models.DNSTLDParams, callback func(re
return nil
}
+
+func (c *Client) CheckDNSSite(siteURL string) (*models.DNSResponse, error) {
+ path := fmt.Sprintf("/dns/site/%s", url.PathEscape(siteURL))
+ data, err := c.Get(path, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ var response models.DNSResponse
+ if err := json.Unmarshal(data, &response); err != nil {
+ return nil, fmt.Errorf("failed to parse DNS site response: %w", err)
+ }
+
+ return &response, nil
+}
diff --git a/internal/client/x.go b/internal/client/x.go
index b6ddba8..f385b9b 100644
--- a/internal/client/x.go
+++ b/internal/client/x.go
@@ -207,3 +207,93 @@ func (c *Client) SearchTweetsStream(query string, limit int, callback func(resul
return nil
}
+
+func (c *Client) CheckDeletedTweets(handle string) (*models.XResponse, error) {
+ path := fmt.Sprintf("/x/deleted-tweets/%s", url.PathEscape(handle))
+ data, err := c.Get(path, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ var response models.XResponse
+ if err := json.Unmarshal(data, &response); err != nil {
+ return nil, fmt.Errorf("failed to parse deleted tweets response: %w", err)
+ }
+
+ return &response, nil
+}
+
+func (c *Client) CheckDomainAge(domain string) (*models.XResponse, error) {
+ path := fmt.Sprintf("/x/domain/%s", url.PathEscape(domain))
+ data, err := c.Get(path, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ var response models.XResponse
+ if err := json.Unmarshal(data, &response); err != nil {
+ return nil, fmt.Errorf("failed to parse domain age response: %w", err)
+ }
+
+ return &response, nil
+}
+
+func (c *Client) GetHoldersMap(address string) (*models.XResponse, error) {
+ path := fmt.Sprintf("/x/holders/map/%s", url.PathEscape(address))
+ data, err := c.Get(path, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ var response models.XResponse
+ if err := json.Unmarshal(data, &response); err != nil {
+ return nil, fmt.Errorf("failed to parse holders map response: %w", err)
+ }
+
+ return &response, nil
+}
+
+func (c *Client) GetTwitterID(handle string) (*models.XResponse, error) {
+ path := fmt.Sprintf("/x/id/%s", url.PathEscape(handle))
+ data, err := c.Get(path, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ var response models.XResponse
+ if err := json.Unmarshal(data, &response); err != nil {
+ return nil, fmt.Errorf("failed to parse Twitter ID response: %w", err)
+ }
+
+ return &response, nil
+}
+
+func (c *Client) ReverseImageSearch(address string) (*models.XResponse, error) {
+ path := fmt.Sprintf("/x/image/%s", url.PathEscape(address))
+ data, err := c.Get(path, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ var response models.XResponse
+ if err := json.Unmarshal(data, &response); err != nil {
+ return nil, fmt.Errorf("failed to parse image search response: %w", err)
+ }
+
+ return &response, nil
+}
+
+func (c *Client) GetTwitterUserID(handle string) (*models.XResponse, error) {
+ path := fmt.Sprintf("/x/user-id/%s", url.PathEscape(handle))
+ data, err := c.Get(path, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ var response models.XResponse
+ if err := json.Unmarshal(data, &response); err != nil {
+ return nil, fmt.Errorf("failed to parse Twitter user ID response: %w", err)
+ }
+
+ return &response, nil
+}