API videon litterointiin ja muistiinpanoihin
Lähetä ääni- tai videotiedosto palvelimeltasi ja saat takaisin aikaleimatun litteroinnin, tekoälymuistiinpanot ja valmiit lataukset. API käyttää samaa käsittelyä kuin verkkosivusto ja Chrome-laajennus.
- Perus-URL
https://api.video-to-notes.com- Todennus
- API-avain bearer-tunnisteena
- Muoto
- JSON HTTPS:n yli; tiedostot menevät suoraan tallennustilaan allekirjoitettujen URL-osoitteiden kautta
- Käyttöoikeus
- Sisältyy aktiivisiin Basic- ja Plus-tilauksiin; käyttää tilauksesi tunteja
Pika-aloitus
Näillä vaiheilla tiedosto kulkee levyltäsi litteroinniksi ja muistiinpanoiksi. Tarvitset aktiivisen Basic- tai Plus-tilauksen, päätteen ja esimerkkiasiakasta varten Python 3.12:n tai uudemman.
1. Luo API-avain
Kirjaudu sivustolle (esimerkiksi hintasivulla), avaa tilipalkista API-avaimet, nimeä avain ja aseta halutessasi vanhenemispäivä. Kopioi salaisuus heti, kun se tulee näkyviin: se näytetään vain kerran. Enintään kolme avainta voi olla aktiivisena samaan aikaan.
2. Tallenna avain ympäristömuuttujaan
Pidä avain poissa lähdekoodista, komentoriviargumenteista ja lokeista. Esimerkit lukevat avaimen muuttujasta VTN_API_KEY ja perus-URL:n muuttujasta VTN_API_BASE.
export VTN_API_BASE="https://api.video-to-notes.com"
read -rs VTN_API_KEY && export VTN_API_KEY # paste the key, press Enter$env:VTN_API_BASE = "https://api.video-to-notes.com"
$env:VTN_API_KEY = Read-Host "API key" -MaskInput3. Tarkista tilisi
Tämä kutsu vahvistaa, että avain toimii, ja palauttaa tilauksesi, jäljellä olevat tilaussekuntisi, tuetut muodot ja nykyiset rajat.
# Sends the key through stdin, so it never appears in the process list.
vtn() {
printf 'header = "Authorization: Bearer %s"\n' "$VTN_API_KEY" |
curl -s --config - "$@"
}
vtn "$VTN_API_BASE/api/v1/account"$headers = @{ Authorization = "Bearer $env:VTN_API_KEY" }
Invoke-RestMethod "$env:VTN_API_BASE/api/v1/account" -Headers $headers |
ConvertTo-Json -Depth 54. Litteroi tiedosto
Lataa Python-esimerkkiasiakas. Se tarvitsee vain vakiokirjaston. Se lähettää tiedoston osina, käynnistää työn, odottaa sen valmistumista ja tallentaa jokaisen tulossivun.
python client.py run meeting.mp4 --state meeting.state.json \
--output meeting.jsonl --download meeting-filesJos haluat käsitellä vain osan tallenteesta, lisää --start ja --end sekunteina tiedoston alusta. --audio-language antaa kielivihjeen ja --notes-language valitsee muistiinpanojen kielen. Ilman näitä valintoja koko tiedosto käsitellään ja kielet tunnistetaan automaattisesti.
python client.py run lecture.webm --state lecture.state.json \
--start 30 --end 3630 --audio-language ru --notes-language enTilatiedosto tallentaa latauksen tunnisteen ja pyynnön identiteetin, ei koskaan avainta. Jos komento keskeytyy, aja se uudelleen samalla tilatiedostolla: se löytää saman työn, eikä sinulta veloiteta kahdesti. Käytä jokaiselle uudelle työlle uutta tilatiedostoa.
5. Lue tulokset
meeting.jsonl sisältää yhden JSON-tulossivun riviä kohden: litterointitekstin aikoineen, muistiinpanot Markdown-muodossa, aukot ja varoitukset. meeting-files sisältää lataukset, kuten litteroinnin TXT-muodossa ja muistiinpanot Markdown-, HTML- ja PDF-muodossa. Asiakkaassa on myös nämä komennot:
python client.py account
python client.py status JOB_ID
python client.py result JOB_ID --output results.jsonl --download files
python client.py cancel JOB_ID
python client.py resume JOB_IDKäytätkö mieluummin curlia? Bash-pika-aloitus tekee samat lataus-, työ- ja tulosvaiheet curlilla ja jq:lla.
bash quickstart.sh meeting.mp4Näin työ etenee
Jokainen integraatio etenee samojen kuuden vaiheen kautta. API-viite näyttää jokaisen kutsun esimerkkipyynnön ja -vastauksen kanssa.
- Tarkista tili.
GET /api/v1/accountpalauttaa tilauksesi, jäljellä olevat sekunnit, tuetut muodot ja rajat. - Luo lataus.
POST /api/v1/uploadstiedoston koolla tavuina ja tiedostopäätteellä. Vastaus kertoo osien koon ja määrän. - Lähetä osat. Hae allekirjoitetut URL-osoitteet kutsulla
POST /api/v1/uploads/{upload_id}/parts, lähetä jokainen osa HTTP-PUT-pyynnöllä suoraan tallennustilaan, säilytä jokainenETagja kutsu sittenPOST /api/v1/uploads/{upload_id}/complete. - Käynnistä työ.
POST /api/v1/jobslatauksen tunnisteella jaIdempotency-Key-otsakkeella. Palvelin tarkistaa todellisen tiedoston, suunnittelee työn ja varaa ajan tilauksestasi. - Kysy tilaa.
GET /api/v1/jobs/{job_id}, kunnes tila on lopullinen, ja odota kutsujen välillä vähintäänpoll_after_seconds. - Lue tulos.
GET /api/v1/jobs/{job_id}/resultja seuraanext_cursor-arvoa, kunnes se on null. Lataaartifacts-kentän tiedostot ennen kuin niiden linkit vanhenevat.
Työ päättyy tilaan completed, completed_with_gaps, interrupted, cancelled, failed tai expired. charged_seconds näyttää, kuinka paljon työ käytti tilaustasi.
Hyvät käytännöt
Nämä tavat suojaavat avaimesi, estävät kaksinkertaiset veloitukset ja tekevät pitkistä töistä luotettavia.
Pidä avaimet salassa
- Kutsu APIa vain palvelimelta tai skriptistä, jota hallitset itse. Älä koskaan laita avainta selainkoodiin, mobiilisovellukseen, URL-osoitteeseen tai versionhallintaan.
- Lataa avain ympäristömuuttujasta tai salaisuuksien hallinnasta ja pidä se poissa lokeista, virheraporteista ja komentoriviargumenteista.
- Käytä yhtä avainta integraatiota kohden ja anna sille vanhenemispäivä, jotta voit vaihtaa tai perua yhden avaimen koskematta muihin.
- Kun vaihdat avaimen, luo uusi, ota se käyttöön ja peru sitten vanha. Jo käynnistyneet työt jatkuvat.
- Jos avain on voinut vuotaa esimerkiksi keskusteluun, tikettiin tai committiin, peru se heti API-avaimet-paneelissa.
Tee töiden luomisesta turvallisesti toistettavaa
- Luo jokaiselle uudelle työlle satunnainen
Idempotency-Key, esimerkiksi UUID, ja tallenna se latauksen tunnisteen kanssa ennen kuin lähetät pyynnön. - Jos vastaus katoaa, lähetä sama pyyntö samalla avaimella uudelleen. Saat alkuperäisen työn takaisin, eikä sinulta veloiteta kahdesti.
- Älä koskaan käytä avainta uudelleen toiselle tiedostolle tai toisille valinnoille: API vastaa silloin 409
IDEMPOTENCY_CONFLICT.
Kysy maltillisesti ja huomioi rajat
- Odota tilakyselyjen välillä vähintään viisi sekuntia, ja pidempään, jos
poll_after_secondssitä pyytää. - Kun saat 429- tai 503-vastauksen, odota
Retry-After-otsakkeen taierror.retry_after_seconds-arvon mukaan ja yritä sitten uudelleen pienellä satunnaisella viiveellä. - Toista pyyntö muuttamattomana vain, jos
error.retryableon true. Muuten korjaa ensin pyyntö. - Tili suorittaa yhden latauksen ja yhden työn kerrallaan. Laita tiedostosi jonoon ja lähetä seuraava, kun nykyinen työ on valmis.
Hallitse käyttämiäsi tunteja
- Tarkista
remaining_secondsennen lataamista. Työ, joka tarvitsee enemmän aikaa kuin sinulla on, epäonnistuu virheelläINSUFFICIENT_BALANCE; API ei koskaan lyhennä valintaasi, jotta se mahtuisi. - Lähetä
range, kun tarvitset vain osan tallenteesta. Vain valitusta äänestä veloitetaan. - Peru työt, joita et enää tarvitse. Valmiit osat säilyvät saatavilla ja käyttämätön varattu aika palautetaan.
- Keskeytä lataukset, joita et aio käyttää, jotta seuraava lataus voi alkaa.
Kerää täydelliset tulokset
- Seuraa
next_cursor-arvoa, kunnes se on null. Sivulla on enintään 32 kohdetta. - Käsittele
gap-kohteita ääninä, joita ei voitu käsitellä, ei hiljaisuutena, ja tarkistawarnings. - Lataa
artifacts-kentän tiedostot, kun niiden linkit ovat voimassa (enintään kymmenen minuuttia); hae sivu uudelleen saadaksesi uudet linkit. - Tallenna tarvitsemasi: tulostiedostoja säilytetään noin 24 tuntia ja litteroinnin palautusta noin 48 tuntia.
- Lue tarvitsemasi kentät ja ohita loput.
Usein kysytyt kysymykset
Kuka voi käyttää APIa?
Kaikki, joilla on aktiivinen Basic- tai Plus-tilaus. API-käyttö sisältyy kumpaankin tilaukseen, eikä sillä ole erillistä hintaa. Ilman aktiivista tilausta uudet työt hylätään virheellä PLAN_REQUIRED. Katso tilaukset ja hinnat.
Miten API-käyttö lasketaan?
API-työt käyttävät samoja tilaustunteja kuin verkkosivusto ja Chrome-laajennus. Palvelin mittaa valitun äänen todellisen pituuden; charged_seconds työn tilassa ja jokaisella tulossivulla näyttää tarkan määrän. Jos työssä on aukkoja, joita ei voi palauttaa, käyttöehdot kertovat, miten puuttuvasta äänestä veloitetaan.
Mitä tiedostomuotoja ja -kokoja tuetaan?
Video: MP4, M4V, MOV, WebM, MKV, OGV, AVI, WMV, ASF, FLV, MPG, MPEG, VOB, TS, MTS, M2TS, 3GP, 3G2 ja MXF. Ääni: MP3, M4A, AAC, WAV, FLAC, OGG, OGA, OPUS, WMA, AMR, AIFF, AIF, CAF ja AC3. Tiedosto voi olla enintään 8 GiB. Siinä on oltava purettavissa oleva ääniraita; kopiosuojattuja tiedostoja ei voi lukea.
Mitä kieliä voin käyttää?
Automaattinen tunnistus on oletus. Voit myös antaa vihjeen äänen kielestä tai valita muistiinpanojen kielen yli 60 kielikoodista, esimerkiksi en, de, es, fr, ja tai zh. Tilikutsu listaa kaikki juuri nyt hyväksytyt arvot.
Kauanko työ kestää?
Se riippuu valitun äänen pituudesta ja hetken kuormituksesta. Työt suoritetaan taustalla, joten voit ladata pitkän tallenteen ja palata myöhemmin. Työn tilan completed_units ja total_units kertovat edistymisen.
Voinko kutsua APIa selaimesta tai mobiilisovelluksesta?
Et. API-avain antaa pääsyn tilauksesi tunteihin, joten sen on pysyttävä palvelimella, jota hallitset itse. Verkko- tai mobiilisovelluksessa lähetä tiedostot omaan taustajärjestelmääsi ja kutsu APIa sieltä.
Voinko lähettää YouTube-linkin tai muun URL-osoitteen?
Et. API käsittelee lataamiasi tiedostoja; se ei lataa URL-osoitteita eikä YouTube-videoita.
Onko webhookeja tai sähköposti-ilmoituksia?
Ei. Kysy työn tilaa ja noudata poll_after_seconds-arvoa. API-työt eivät lähetä sähköpostia.
Mitä tapahtuu, jos yhteyteni katkeaa?
Jos osan lataus epäonnistuu, pyydä sille osalle uusi allekirjoitettu URL ja lähetä se uudelleen ennen kuin lataus vanhenee. Jos vastaus työn luontiin katoaa, toista pyyntö samalla Idempotency-Key-arvolla, niin saat saman työn takaisin. Käynnissä oleva työ ei riipu yhteydestäsi.
Kuinka kauan tuloksia säilytetään?
Tulossivuja ja ladattavia tiedostoja säilytetään noin 24 tuntia työn valmistumisen jälkeen, ja litteroinnin voi palauttaa noin 48 tunnin ajan. Jokainen vastaus kertoo tarkan ajan kentässä expires_at, joten tallenna tarvitsemasi sitä ennen.
Mitä tapahtuu, jos perun avaimen tai tilaukseni päättyy?
Avaimen peruminen ei pysäytä jo käynnistyneitä töitä; lue niiden tulokset toisella avaimella. Kun tilauksesi päättyy, voimassa oleva avain voi yhä lukea tilan ja tulokset sekä perua töitä, kunnes sisältö vanhenee, mutta uudet lataukset, uudet työt ja jatkaminen vaativat aktiivisen tilauksen.
Mitä lataamilleni tiedostoille tapahtuu?
Pyrimme poistamaan ladatut alkuperäistiedostot 24 tunnin kuluessa lataamisesta. Poisto voi kestää kauemmin. Tietosuojaseloste kertoo, mitä tallennetaan ja kuinka pitkään.
Onko olemassa SDK:ta tai OpenAPI-tiedostoa?
SDK-pakettia ei ole. Käytä OpenAPI 3.1 -tiedostoa asiakkaan luomiseen tai APIn tuomiseen esimerkiksi Postmaniin tai Insomniaan, tai aloita Python- ja curl-esimerkeistä.
Mitä nopeusrajoja on?
Tili suorittaa yhden latauksen ja yhden työn kerrallaan, voi aloittaa UTC-vuorokaudessa enintään 10 latausta, yhteensä 20 GiB, luoda 12 työtä minuutissa ja lähettää kaikilla avaimillaan yhteensä 60 muuta pyyntöä minuutissa. Tilikutsu palauttaa sinua koskevat arvot.
Tiedostot ja esimerkit
Esimerkit ja sopimustiedostot julkaistaan sivuston mukana, ja ne vastaavat tuotannossa olevaa APIa.
- client.py: esimerkkiasiakas Python 3.12+:lle, vain vakiokirjasto
- quickstart.sh: Bash-esimerkki curlilla ja jq:lla
- openapi.json: OpenAPI 3.1 -kuvaus jokaisesta päätepisteestä esimerkkeineen
- paid-api.schema.json: JSON Schema jokaisesta pyynnöstä ja vastauksesta
Apua
Onko jokin epäselvää tai eikö jokin toimi? Ota yhteyttä ja kerro virhevastauksen request_id, kellonaika ja päätepiste. Älä koskaan lähetä meille API-avaintasi.