De goedkeuringsworkflow

Goedkeuring

Voeg een knop voor goedkeuringsverzoeken toe aan de viewer van een document en pas de e-mailtemplates aan die de goedkeuringsworkflow gebruikt, beide via de API.

API's die in deze discussie worden gebruikt

Iets onjuist of verouderd in deze gids?

Wat je kunt doen

De goedkeuringsworkflow van FlipLink laat kijkers goedkeuring op een document aanvragen. Twee endpoints configureren hem:

  • Voeg een knop voor goedkeuringsverzoeken toe aan de viewer. Als je hem inschakelt, start dat de goedkeuringsverzoek-workflow.
  • Stel de e-mailtemplates in die de goedkeuringsworkflow gebruikt — de aanvraag-, herinnerings- en verzendmails.

De goedkeuringsworkflow geldt alleen voor Document-items — items die zijn gemaakt met DocType=document. Hij is niet beschikbaar op standaardflipbooks.

Voordat je begint

Je hebt nodig:

  • Een API-sleutel — meegestuurd als de X-Api-Key-header, of als Authorization: Bearer YOUR_API_KEY, op elk verzoek.
  • De {flipbookId} — de numerieke ID van het document dat je configureert. Die wordt teruggegeven door create-by-file / create-by-url (als ID) of door list.
  • Alle verzoeken gaan naar de basis-URL https://go.fliplink.me.

Beide endpoints nemen een form-urlencoded body (geen JSON).

De goedkeuringsknop toevoegen

PUT /api/set-approval-button/{flipbookId} voegt een knop voor goedkeuringsverzoeken toe aan de viewer. Als je hem inschakelt, start dat de goedkeuringsverzoek-workflow.

curl -X PUT 'https://go.fliplink.me/api/set-approval-button/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'IsApprovalButton=true' \
  --data-urlencode 'ApprovalButtonText=Request approval' \
  --data-urlencode 'ApprovalButtonColor=#0055FF' \
  --data-urlencode 'ApprovalButtonTextColor=#FFFFFF'

Velden:

  • IsApprovalButtontrue om de knop voor goedkeuringsverzoeken te tonen, false om hem te verbergen.
  • ApprovalButtonText — het knoplabel.
  • ApprovalButtonColor — de achtergrondkleur van de knop, als hex-waarde met het voorafgaande # (bijv. #0055FF). Standaard #000000. De waarde wordt opgeslagen zoals hij is; de API valideert hem niet.
  • ApprovalButtonTextColor — de tekstkleur van de knop, als hex-waarde met het voorafgaande # (bijv. #FFFFFF). Standaard #FFFFFF. De waarde wordt opgeslagen zoals hij is; de API valideert hem niet.

Response:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

De goedkeurings-e-mailtemplates instellen

PUT /api/set-approval-email-templates/{flipbookId} stelt de e-mailtemplates in die de goedkeuringsworkflow gebruikt. Elk veld heeft ingebouwde standaardtekst; een veld leeg laten behoudt die standaard.

Templatetekst kan merge-tokens in de ##TOKEN##-vorm bevatten, die worden vervangen wanneer de e-mail wordt verzonden — ##DOCUMENT_TITLE## voegt bijvoorbeeld de titel van het document in.

curl -X PUT 'https://go.fliplink.me/api/set-approval-email-templates/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'EmailApproveRequestSubject=Approval needed: ##DOCUMENT_TITLE##' \
  --data-urlencode 'EmailApproveRequestBody=' \
  --data-urlencode 'EmailApproveRemindSubject=' \
  --data-urlencode 'EmailApproveRemindBody=' \
  --data-urlencode 'EmailApproveSubmitSubject=' \
  --data-urlencode 'EmailApproveSubmitBody='

Response:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Mogelijke fouten

  • Ontbrekende of ongeldige API-sleutel → HTTP 401. Dit geeft een kale Unauthorized-HTML-pagina terug — er is geen JSON-body. Controleer of de X-Api-Key-header aanwezig en correct is.
  • Item-ID niet gevonden of niet in eigendom van je sleutel → HTTP 200 met Message: "Item not found".
  • Onbekend of verkeerd gespeld body-veld → HTTP 200 met Message: "Unknown field(s) '…'. Expected: …".

Opmerkingen

  • Op het e-mailtemplates-endpoint heeft elk veld ingebouwde standaardtekst; een lege waarde voor een veld meesturen behoudt de standaard van die template.
  • Templatetekst voor e-mails ondersteunt ##TOKEN##-merge-tokens (bijv. ##DOCUMENT_TITLE## voor de titel van het document), die bij verzending worden vervangen.
  • Knopkleuren (ApprovalButtonColor, ApprovalButtonTextColor) zijn hex-waarden met een voorafgaand # en worden zonder validatie opgeslagen zoals ze zijn; de standaarden zijn #000000 en #FFFFFF.