API-referens för produktion
DeepSwapAI: API för AI-ansiktsbyte
Anslut ansiktsbyte för foto, fotobatch, mappade gruppfoton, video och GIF via ett och samma produktionsgränssnitt. Granska kontraktet, debiteringsenheterna, uppgiftsstatusarna och gränserna här; öppna den fullständiga engelska API-referensen för alla fält och svar.
Ett kontrakt, fem arbetsflöden
HTTPS, multipart-uppladdningar och uppgiftsstatus i JSON
Varje publicerad genereringsroute använder en Bearer-API-nyckel, returnerar ett taskId och visar uppgiftsstatus via GET på samma route.
Direkt svar
Ett API-konto täcker fem indatatyper för ansiktsbyte
Foton, fotobatcher, mappade ansikten i gruppfoton, videor och GIF använder samma produktionsdomän och uppgiftslivscykel. Validera format, storlek, längd, antal mål och tillgängliga krediter före varje förfrågan; spara taskId efter inskickningen och polla motsvarande GET-route.
Aktuellt offentligt kontrakt
Routes, debiteringsenheter och huvudsakliga gränser
| Arbetsflöde | POST-route | Aktuell enhet | Huvudsaklig gräns |
|---|---|---|---|
| Foto | POST /api/ai-tasks | 6 krediter / utdata | One source face and one target image |
| Fotobatch | POST /api/ai-tasks/batch-face-swap | 6 krediter / utdata | Högst 20 indatabilder totalt; totalt 95 MB |
| Gruppmappning | POST /api/ai-tasks/multi-face-swap | 6 credits / selected face | Up to 10 mapped faces; 95 MB combined |
| Video | POST /api/ai-tasks/video | 3 credits / rounded second; 12 minimum | MP4, MOV, or WebM; 600 seconds; fixed highest 1080p tier |
| GIF | POST /api/ai-tasks/gif | 3 credits / rounded second; 12 minimum | GIF, MP4, or WebM; 30 seconds |
Minimalt integrationsflöde
Validera förfrågan innan du skickar en genereringsuppgift
- 1. Förvara API-nycklar på din server, aldrig i en webbläsare, ett mobilpaket, en logg eller ett offentligt repository.
- 2. Validera multipart-fälten, filtyperna, storlekarna, antalen, längden och krediterna för det valda arbetsflödet.
- 3. Skicka POST-förfrågan och spara det returnerade taskId tillsammans med den förväntade debiteringen.
- 4. Polla GET på samma route tills uppgiften når COMPLETED, FAILED eller CANCELLED.
- 5. Leverera resultat endast till det konto som äger uppgiften och ta bort media enligt den publicerade lagringsregeln.
Inget idempotency-key-fält är dokumenterat i det offentliga kontraktet. Den anropande tjänsten bör inaktivera dubblettinlämning, spara det första taskId och stämma av ett osäkert nätverkssvar innan en annan POST utfärdas.
Uppgiftslivscykel
Behåll taskId och stanna vid ett terminaltillstånd
| Händelse | Uppgiftspost | Kreditåtgärd | Klientåtgärd |
|---|---|---|---|
| Uppgift accepterad | Spara taskId och förväntad kostnad | Behandla avräkning som serverägd | Påbörja mätt polling |
| Uppgift slutförd | Terminalresultat | Slutfört arbete förblir avräknat | Auktorisera resultathämtning |
| Bearbetningen misslyckades | Terminalfel | Nuvarande kontrakt återbetalar misslyckad bearbetning automatiskt | Läs felet innan du beslutar att skicka igen |
| Svarssultat osäkert | Stäm av före en annan POST | Gissa aldrig från en timeout | Använd lagrad taskId eller kontohistorik |
Svarssultat osäkert Inget idempotency-key-fält är dokumenterat i det offentliga kontraktet. Den anropande tjänsten bör inaktivera dubblettinlämning, spara det första taskId och stämma av ett osäkert nätverkssvar innan en annan POST utfärdas.
Debitering, integritet och export
Bygg in verifierbara gränser i din integration
API access requires a verified email and at least one PAID or COMPLETED credit order. Reward and trial credits are limited to the signed-in web workflow and cannot be automated through the API. Each account can create up to 3 API keys, with up to 6 generation requests per minute per key. Failed tasks are refunded under the current rules, and media is deleted within 24 hours.
Frågor från utvecklare
Bekräfta dessa punkter före lansering
Stöder API:et webhooks?
Inte för närvarande. Spara det taskId som returneras av POST och polla GET på samma arbetsflödesroute tills en slutstatus nås.
Finns det ett officiellt SDK?
Inget officiellt språk-SDK är publicerat för närvarande. Standard-HTTPS, Bearer-autentisering, multipart-data och JSON-svar fungerar med alla HTTP-klienter på serversidan.
Hur många krediter använder en fotouppgift?
Ett foto, en batchutdata eller ett valt ansikte i ett gruppfoto använder för närvarande 6 krediter. Video och GIF använder sekunder avrundade uppåt och en minimidebitering.
Kan jag lägga en API-nyckel i frontendkod?
Nej. Förvara API-nycklar på servern och skriv aldrig in dem i webbläsarpaket, mobila binärfiler, loggar, analyshändelser eller supportärenden.
Validera integrationen med en representativ uppgift
Testa fält, statusar, debiteringar och resultatleverans med det minsta auktoriserade medieexemplet innan du skalar upp till batcher eller långa videor.
