Service Api's


package main

import (
	"encoding/json"
	"fmt"
	"io"
	"log"
	"net/http"
	"net/url"
)

const (
	apiKey    = "YOUR_API_KEY"
	tweetURL  = "URL TWITTER" 
	endpoint  = "https://senpai-bot.store/twitterdl"
)


type TwitterResult struct {
	Title       string      `json:"title"`
	Thumbnail   string      `json:"thumbnail"`
	Duration    interface{} `json:"duration"`
	VideoURL    string      `json:"video_url"`
	Quality     string      `json:"quality"`
	Username    string      `json:"username"`
	UploadDate  string      `json:"upload_date"`
	ViewCount   interface{} `json:"view_count"`
}

type ApiResponse struct {
	Code   int           `json:"code"`
	Result TwitterResult `json:"result"`
}

func main() {
	encodedTweetURL := url.QueryEscape(tweetURL)
	fullURL := fmt.Sprintf("%s?apikey=%s&url=%s", endpoint, apiKey, encodedTweetURL)

	resp, err := http.Get(fullURL)
	if err != nil {
		log.Fatalf("Error making request: %v", err)
	}
	defer resp.Body.Close()

	body, err := io.ReadAll(resp.Body)
	if err != nil {
		log.Fatalf("Error reading response: %v", err)
	}

	var response ApiResponse
	if err := json.Unmarshal(body, &response); err != nil {
		log.Fatalf("Error parsing JSON: %v", err)
	}

	if response.Code != 200 {
		log.Fatalf("API returned error code: %d", response.Code)
	}

	r := response.Result
	fmt.Println("Title       :", r.Title)
	fmt.Println("Username    :", r.Username)
	fmt.Println("Upload Date :", r.UploadDate)
	fmt.Println("Quality     :", r.Quality)
	fmt.Println("Video URL   :", r.VideoURL)

	if r.Thumbnail != "" {
		fmt.Println("Thumbnail   :", r.Thumbnail)
	} else {
		fmt.Println("Thumbnail   : (null)")
	}

	if r.Duration != nil {
		fmt.Println("Duration    :", r.Duration)
	} else {
		fmt.Println("Duration    : (null)")
	}

	if r.ViewCount != nil {
		fmt.Println("Views       :", r.ViewCount)
	} else {
		fmt.Println("Views       : (null)")
	}
}