Service Api's


package main

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

const (
	apiKey   = "YOUR API"
	videoURL = "URL TIKTOK"
	endpoint = "https://senpai-bot.store/tiktokdl"
)

type UsernameInfo struct {
	Avatar   string `json:"avatar"`
	ID       string `json:"id"`
	Nickname string `json:"nickname"`
	UniqueID string `json:"unique_id"`
}

type Result struct {
	AudioURL       string       `json:"audio_url"`
	CommentCount   int          `json:"comment_count"`
	CoverTrack     string       `json:"cover_track"`
	Created        int64        `json:"created"`
	DownloadCount  int          `json:"download_count"`
	Duration       int          `json:"duration"`
	Fullname       interface{}  `json:"fullname"`
	LikeCount      int          `json:"like_count"`
	Music          string       `json:"music"`
	NoWatermarkURL string       `json:"no_watermark_url"`
	PictureURL     interface{}  `json:"picture_url"`
	PlayCount      int          `json:"play_count"`
	ShareCount     int          `json:"share_count"`
	ThumbnailURL   string       `json:"thumbnail_url"`
	Title          string       `json:"title"`
	TitleCount     int          `json:"title_count"`
	Username       UsernameInfo `json:"username"`
	VideoPicture   string       `json:"video_picture"`
	WatermarkURL   string       `json:"watermark_url"`
}

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

func main() {
	encodedVideoURL := url.QueryEscape(videoURL)
	getData := fmt.Sprintf("%s?apikey=%s&url=%s", endpoint, apiKey, encodedVideoURL)
	resp, err := http.Get(getData)
	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)
	}
	r := response.Result
	fmt.Println("Username:", r.Username.UniqueID)
	fmt.Println("Nickname:", r.Username.Nickname)
	fmt.Println("Avatar:", r.Username.Avatar)
	fmt.Println("Title:", r.Title)
	fmt.Println("Title Count:", r.TitleCount)
	fmt.Println("Duration:", r.Duration)
	fmt.Println("Like Count:", r.LikeCount)
	fmt.Println("Comment Count:", r.CommentCount)
	fmt.Println("Share Count:", r.ShareCount)
	fmt.Println("Play Count:", r.PlayCount)
	fmt.Println("Download Count:", r.DownloadCount)
	fmt.Println("Created:", r.Created)
	fmt.Println("Cover Track:", r.CoverTrack)
	fmt.Println("Audio URL:", r.AudioURL)
	fmt.Println("Video Picture:", r.VideoPicture)
	fmt.Println("Thumbnail URL:", r.ThumbnailURL)
	fmt.Println("Watermark URL:", r.WatermarkURL)
	fmt.Println("No Watermark URL:", r.NoWatermarkURL)
}