Alvine Juno
Das Alvine Cloud Produkt Juno bietet Ihnen die Möglichkeit schnell, kostengünstig und flexibel Webseiten in PDF Dokumente umzuwandeln.
Lassen Sie uns anfangen
Sie können Alvine Juno einfach und schnell ausprobieren!
Risikofrei und ohne weitere Kosten. Nehmen Sie die URL einer HTML-Rechnung, oder ein anderes HTML-Dokument. Falls Sie kein Dokument zur Hand haben, nehmen Sie einfach die URL aus unserem Beispiel.
Aufruf
Unten finden Sie einige Beispiele für einige Umgebungen und Sprachen. In der Postman-Collection finden Sie weitere Beispiele zu vielen Umgebungen und Sprachen.
Alle Alvine Cloud API Endpunkte sind in Postman dokumentiert.
Sie können die API direkt ausprobieren (externe Seite):
Environment
Die einzelnen API sind in Postman mit Platzhaltern angelegt. Die Platzhalter können über die Environment-Funktion gesetzt werden.
Platzhalter | Wert | Beschreibung |
---|---|---|
JUNO-APIVERSION | v1beta | Aktuell gültige Version der API |
QA | Für Tests gegen die Entwicklungsumgebung muss qa- als Wert gesetzt werden. Ansonsten bleibt die Variable leer. |
curl --location -g --request POST 'https://juno.alvine.cloud/api/v1beta/capture' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"page-size": "A4",
"pages": [
{
"url": "https://www.alvine.cloud/"
},
{
"url": "https://www.alvine.cloud/de/produkte/"
}
]
}'
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://juno.alvine.cloud/api/v1beta/capture"
method := "POST"
payload := strings.NewReader(`{
"page-size": "A4",
"pages": [
{
"url": "https://www.alvine.cloud/"
},
{
"url": "https://www.alvine.cloud/de/produkte/"
}
]
}`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Accept", "application/json")
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var data = JSON.stringify({"page-size":"A4","pages":[{"url":"https://www.alvine.cloud/"},{"url":"https://www.alvine.cloud/de/produkte/"}]});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://juno.alvine.cloud/api/v1beta/capture");
xhr.setRequestHeader("Accept", "application/json");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://juno.alvine.cloud/api/v1beta/capture',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"page-size": "A4",
"pages": [
{
"url": "https://www.alvine.cloud/"
},
{
"url": "https://www.alvine.cloud/de/produkte/"
}
]
}',
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Als Ergebnis bekommen Sie im Erfolgsfall den Status 200, den ContentType-Header application/pdf und als Inhalt die Daten des PDF-Dokuments zurück.
Im Fehlerfall erhalten Sie einen Status größer gleich 400, den ContentType-Header application/json und ein JSON-Dokument mit weiteren Informationen zum Fehler.
JSON
In dem folgenden Beispiel werden die beiden HTML-Seiten https://www.schukai.com/ und https://www.schukai.com/de/verkaufen/ in ein DIN-A4 PDF gedruckt.
{
"page-size": "A4",
"dpi": 36,
"orientation": "Portrait",
"pages": [
{
"url": "https://www.schukai.com/",
"zoom": 1.0,
"print-media-type": true,
"viewport-width": "1280x1024",
"load-media-error-handling": "abort",
"load-error-handling": "abort",
"encoding": "utf-8",
"auth": {
"base-auth": {
"username": "name",
"password": "geheim"
}
}
},
{
"url": "https://www.schukai.com/de/verkaufen/"
}
],
"margins": {
"top": 5,
"left": 5,
"right": 5,
"bottom": 5
},
"operators": {
"smart-shrinking": true,
"grayscale": true
}
}
Feld | Beschreibung | Standard |
---|---|---|
page-size | Größe der Seite | A4 |
orientation | Ausrichtung auf Querformat (Landscape) oder Hochformat (Portrait) einstellen | Portrait |
dpi | Ändert die DPI | 36 |
pages.url | URL auf die gewünschte Webseite. Javascript wird aktuell nicht unterstützt. | |
pages.zoom | Zoomfaktor | 1.0 |
pages.print-media-type | @print Mediaqueries anwenden | true |
pages.viewport-width | Setzt die Viewport-Größe | 1280x1024 |
pages.load-media-error-handling | Abbruch (abort) oder ignorieren (ignore), wenn Bilder oder CSS fehlen | abort |
pages.load-error-handling | Abbruch (abort) oder ignorieren (ignore), wenn die Url nicht gefunden wird | abort |
pages.encoding | Standard-Encoding | utf-8 |
pages.auth.base-auth.username | Anmeldung mit Base-Auth | |
pages.auth.base-auth.password | Anmeldung mit Base-Auth | |
pages.auth.cookie.name | Name des cookies | |
pages.auth.cookie.credential | Wert des Cookies | |
margins.top | Abstand zum Rand | 5 |
margins.left | Abstand zum Rand | 5 |
margins.right | Abstand zum Rand | 5 |
margins.bottom | Abstand zum Rand | 5 |
operators.smart-shrinking | Intelligentes einpassen der Webseite in das PDF Format | true |
operators.grayscale | Graufilter anwenden | true |
Damit keine Fragen offen bleiben
Wir sind für Sie da und bieten Ihnen den perfekten Service. Profitieren Sie von unserer Erfahrung, innovativen Lösungen und einer Betreuung, die sich allein an Ihren Bedürfnissen orientiert.
Wir freuen uns auf Sie.