API Documentation LIVE

v3.0.4 — 1,210+ Endpoints

Complete access to AI, downloaders, tools, anime, search, and more with our powerful REST API. Build powerful applications with simple HTTP requests.

Base URL
https://api.giftedtech.co.ke
GET POST JSON API Key

Table of Contents

Authentication

All API requests require a valid apikey parameter. Include it as a query parameter for GET requests or in the request body for POST requests.

Free Test Key: gifted

To obtain your own personal API key, visit the Contact Page and request one.

Example Usage

GET https://api.giftedtech.co.ke/api/ai/ai?apikey=gifted&q=Hello

GET Endpoints

GET endpoints return data based on query parameters. All require the apikey parameter.

GET AI Chat

/api/ai/ai?apikey=YOUR_KEY&q=Hello

Chat with an AI assistant. Send a question and get an intelligent response.

apikeyrequiredYour API key
qrequiredThe message/question to send
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/ai/ai?apikey=gifted&q=Hello"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/ai/ai?apikey=gifted&q=Hello"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/ai/ai",
    params={"apikey": "gifted", "q": "Hello"}
)
data = response.json()
print(data["result"])

GET Image Upscaler

/api/tools/imageupscaler?apikey=YOUR_KEY&url=IMAGE_URL&model=2

Upscale an image to higher resolution using AI models.

apikeyrequiredYour API key
urlrequiredURL of the image to upscale
modeloptionalUpscale model (default: 2)
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/tools/imageupscaler?apikey=gifted&url=https://example.com/image.jpg&model=2"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/tools/imageupscaler?apikey=gifted&url=https://example.com/image.jpg&model=2"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/tools/imageupscaler",
    params={"apikey": "gifted", "url": "https://example.com/image.jpg", "model": "2"}
)
data = response.json()
print(data["result"])

GET Ytaudio — YouTube Audio (MP3 via y2mate.nu)

/api/download/ytaudio?apikey=YOUR_KEY&url=YOUTUBE_URL

Download YouTube audio as MP3 (128kbps) via y2mate.nu. Supports &stream=true to stream the file directly.

apikeyrequiredYour API key
urlrequiredYouTube video URL
streamoptionalSet to true to stream the file directly as audio/mpeg instead of JSON
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/download/ytaudio?apikey=gifted&url=https://youtu.be/qF-JLqKtr2Q"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/download/ytaudio?apikey=gifted&url=https://youtu.be/qF-JLqKtr2Q"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/download/ytaudio",
    params={"apikey": "gifted", "url": "https://youtu.be/qF-JLqKtr2Q"}
)
data = response.json()
print(data["result"])

GET Ytvideo — YouTube Video (MP4 via y2mate.nu)

/api/download/ytvideo?apikey=YOUR_KEY&url=YOUTUBE_URL

Download YouTube video as MP4 via y2mate.nu. Supports &stream=true to stream the file directly.

apikeyrequiredYour API key
urlrequiredYouTube video URL
streamoptionalSet to true to stream the file directly as video/mp4 instead of JSON
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/download/ytvideo?apikey=gifted&url=https://youtu.be/wdJrTQJh1ZQ"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/download/ytvideo?apikey=gifted&url=https://youtu.be/wdJrTQJh1ZQ"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/download/ytvideo",
    params={"apikey": "gifted", "url": "https://youtu.be/wdJrTQJh1ZQ"}
)
data = response.json()
print(data["result"])

GET YouTube Downloader (MP3)

/api/download/ytmp3?apikey=YOUR_KEY&url=YOUTUBE_URL

Download YouTube videos as MP3 audio by providing the video URL. Supports &stream=true to stream the file directly instead of returning a JSON response with a download link.

apikeyrequiredYour API key
urlrequiredYouTube video URL
qualityoptionalAudio quality (varies by endpoint, e.g. 128, 320 kbps)
streamoptionalSet to true to stream the file directly as audio/mpeg instead of JSON
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/download/ytmp3?apikey=gifted&url=https://youtube.com/watch?v=dQw4w9WgXcQ"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/download/ytmp3?apikey=gifted&url=https://youtube.com/watch?v=dQw4w9WgXcQ"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/download/ytmp3",
    params={"apikey": "gifted", "url": "https://youtube.com/watch?v=dQw4w9WgXcQ"}
)
data = response.json()
print(data["result"])

GET YouTube Downloaders — Stream Mode

/api/download/{endpoint}?apikey=YOUR_KEY&url=YOUTUBE_URL&stream=true

All YouTube downloader endpoints support &stream=true to receive the file directly as a binary stream instead of a JSON response. This works on: ytaudio, ytvideo, ytmp3, ytmp4, ytmp3v2, ytmp4v2, dlmp3, dlmp4, dlmp3v2, dlmp4v2, yta, ytv, ytdl, ytdlv2, ytdown, savenowmp3, savenowmp4, savetubemp3, savetubemp4 and more.

apikeyrequiredYour API key
urlrequiredYouTube video URL
qualityoptionalQuality selection (endpoint-specific, e.g. 128, 320 for MP3; 360, 720, 1080 for MP4)
streamoptionalSet to true to stream the file directly (Content-Type: audio/mpeg or video/mp4)
cURL
JavaScript
Python
# Stream MP3 directly to file
curl -o audio.mp3 "https://api.giftedtech.co.ke/api/download/dlmp3v2?apikey=gifted&url=https://youtube.com/watch?v=dQw4w9WgXcQ&quality=128&stream=true"

# Stream MP4 directly to file
curl -o video.mp4 "https://api.giftedtech.co.ke/api/download/dlmp4v2?apikey=gifted&url=https://youtube.com/watch?v=dQw4w9WgXcQ&quality=720&stream=true"
const axios = require('axios');
const fs = require('fs');

const response = await axios({
  method: 'GET',
  url: 'https://api.giftedtech.co.ke/api/download/dlmp3v2',
  params: { apikey: 'gifted', url: 'https://youtube.com/watch?v=dQw4w9WgXcQ', quality: '128', stream: 'true' },
  responseType: 'stream'
});

response.data.pipe(fs.createWriteStream('audio.mp3'));
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/download/dlmp3v2",
    params={"apikey": "gifted", "url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "quality": "128", "stream": "true"},
    stream=True
)

with open("audio.mp3", "wb") as f:
    for chunk in response.iter_content(chunk_size=8192):
        f.write(chunk)

GET Google Search

/api/search/google?apikey=YOUR_KEY&q=query

Search Google and get structured results.

apikeyrequiredYour API key
qrequiredSearch query
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/search/google?apikey=gifted&q=nodejs+tutorial"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/search/google?apikey=gifted&q=nodejs+tutorial"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/search/google",
    params={"apikey": "gifted", "q": "nodejs tutorial"}
)
data = response.json()
print(data["result"])

GET Anime Waifu

/api/anime/waifu?apikey=YOUR_KEY

Get a random anime waifu image.

apikeyrequiredYour API key
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/anime/waifu?apikey=gifted"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/anime/waifu?apikey=gifted"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/anime/waifu",
    params={"apikey": "gifted"}
)
data = response.json()
print(data["result"])

GET Fun Quote

/api/fun/quote?apikey=YOUR_KEY

Get a random inspirational or funny quote.

apikeyrequiredYour API key
cURL
JavaScript
Python
curl -X GET "https://api.giftedtech.co.ke/api/fun/quote?apikey=gifted"
const axios = require('axios');
const { data } = await axios.get(
  "https://api.giftedtech.co.ke/api/fun/quote?apikey=gifted"
);
console.log(data.result);
import requests

response = requests.get(
    "https://api.giftedtech.co.ke/api/fun/quote",
    params={"apikey": "gifted"}
)
data = response.json()
print(data["result"])

POST Endpoints

POST endpoints accept data in the request body. Send JSON or multipart form data depending on the endpoint.

POST HTML Obfuscator

/api/tools/htmlobfuscate

Obfuscate HTML code to make it harder to read or reverse-engineer.

apikeyrequiredYour API key (in body)
htmlrequiredHTML code to obfuscate
cURL
JavaScript
Python
curl -X POST "https://api.giftedtech.co.ke/api/tools/htmlobfuscate" \
  -H "Content-Type: application/json" \
  -d '{"apikey": "gifted", "html": "<h1>Hello World</h1>"}'
const axios = require('axios');
const { data } = await axios.post(
  "https://api.giftedtech.co.ke/api/tools/htmlobfuscate",
  { apikey: "gifted", html: "<h1>Hello World</h1>" }
);
console.log(data.result);
import requests

response = requests.post(
    "https://api.giftedtech.co.ke/api/tools/htmlobfuscate",
    json={"apikey": "gifted", "html": "<h1>Hello World</h1>"}
)
data = response.json()
print(data["result"])

POST Carbon Code Image

/api/tools/carbon

Generate a beautiful code snippet image (like carbon.now.sh).

apikeyrequiredYour API key (in body)
coderequiredThe code to render as image
cURL
JavaScript
Python
curl -X POST "https://api.giftedtech.co.ke/api/tools/carbon" \
  -H "Content-Type: application/json" \
  -d '{"apikey": "gifted", "code": "console.log(\"Hello World\")"}'
const axios = require('axios');
const { data } = await axios.post(
  "https://api.giftedtech.co.ke/api/tools/carbon",
  { apikey: "gifted", code: "console.log('Hello World')" }
);
console.log(data.result);
import requests

response = requests.post(
    "https://api.giftedtech.co.ke/api/tools/carbon",
    json={"apikey": "gifted", "code": "print('Hello World')"}
)
data = response.json()
print(data["result"])

POST File Upload

/api/tools/upload

Upload a file and get a permanent hosted URL. Supports images, videos, documents, and more (max 200MB).

apikeyrequiredYour API key (form field)
filerequiredThe file to upload (multipart)
cURL
JavaScript
Python
curl -X POST "https://api.giftedtech.co.ke/api/tools/upload" \
  -F "apikey=gifted" \
  -F "file=@/path/to/your/file.jpg"
const axios = require('axios');
const FormData = require('form-data');
const formData = new FormData();
formData.append("apikey", "gifted");
formData.append("file", fileInput.files[0]);

const { data } = await axios.post(
  "https://api.giftedtech.co.ke/api/tools/upload",
  formData
);
console.log(data.result);
import requests

with open("file.jpg", "rb") as f:
    response = requests.post(
        "https://api.giftedtech.co.ke/api/tools/upload",
        data={"apikey": "gifted"},
        files={"file": f}
    )
data = response.json()
print(data["result"])

Response Format

All endpoints return JSON responses with a consistent structure:

Success Response

{ "status": 200, "creator": "GiftedTech", "result": { ... } }

Error Response

{ "status": 401, "creator": "GiftedTech", "error": "Invalid API key" }

The result field contains the endpoint-specific data. The structure varies by endpoint — it may be a string, object, array, or URL depending on the request.

Error Handling

The API uses standard HTTP status codes. Here are the common error responses:

CodeMeaningDescription
400Bad RequestMissing or invalid parameters. Check that all required fields are provided.
401UnauthorizedInvalid or missing API key. Verify your apikey parameter.
429Rate LimitedToo many requests. Slow down and retry after a brief wait.
500Server ErrorInternal server error. Try again later or contact support.

Rate Limits

To ensure fair usage and service stability, the API enforces rate limits on all endpoints. If you exceed the limit, you will receive a 429 status code.