550W · Developer API

Developer API

API voor beeld- en videoverwerking

Wat je kunt bouwen

Snelle integratie

1

Credits toevoegen

Videotaken worden berekend op basis van verwerkingsduur en resolutie. Afbeeldingen kosten 10 credits per geslaagde taak; mislukte verwerking wordt niet aangerekend.

Gebruik en facturering
2

API Key genereren

Voeg userNo en API Key toe aan elke aanvraag. Uploaden is optioneel: gebruik /open/uploadVideo of geef rechtstreeks een openbare videoUrl op.

API Key genereren
3

Integratievoorbeelden

Kies de workflow die bij je product past. Elke stap verwijst rechtstreeks naar de API-referentie.

Integratievoorbeelden
Base URLhttps://www.550wai.cnPOST · multipart/form-data

Snel starten

Voeg userNo en API Key toe aan elke aanvraag. Uploaden is optioneel: gebruik /open/uploadVideo of geef rechtstreeks een openbare videoUrl op.

curl -X POST https://www.550wai.cn/open/submitTask \\
  -H 'Content-Type: application/x-www-form-urlencoded' \\
  --data-urlencode 'userNo=YOUR_USER_NO' --data-urlencode 'apiKey=YOUR_API_KEY' \\
  --data-urlencode 'videoUrl=https://example.com/video.mp4' \\
  --data-urlencode 'width=1920' --data-urlencode 'height=1080' --data-urlencode 'duration=30' \\
  --data-urlencode 'x1=0' --data-urlencode 'y1=0' --data-urlencode 'x2=1920' --data-urlencode 'y2=200'

Conventies

Verplicht

Voeg userNo en API Key toe aan elke aanvraag. Uploaden is optioneel: gebruik /open/uploadVideo of geef rechtstreeks een openbare videoUrl op.

Antwoord

Antwoorden bevatten code en message. Taken gaan van waiting naar processing en daarna naar success of failed. Gebruik bij succes resultUrl en controleer bij een fout failCode. Resultaatbestanden verlopen. Voor internationale accounts (clientType=overseas) wordt message in het Engels teruggegeven. Gebruik de taalonafhankelijke code, status, failCode en veldnamen voor programmalogica.

Video-ondertitels en watermerken verwijderen

uploadVideo → submitTask → taskDetail

Taakstatussen

Antwoorden bevatten code en message. Taken gaan van waiting naar processing en daarna naar success of failed. Gebruik bij succes resultUrl en controleer bij een fout failCode. Resultaatbestanden verlopen.

waiting→processing→successfailed

Verwerk fouten met code, message, status, failCode en refundStatus.

Asynchrone taken en betrouwbaarheid

Taakstatuscontroles en webhooks

Configureer een openbaar bereikbare HTTPS callbackUrl om de uiteindelijke taakstatus te ontvangen. U kunt ook taskDetail opvragen met taskId en de tijd tussen controles geleidelijk verhogen.

Idempotente nieuwe pogingen

Stuur voor elke nieuwe taak een unieke Idempotency-Key. Gebruik bij een nieuwe poging voor dezelfde inzending dezelfde sleutel om de oorspronkelijke taskId te ontvangen zonder een dubbele taak aan te maken of tweemaal credits af te schrijven.

Asynchrone beeldverwerking

Stel sync in op false, sla task.taskId op en roep imageWatermarkTaskDetail aan totdat de status success of failed is. Lees bij succes task.resultUrl uit.

resultUrl · 24 h

Integratievoorbeelden

Kies de workflow die bij je product past. Elke stap verwijst rechtstreeks naar de API-referentie.

Video-ondertitels en watermerken verwijderen

  1. videoUrl · uploadVideo · Video-ondertitels en watermerken verwijderen · uploadVideo
  2. submitTask · Video-ondertitels en watermerken verwijderen · submitTask
  3. taskId · taskDetail · callbackUrl
  4. Bij success download je resultUrl; bij failed controleer je failCode en failReason.

Watermerken uit afbeeldingen verwijderen

  1. removeImageWatermark · Watermerken uit afbeeldingen verwijderen · removeImageWatermark
  2. sync=true → resultUrl · sync=false → taskId
  3. imageWatermarkTaskDetail · Controleer de eindstatus

Taken en account

  1. userNo · apiKey · Verplicht bij elk verzoek
  2. queryCredits · Taken en account · credits
  3. taskList · Video-ondertitels en watermerken verwijderen · Taken en account. Verwijderde taken zijn uitgesloten van taskDetail en taskList. Taakstatuswaarden blijven waiting, processing, success of failed.

Beschikbare endpoints

POST/open/uploadVideo

Video-ondertitels en watermerken verwijderen · uploadVideo

POST/open/submitTask

Video-ondertitels en watermerken verwijderen · submitTask

POST/open/taskDetail

Video-ondertitels en watermerken verwijderen · Taakstatussen

POST/open/taskList

Video-ondertitels en watermerken verwijderen · Taken en account. Verwijderde taken zijn uitgesloten van taskDetail en taskList. Taakstatuswaarden blijven waiting, processing, success of failed.

POST/open/deleteTask

Taak verwijderen · Markeert een videotaak als verwijderd en geeft direct antwoord. De geüploade bron, het resultaat en bestanden voor nieuwe pogingen worden daarna asynchroon op de achtergrond uit VOD verwijderd. Gebruikte credits worden niet terugbetaald. Verwijderde taken zijn uitgesloten van taskDetail en taskList. Taakstatuswaarden blijven waiting, processing, success of failed.

POST/open/removeImageWatermark

Watermerken uit afbeeldingen verwijderen · removeImageWatermark

POST/open/imageWatermarkTaskDetail

Watermerken uit afbeeldingen verwijderen · Taakstatussen

POST/open/queryCredits

Taken en account · credits

POST

/open/uploadVideo

Video-ondertitels en watermerken verwijderen · uploadVideo

Aanvraagindeling: multipart/form-data

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key
filefileJaMP4/MOV · ≤ 1080p · ≤ 30 min · Bestandsgrootte ≤ 1 GiB

Responsvelden

VeldTypeBeschrijving
codenumberResultaatcode; 200 betekent succes
messagestringStatusbericht
videoUrlstringGeüploade video-URL
coverUrlstringURL voor videoomslag
widthnumberVideobreedte in pixels
heightnumberVideohoogte in pixels
durationnumberVideoduur in seconden

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-200Ongeldige parameterVeelvoorkomende oorzaken: field · URL · size · duration · Idempotency-Key
-500Interne foutVeelvoorkomende oorzaken: server · retry
POST

/open/submitTask

Video-ondertitels en watermerken verwijderen · submitTask

Aanvraagindeling: application/x-www-form-urlencoded

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key
videoUrlstringJaHTTP(S) URL · ≤ 2048 karakters
widthnumberJavideobreedte · px
heightnumberJavideohoogte · px · max ≤ 1920 · min ≤ 1080
durationnumberJa1–1800 s
x1numberJalinksboven X · px
y1numberJalinksboven Y · px
x2numberJarechtsonder X · px
y2numberJarechtsonder Y · px · x1 = y1 = x2 = y2 = 0: volledig kader
modestringNeenormal (standaard) · protect
fileNamestringNeeUTF-8
coverUrlstringNeeHTTP(S) URL
callbackUrlstringNeeHTTPS webhook · definitieve taakstatus
removeAudiobooleanNeetrue · false (standaard)
Idempotency-Key / idempotencyKeystringAanbevolen≤ 128 karakters · veilig om opnieuw te proberen

Responsvelden

VeldTypeBeschrijving
codenumberResultaatcode; 200 betekent succes
messagestringStatusbericht
taskIdstringTaak-ID voor statusquery's
statusstringwaiting · processing · success · failed

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-200Ongeldige parameterVeelvoorkomende oorzaken: field · URL · size · duration · Idempotency-Key
-300Aanvraag geweigerdVeelvoorkomende oorzaken: taskId · ownership · state
-401Tijdelijke accountopschortingVeelvoorkomende oorzaken: Eerste effectieve overtreding: 1 uur; tweede: 24 uur. Detecties tijdens een opschorting tellen niet mee en verlengen of verzwaren deze niet.
-402Permanente accountblokkeringVeelvoorkomende oorzaken: De derde effectieve overtreding blokkeert het account permanent.
-600Niet-ondersteunde video-indelingVeelvoorkomende oorzaken: codec · bit depth · HDR · audio
POST

/open/taskDetail

Video-ondertitels en watermerken verwijderen · Taakstatussen

Aanvraagindeling: form / query

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key
taskIdstringJa1–64 karakters
subUserIdstringNee≤ 128 karakters · eigendom van de gebruiker

Responsvelden

VeldTypeBeschrijving
taskIdstringTaak-ID voor statusquery's
statusstringwaiting · processing · success · failed
widthnumberVideobreedte in pixels
heightnumberVideohoogte in pixels
durationnumberVideoduur in seconden
x1numberx1
y1numbery1
x2numberx2
y2numbery2
modestringmode
costnumberCredits die voor deze taak in rekening worden gebracht
resultUrlstringResultaat-URL; geldig gedurende 24 uur na generatie
failCodestringStabiele foutidentificatie
failReasonstringReden voor het mislukken van de taak
refundStatusnumberStatus van terugbetaling van credits

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-300Aanvraag geweigerdVeelvoorkomende oorzaken: taskId · ownership · state
-500Interne foutVeelvoorkomende oorzaken: server · retry
POST

/open/taskList

Video-ondertitels en watermerken verwijderen · Taken en account. Verwijderde taken zijn uitgesloten van taskDetail en taskList. Taakstatuswaarden blijven waiting, processing, success of failed.

Aanvraagindeling: form / query

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key
pagenumberNee≥ 0 · standaard 0
sizenumberNee1–100 · standaard 20
subUserIdstringNee≤ 128 karakters · eigendom van de gebruiker

Responsvelden

VeldTypeBeschrijving
totalnumberAantal taken niet verwijderd
pagenumberPaginanummer
sizenumberAantal taken per pagina
listarrayLijst met taken die niet zijn verwijderd

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-200Ongeldige parameterVeelvoorkomende oorzaken: field · URL · size · duration · Idempotency-Key
-500Interne foutVeelvoorkomende oorzaken: server · retry
POST

/open/deleteTask

Taak verwijderen · Markeert een videotaak als verwijderd en geeft direct antwoord. De geüploade bron, het resultaat en bestanden voor nieuwe pogingen worden daarna asynchroon op de achtergrond uit VOD verwijderd. Gebruikte credits worden niet terugbetaald. Verwijderde taken zijn uitgesloten van taskDetail en taskList. Taakstatuswaarden blijven waiting, processing, success of failed.

Aanvraagindeling: form / query

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key
taskIdstringJa1–64 karakters
subUserIdstringNee≤ 128 karakters · eigendom van de gebruiker

Responsvelden

VeldTypeBeschrijving
codenumberResultaatcode; 200 betekent succes
messagestringStatusbericht

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-200Ongeldige parameterVeelvoorkomende oorzaken: field · URL · size · duration · Idempotency-Key
-300Aanvraag geweigerdVeelvoorkomende oorzaken: taskId · ownership · state
-500Interne foutVeelvoorkomende oorzaken: server · retry
POST

/open/removeImageWatermark

Watermerken uit afbeeldingen verwijderen · removeImageWatermark

Aanvraagindeling: multipart/form-data

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key
filefileJaJPG · PNG · BMP · WebP · AVIF · TIFF · SVG · ≤ 50 MiB
syncbooleanNeetrue (standaard) · false
operationIdstringNeetracking-ID

Responsvelden

VeldTypeBeschrijving
codenumberResultaatcode; 200 betekent succes
messagestringStatusbericht
creditsAfternumberResterende credits na verwerking
taskobjectVerwerkingsresultaat of asynchrone taak

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-200Ongeldige parameterVeelvoorkomende oorzaken: field · URL · size · duration · Idempotency-Key
-300Aanvraag geweigerdVeelvoorkomende oorzaken: taskId · ownership · state
-500Interne foutVeelvoorkomende oorzaken: server · retry
POST

/open/imageWatermarkTaskDetail

Watermerken uit afbeeldingen verwijderen · Taakstatussen

Aanvraagindeling: form / query

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key
taskIdstringJa1–64 karakters

Responsvelden

VeldTypeBeschrijving
statusstringwaiting · processing · success · failed
resultUrlstringResultaat-URL; geldig gedurende 24 uur na generatie
failCodestringStabiele foutidentificatie
failReasonstringReden voor het mislukken van de taak
costnumberCredits die voor deze taak in rekening worden gebracht
expiredTimestringResultaat URL-vervaltijd

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-300Aanvraag geweigerdVeelvoorkomende oorzaken: taskId · ownership · state
-500Interne foutVeelvoorkomende oorzaken: server · retry
POST

/open/queryCredits

Taken en account · credits

Aanvraagindeling: form / query

Aanvraagparameters

VeldTypeVerplichtBeschrijving
userNostringJa550W userNo
apiKeystringJaAPI Key

Responsvelden

VeldTypeBeschrijving
codenumberResultaatcode; 200 betekent succes
messagestringStatusbericht
userNostringGebruikers-ID
creditsnumberBeschikbare credits

Endpointfouten

codeBetekenisBeschrijving
-100Authenticatie- of quotafoutVeelvoorkomende oorzaken: userNo · API Key · credits
-500Interne foutVeelvoorkomende oorzaken: server · retry

Algemene aanvraagvelden

VeldVerplichtBeschrijving
userNoJa550W userNo
apiKeyJaAPI Key
Idempotency-KeyAanbevolen≤ 128 · retry-safe
callbackUrlNeeHTTPS webhook · final status

Velden voor videotaken

VeldTypeBeschrijving
videoUrlstringHTTP(S) URL · ≤ 2048 karakters
widthnumbervideobreedte · px
heightnumbervideohoogte · px · max ≤ 1920 · min ≤ 1080
durationnumber1–1800 s
x1numberlinksboven X · px
y1numberlinksboven Y · px
x2numberrechtsonder X · px
y2numberrechtsonder Y · px · x1 = y1 = x2 = y2 = 0: volledig kader
modestringnormal (standaard) · protect
removeAudiobooleantrue · false (standaard)

Antwoord- en taakstatus

Antwoorden bevatten code en message. Taken gaan van waiting naar processing en daarna naar success of failed. Gebruik bij succes resultUrl en controleer bij een fout failCode. Resultaatbestanden verlopen.

{ "code": 200, "message": "success", "taskId": "...", "status": "waiting" }

Foutcodes

CodeBetekenisVeelvoorkomende oorzaken
200Geslaagdmessage: "success"
-100Authenticatie- of quotafoutuserNo · API Key · credits
-200Ongeldige parameterfield · URL · size · duration · Idempotency-Key
-300Aanvraag geweigerdtaskId · ownership · state
-401Tijdelijke accountopschortingEerste effectieve overtreding: 1 uur; tweede: 24 uur. Detecties tijdens een opschorting tellen niet mee en verlengen of verzwaren deze niet.
-402Permanente accountblokkeringDe derde effectieve overtreding blokkeert het account permanent.
-500Interne foutserver · retry
-600Niet-ondersteunde video-indelingcodec · bit depth · HDR · audio

Identificaties voor taakfouten (failCode)

failCode is een string-ID, niet de numerieke code. Het verschijnt alleen als een taak mislukt. Gebruik failCode om de oorzaak te achterhalen; parseer het vertaalde failReason-bericht niet.

failCodeBetekenis
VIDEO_UNREACHABLEDe video-URL is niet openbaar toegankelijk
VIDEO_METADATA_UNAVAILABLEBetrouwbare videometagegevens konden niet worden opgehaald.
VIDEO_RESOLUTION_UNSUPPORTEDDe gemeten videoresolutie overschrijdt het ondersteunde bereik
VIDEO_DURATION_UNSUPPORTEDDe gemeten videoduur bedraagt meer dan 30 minuten
VIDEO_CODEC_UNSUPPORTEDDe videocodec wordt niet ondersteund
VIDEO_BIT_DEPTH_UNSUPPORTEDDe videobitdiepte wordt niet ondersteund
VIDEO_HDR_UNSUPPORTEDHDR, PQ of HLG wordt niet ondersteund
VIDEO_AUDIO_UNSUPPORTEDDe audiocodec wordt niet ondersteund
VIDEO_CONTAINER_UNSUPPORTEDHet videocontainerformaat wordt niet ondersteund
VIDEO_PREPARE_FAILEDVideovoorbereiding, validatie of verwijdering van audio is mislukt

Voorbeeld kopiëren en aanroepen

/open/submitTask

// JavaScript
const form = new URLSearchParams({
  userNo: USER_NO, apiKey: API_KEY, videoUrl: VIDEO_URL,
  width: '1920', height: '1080', duration: '30',
  x1: '0', y1: '0', x2: '1920', y2: '200'
});
const response = await fetch('https://www.550wai.cn/open/submitTask', {
  method: 'POST',
  body: form,
});

# Python
import requests
r = requests.post('https://www.550wai.cn/open/submitTask', data={
  'userNo': USER_NO, 'apiKey': API_KEY, 'videoUrl': VIDEO_URL,
  'width': 1920, 'height': 1080, 'duration': 30,
  'x1': 0, 'y1': 0, 'x2': 1920, 'y2': 200
})

/open/removeImageWatermark

// JavaScript
const imageFile = document.querySelector('#image-file').files[0];
const imageForm = new FormData();
imageForm.append('userNo', USER_NO);
imageForm.append('apiKey', API_KEY);
imageForm.append('file', imageFile);
imageForm.append('sync', 'true');
const imageResponse = await fetch(
  'https://www.550wai.cn/open/removeImageWatermark',
  { method: 'POST', body: imageForm }
);

# Python
import requests
IMAGE_FILE_PATH = '/path/to/image-file'
with open(IMAGE_FILE_PATH, 'rb') as image:
  r = requests.post(
    'https://www.550wai.cn/open/removeImageWatermark',
    data={'userNo': USER_NO, 'apiKey': API_KEY, 'sync': 'true'},
    files={'file': image}
  )

Gebruik en facturering

Videotaken worden berekend op basis van verwerkingsduur en resolutie. Afbeeldingen kosten 10 credits per geslaagde taak; mislukte verwerking wordt niet aangerekend.

VideoresolutieTariefVoorbeeld
width × height ≤ 921,600 · 720p of lager1.3 credits / s1280×720 · 30 s ≈ 39 credits
width × height > 921,600 · Tot 1080p1.6 credits / s1920×1080 · 30 s ≈ 48 credits

Taakopvragingen geven alleen gegevens van de geverifieerde gebruiker terug.

Verwerk fouten met code, message, status, failCode en refundStatus.

Credits kopen

Videotaken worden berekend op basis van verwerkingsduur en resolutie. Afbeeldingen kosten 10 credits per geslaagde taak; mislukte verwerking wordt niet aangerekend.

Prijzen →