Någon i Brasilien klippte ett 18-sekunders klipp 1 minut sedan

201442 klipp har klippts med AppsGolem.

Utvecklar-API · MCP-server

Klipp YouTube-klipp från din kod.

Ett enkelt REST-API och en MCP-server för AI-agenter — allt webbklipparen gör, programmatiskt. Förbetalda krediter, ingen prenumeration.

API + MCP för kodningsagenter →

# one clip = 1 credit — failed cuts never billed
curl -X POST https://appsgolem.com/v1/cuts \
  -H "Authorization: Bearer ag_live_…" \
  -d '{"url":"youtu.be/…","start":"0:00",
       "end":"0:10","mode":"video"}'
Så här fungerar det

Ny här? Hela modellen på en minut.

Du köper förbetalda krediter, skapar en API-nyckel och anropar en endpoint för att klippa ett klipp. Klippning är asynkron: du skickar in ett jobb, pollar tills det är producerat, och laddar sedan ner filen från en tokeniserad URL. MCP-servern paketerar allt det där i ett enda verktygsanrop för AI-agenter. Inget abonnemang, inga seats — du betalar per producerat klipp.

1 · Autentisera
Skicka din nyckel som Authorization: Bearer ag_live_… med varje förfrågan.
2 · Skicka in & polla
POST /v1/cuts returnerar ett jobb-id; polla GET /v1/cuts/{id} tills det är producerat.
3 · Ladda ner
Hämta download_url från det producerade jobbet — ingen header behövs, token auktoriserar den.
Snabbstart

Från noll till ett klipp på fyra anrop.

01
Skapa en API-nyckel
Buy a credit pack (from €5), then generate a key in your dashboard. Keys look like ag_live_… and are shown once — store it somewhere safe.
02
Skicka in en klippning
curl -X POST https://appsgolem.com/v1/cuts \
  -H "Authorization: Bearer ag_live_…" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://youtu.be/aqz-KE-bpKQ",
       "start":"0:00","end":"0:10",
       "resolution":"1080p","mode":"video"}'
202 Accepted
{ "id": "e48d…b1a2", "state": "queued", "credits_reserved": 1, "poll_url": "/v1/cuts/e48d…b1a2" }
03
Polla nedladdnings-URL:en
# GET /v1/cuts/{id} — repeat every few seconds until state is produced
{ "state": "produced",
  "download_url": "/v1/download/…/clip.mp4" }
Statusar rör sig accepted → queued → produced → delivered (eller failed → refunded). Ett kort klipp är oftast klart på några sekunder; polla var 3–5 s.
Nedladdningslänkar upphör att gälla 72 timmar efter att klippet skapats — hämta det inom detta tidsfönster.
04
Ladda ner klippet
Den tokeniserade URL:en strömmar MP4-filen — återanvändbar tills den går ut. MCP-verktyget cut_youtube_video gör steg 2–4 åt dig i ett enda anrop.
För AI-agenter · MCP

En rad för Claude, Cursor & Codex.

MCP-servern exponerar klipparen som tre verktyg som vilken MCP-klient som helst kan anropa. Installera med npx — inget att installera globalt.

Claude Desktop — claude_desktop_config.json
{ "mcpServers": {
  "appsgolem": {
    "command": "npx",
    "args": ["-y","appsgolem-mcp"],
    "env": { "APPSGOLEM_API_KEY":
      "ag_live_…" } } } }
Claude Code
claude mcp add appsgolem \
  -e APPSGOLEM_API_KEY=ag_live_… \
  -- npx -y appsgolem-mcp
Codex CLI — ~/.codex/config.toml
[mcp_servers.appsgolem]
command = "npx"
args = ["-y", "appsgolem-mcp"]
env = { APPSGOLEM_API_KEY = "ag_live_…" }
cut_youtube_video()
Skicka in en klippning (valfritt läge, alternativ eller en clips-array) och få en nedladdnings-URL tillbaka.
get_cut_status()
Kontrollera ett jobb via id och hämta dess nedladdnings-URL.
get_account_balance()
Dina tillgängliga krediter och timgräns.
Vad du kan säga till din agent — alla funktioner
“Klipp en video från 0:30 till 1:15 i 1080p”
cut_youtube_video(url, start="0:30", end="1:15", resolution="1080p")
“Hämta ljudet från videon från 2:00–5:00 som en 320 kbps MP3”
cut_youtube_video(…, mode="audio_only", audio_format="mp3", bitrate="320")
“Exportera videon och en MP3 av de första 30 sekunderna”
cut_youtube_video(…, end="0:30", mode="both")
“Skapa en vertikal 9:16-short av höjdpunkten från 10:00–10:45”
cut_youtube_video(…, start="10:00", end="10:45", mode="short")
“Gör om 0:05–0:12 till en GIF”
cut_youtube_video(…, mode="gif")
“Skapa ett contact sheet med en bildruta var 5:e sekund från 1:00–2:00”
cut_youtube_video(…, mode="frames", interval_ms=5000, sheet=true)
“Stitch ihop 0:10–0:20 och 1:00–1:10 till ett klipp”
cut_youtube_video(url, clips=[…], stitch=true)
“Gör en fast, stream-copy-klippning av de första 30 sekunderna”
cut_youtube_video(…, end="0:30", fast=true)
“Klipp 0:00–0:20 i 1.5× hastighet, i 4K”
cut_youtube_video(…, speed=1.5, resolution="2160p")
“Hur många API-krediter har jag kvar?”
get_account_balance()
“Kontrollera status för jobb e48d…b1a2”
get_cut_status(job_id="e48d…b1a2")
Agenten fyller i parametrarna utifrån din förfrågan — du behöver inte skriva JSON.
API-referens

Varje endpoint, med exempel.

Fyra endpoints. De tre läs-/skrivendpointsen kräver Authorization: Bearer <key>; nedladdnings-URL:en auktoriseras av sin egen token och behöver därför ingen header.

POST /v1/cuts Bearer
Förfrågan · video
{ "url": "https://youtu.be/aqz-KE-bpKQ",
  "start": "0:00", "end": "0:10",
  "resolution": "1080p", "mode": "video" }
Svar · 202 Accepted
{ "id": "e48db1a2-…", "state": "queued", "credits_reserved": 1, "poll_url": "/v1/cuts/e48db1a2-…" }
Skicka antingen start+end eller en clips-array (1–10 fönster). Lägg till en Idempotency-Key-header (≤200 tecken), så att en upprepad förfrågan återanvänder samma jobb istället för att debiteras två gånger.
Förfrågans innehåll per läge
audio_onlymp3 · m4a · wav · flac
{ "url":"youtu.be/…", "start":"2:00", "end":"5:00",
  "mode":"audio_only",
  "audio_format":"mp3", "bitrate":"320" }
bothMP4 + MP3, zippad
{ "url":"youtu.be/…", "start":"0:00", "end":"0:30",
  "mode":"both", "resolution":"1080p" }
short9:16 AI-smart-crop
{ "url":"youtu.be/…", "start":"10:00", "end":"10:45",
  "mode":"short" }
nosoundMP4, utan ljud
{ "url":"youtu.be/…", "start":"0:00", "end":"0:15",
  "mode":"nosound", "fast":true }
gif≤ 5 min, ett klipp
{ "url":"youtu.be/…", "start":"0:05", "end":"0:12",
  "mode":"gif" }
framesJPG-stillbilder · ≤ 1800
{ "url":"youtu.be/…", "start":"1:00", "end":"2:00",
  "mode":"frames", "interval_ms":5000,
  "sheet":true }
clips + stitch1–10 → en fil
{ "url":"youtu.be/…", "mode":"video",
  "clips":[{"start":"0:10","end":"0:20"},
          {"start":"1:00","end":"1:10"}],
  "stitch":true }
speed · 4K0.5–2× · 2160p
{ "url":"youtu.be/…", "start":"0:00", "end":"0:20",
  "mode":"video", "speed":1.5,
  "resolution":"2160p" }
GET /v1/cuts/{id} Bearer
Svar · 200 · produced
{ "id": "e48db1a2-…", "state": "produced", "credits_reserved": 1,
  "created_at": "2026-08-22T12:00:00+00:00",
  "download_url": "/v1/download/…/clip.mp4" }
state är en av accepted · queued · produced · delivered · failed · refunded. download_url visas när en token är klar — om den saknas, polla igen.
GET /v1/account Bearer
Svar · 200
{ "balance": 412, "hourly_cap": 60 }
GET /v1/download/{token}/{file} Token i URL
Svar · 200
# streams the file
Content-Type: video/mp4
Content-Disposition: attachment; filename="clip.mp4"
Ingen Bearer-header — token i sökvägen auktoriserar den. URL:en kan återanvändas tills den upphör att gälla.
Fel

Varje fel returnerar en JSON-body med en error-kod och HTTP-statusen. Försök igen med 429 efter retry_after sekunder; åtgärda och skicka in igen vid en 400.

402 insufficient_credits
{ "error":"insufficient_credits",
  "message":"need 2 credits", "balance":1 }
429 rate_limited
{ "error":"rate_limited",
  "retry_after":12 }
400 invalid_*
{ "error":"invalid_resolution",
  "message":"resolution must be…" }
401 · 404
{ "error":"invalid_api_key" }  // 401
{ "error":"not_found" }        // 404
Rate limit: Endast klippinlämningar är hastighetsbegränsade — din plans inlämningar/timme (se Priser). Att kontrollera ett jobbs förlopp är inte hastighetsbegränsat vid normal användning, så pollning räknas aldrig mot den gränsen. Respektera poll_after i varje svar (och Retry-After vid den sällsynta 429); MCP-verktyget hanterar takten åt dig med wait=true.
Funktioner

Alla lägen webbklipparen har.

MODE video
MP4 upp till 4K
144p–2160p, 60fps, ingen vattenstämpel.
MODE audio_only
Ljud
mp3 / m4a / wav / flac, valbar bithastighet.
MODE both
Video + ljud
MP4 och MP3 tillsammans, i en zip-fil.
MODE nosound
Video utan ljud
Video utan ljudspår.
MODE short
9:16 stående
AI-smart beskärning för Shorts, Reels och TikTok; faller tillbaka på oskärpa i sidofälten när det inte är tillgängligt.
MODE gif
Animerad GIF
Upp till 5 minuter, direkt från ett klipp.
MODE frames
JPG-bildrutor
Var 100ms–10s, tidsstämplar + kontaktkarta.
OPTION fast
Snabbläge
Stream-kopiering, cirka 10× snabbare; behåller källcontainern (WebM vid 1440p/2160p).
OPTION speed
Hastighet 0.5–2×
Ändra uppspelningshastighet vid export.
OPTION clips
Sammanfogning av flera klipp
Upp till 10 tidsfönster sammanfogade till en fil.
Referens

Parametrar

Fält
Typ
Anteckningar
url
string
YouTube watch- / share- / youtu.be-URL.
start, end
string
"SS" / "MM:SS" / "HH:MM:SS" (≤ 300h). Utelämna vid användning av clips.
resolution
enum
144p · 240p · 360p · 480p · 720p · 1080p · 1440p · 2160p (4K; total klippning ≤ 60 min).
mode
enum
video · audio_only · both · nosound · short · gif · frames.
audio_format
enum
mp3 · m4a · wav · flac — endast för audio_only; both är alltid MP3.
bitrate
enum
Förlustbehäftad bitrate 320 · 256 · 192 · 128 kbps — MP3/M4A (audio_only), MP3 (both); ignoreras för wav/flac.
fast
boolean
Stream-copy, cirka 10× snabbare — endast video, nosound, both; tvingar hastighet till 1×.
speed
number
Uppspelningshastighet 0.5 · 1 · 1.25 · 1.5 · 2 — video, nosound, both, audio_only.
interval_ms
integer
Bildrutesampling: 100 · 500 · 1000 · 2000 · 5000 · 10000 ms; ≤ 1800 JPG:er totalt.
burn_ts
boolean
Bildrutor — bränner in källans tidsstämpel på varje JPG.
sheet
boolean
Bildrutor — ett enda kontaktark i JPG (ett klipp); inaktiverar burn_ts.
clips
array
1–10 {start,end}-fönster; sätt stitch för att sammanfoga till en fil.
stitch
boolean
Med clips slås de ihop till en fil — video, audio_only, both, short, nosound.
Idempotency-Key
header
Skickas som en HTTP-header (≤ 200 tecken), inte som ett body-fält — omförsök återanvänder samma jobb.
Slutpunkter: POST /v1/cuts · GET /v1/cuts/{id} · GET /v1/account — Bearer-autentiserad.
GET /v1/download/{token}/{file} — autentiserad via URL-token, ingen Bearer-header.
Priser

Betala för klipp, inte platser.

Förbetalda krediter driver AppsGolems cutter-API & MCP-server — ett producerat klipp är en kredit, och misslyckade klipp debiteras aldrig. Köp ett paket för sporadisk användning, eller prenumerera för jämn månatlig volym och en högre rate limit.

№ 01  /  Förbetalda paket

Betala per användning.

Engångsköp, ingen förnyelse. Krediter är giltiga i 12 månader.

Startpaket
€5 Engångsköp

25 krediter · ≈ 25 standardklipp

Giltig i 12 månader

Kom igång
PAYG-paket Bäst värde
€25 Engångsköp

150 krediter · ≈ 150 standardklipp

Giltig i 12 månader · €0,17 / kredit

Kom igång

№ 02  /  Abonnemang

Klipp varje månad.

Krediter förnyas varje period och din rate limit höjs. Avsluta när som helst.

Start
€19 / mån.

eller €190 / år · 2 månader gratis

250 krediter / månad

  • 30 förfrågningar / timme
  • Krediter förnyas månadsvis
  • Avsluta när som helst
Kom igång
★ Mest populär Pro
€49 / mån.

eller €490 / år · 2 månader gratis

1000 krediter / månad

  • 60 förfrågningar / timme
  • Krediter förnyas månadsvis
  • Avsluta när som helst
Kom igång
Skala
€149 / mån.

eller €1490 / år · 2 månader gratis

5000 krediter / månad

  • 120 förfrågningar / timme
  • Krediter förnyas månadsvis
  • Avsluta när som helst
Kom igång

Prenumerationer ger hela periodens krediter i förskott och höjer din förfrågningar/timme-gräns. Årsprenumerationer debiterar 10 månader för 12.

№ 03  /  Så fungerar krediter

Vad ett klipp kostar.

  • Standardklipp (upp till 1080p; endast ljud i valfri upplösning)1 kredit
  • 4K (2160p) videoklipp4 krediter
  • Källa längre än 2 h (när det är känt)+1 / jobb
  • Batch med N klipp (zip eller sammanfogade)N × per klipp

Räkneexempel

Tre 1080p-höjdpunkter + ett 4K-klipp från en 25-minuters video → 3×1 + 4 = 7 credits.

En 3-timmars podd klippt ner till en MP3 → 1 + 1 = 2 credits (+1:an är >2 h-tillägget).

№ 04  /  FAQ

Bra att veta.

Vad är en kredit?

Ett producerat klipp = en kredit. 4K-klipp kostar 4, och en batch multipliceras med antalet klipp.

Går krediter ut?

Paketkrediter är giltiga i 12 månader. Prenumerationskrediter gäller under den faktureringsperiod de tilldelades i.

Vad är förfrågningar/timme-gränsen?

Hur många API-anrop du kan skicka per timme. Paket behåller standarden 30; Pro höjer den till 60 och Scale till 120.

Kan jag avsluta när som helst?

Ja. Prenumerationer avslutas med ett klick; du behåller alla redan tilldelade krediter tills de går ut.

Vad händer om ett klipp misslyckas?

Misslyckade klipp debiteras aldrig — reserverade krediter återbetalas automatiskt så länge tilldelningen fortfarande är giltig.

Kan jag blanda paket och en prenumeration?

Ja. Paket- och prenumerationskrediter läggs ihop; den saldopost som går ut först används alltid först.