Onze API

Beschrijving interface XpressionDsgnr.com

Voorbeeldimplementatie

Een voorbeeld implementatie kun je vinden op https://xpressiondsgnr.com/example.html

Get started

De minimale HTML die je nodig hebt om XpressionDsgnr op te starten is:

                      <div id="content"></div>
                      <script src="https://xpressiondsgnr.com/dist/xdsgnr.js" type="text/javascript"></script>
                      <script>
                        var xd = new window.XpressionDsgnr('content', {width: 210,
                                                                       height: 297,
                                                                       bleed: 3,
                                                                       apikey: 'your-api-key'
                                                                    });
                      </script>
                    

Hierbij is de div met id content de container waar de app in draait. De eerste script-tag laadt de externe library. In de tweede scrip-tag wordt XpressionDsgnr geinitialiseert.

Interface Frontend

Constructor - New

var xd = new window.XpressionDsgnr(containername,config)

Initialiseert XpressionDsgnr

PropertyUitleg
containernameid van de div waarin XpressionDsgnr moet draaien
configapikeyJou API-key van XpressionDsgnr deze key is alleen geldig vanaf de geconfigureerde domeinen. (Verplicht)
widthBreedte van het uiteindelijke document in mm (verplicht in indien er geen documentkey is meegegeven)
heightHoogte van het uiteindelijke document in mm (verplicht in indien er geen documentkey is meegegeven)
bleedBreedte van de afloop in mm (verplicht in indien er geen documentkey is meegegeven)
pagecountAantal pagina's van het document (moet nog geimplementeerd worden)
allowNewPagetrue / false(default), Geeft aan of de eindgebruiker zelf pagina's mag toevoegen
templatekeyDe key van de template die in de backend is toegevoegd. (deze key is te zien als je na het toevoegen weer op het wijzig-icoon klikt)
documentkeyDe key van een eerder opgeslagen / gegenereerd document. Indien deze key wordt meegegeven, kan dit document opnieuw bewerkt worden.
bgimageVolledige url naar een afbeelding die als achtergrond afbeelding gebruikt moet worden. Denk eraan dat de CORS-headers van deze url toestaan dat de afbeelding extern geladen wordt.
userkeyIndien de aanroepende website users kent, is het mogelijk om een user-key mee te geven. Hiermee wordt het mogelijk dat een user zijn eerder geuploade beelden in meerdere documenten kan gebruiken.

save

xd.save(callbackfunction)

Slaat het huidige document op. (implementatie om een naam mee te kunnen geven volgt...)

PropertyUitleg
callbackfunctionIndien het document is opgeslagen wordt deze functie aangeroepen met parameter dk (documentkey). Deze key kan in een later stadium meegegeven worden om het document opnieuw te bewerken of de pdf te genreren.

Voorbeeld

xd.save(function(dk){console.log('document saved as ' + dk)})

createPDF

xd.createPDF(callbackfunction)

Genereert een PDF van het huidige document (lores, hires volgt)

PropertyUitleg
callbackfunctionIndien het document is gegenereert wordt deze functie aangeroepen met parameter data. Data is een hash met twee waarden: pdf - de downloadlink naar de pdf en thumb: de link naar de thumb

Voorbeeld

xd.createPDF(function(data){console.log(data)})

Interface Backend

Users

Om gebruik te kunnen maken van users (die hun eigen documenten en afbeeldingen kunnen bewaren). Kan via de backend het userbeheer uitgevoerd worden. Hiertoe moet naast de apikey ook de secretkey meegestuurd worden

List users

GET https://xpressiondsgnr.com/users?apikey=[apikey]&secretkey=[secretkey]
Return: een json-array met voor elke user de XpressionDsgnr userhash en de id zoals die is meegegeven in de create

New user

POST https://xpressiondsgnr.com/users
                      params:
                        apikey=[apikey]
                        secretkey=[secretkey]
                        myid=[id van de user in je eigen database (of een ander kenmerk)]
                    
Return: een json object met de XpressionDsgnr userhash en de id zoals die is meegegeven in de create

New user

DELETE https://xpressiondsgnr.com/users/[myid]
                      params:
                        apikey=[apikey]
                        secretkey=[secretkey]
                        myid=[id van de user in je eigen database (of een ander kenmerk)]
                    

Templates

Resellers kunnen een lijst met templates opvragen tbv de koppeling met hun eigen backend

POST https://xpressiondsgnr.com/backend/templates
                      params:
                        resellerapikey: apikey van de reseller
                        accountapikey: apikey van de account waarvan de templates opgevraagd worden
                    
Return:
                         [{id: 1,
                           decription: "Examplegroup 1",
                           templates: [
                            {key: "abcd-efgh-1234", description: "Template 1"},
                            {key: "abcd-efgh-1235", description: "Template 2"}
                           ]
                          },
                          anothergroup....
                         ]
                    

HiresPDF

Via de backend kan ook de hires-pdf opgevraagd worden

POST https://xpressiondsgnr.com/backend/hirespdf
                      params:
                        apikey: apikey van de account
                        documenthash: id van het document zoals die door de save functie is geretourneert
                    
Return: json met de url van de downloadlocatie van de pdf