El flujo de trabajo de aprobación

Aprobación

Añade un botón de solicitud de aprobación al visor de un documento y personaliza las plantillas de correo que usa el flujo de trabajo de aprobación, ambos a través de la API.

APIs usadas en esta discusión

¿Hay algo incorrecto o desactualizado en esta guía?

Qué puedes hacer

El flujo de trabajo de aprobación de FlipLink permite a los lectores solicitar la aprobación de un documento. Dos endpoints lo configuran:

  • Añade un botón de solicitud de aprobación al visor. Al activarlo se dispara el flujo de trabajo de solicitud de aprobación.
  • Configura las plantillas de correo que usa el flujo de trabajo de aprobación — los correos de solicitud, recordatorio y envío.

El flujo de trabajo de aprobación se aplica solo a ítems de tipo Document — ítems creados con DocType=document. No está disponible en flipbooks estándar.

Antes de empezar

Necesitarás:

  • Una clave de API — enviada como el encabezado X-Api-Key, o como Authorization: Bearer YOUR_API_KEY, en cada solicitud.
  • El {flipbookId} — el ID numérico del documento que estás configurando. Lo devuelven create-by-file / create-by-url (como ID) o list.
  • Todas las solicitudes van a la URL base https://go.fliplink.me.

Ambos endpoints toman un cuerpo form-urlencoded (no JSON).

Añade el botón de aprobación

PUT /api/set-approval-button/{flipbookId} añade un botón de solicitud de aprobación al visor. Al activarlo se dispara el flujo de trabajo de solicitud de aprobación.

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'

Campos:

  • IsApprovalButtontrue para mostrar el botón de solicitud de aprobación, false para ocultarlo.
  • ApprovalButtonText — la etiqueta del botón.
  • ApprovalButtonColor — el color de fondo del botón, como valor hexadecimal con el # inicial (p. ej. #0055FF). Por defecto es #000000. El valor se almacena tal cual; la API no lo valida.
  • ApprovalButtonTextColor — el color del texto del botón, como valor hexadecimal con el # inicial (p. ej. #FFFFFF). Por defecto es #FFFFFF. El valor se almacena tal cual; la API no lo valida.

Respuesta:

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

Configura las plantillas de correo de aprobación

PUT /api/set-approval-email-templates/{flipbookId} configura las plantillas de correo que usa el flujo de trabajo de aprobación. Cada campo tiene un texto predeterminado integrado; dejar un campo vacío conserva ese texto predeterminado.

El texto de la plantilla puede incluir merge tokens con la forma ##TOKEN##, que se reemplazan cuando se envía el correo — por ejemplo, ##DOCUMENT_TITLE## inserta el título del documento.

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='

Respuesta:

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

Errores posibles

  • Clave de API ausente o no válida → HTTP 401. Esto devuelve una página HTML de "Unauthorized" sin formato sin formato — no hay cuerpo JSON. Comprueba que el encabezado X-Api-Key esté presente y sea correcto.
  • ID del ítem no encontrado o no perteneciente a tu clave → HTTP 200 con Message: "Item not found".
  • Campo del cuerpo desconocido o mal escrito → HTTP 200 con Message: "Unknown field(s) '…'. Expected: …".

Notas

  • En el endpoint de plantillas de correo, cada campo tiene un texto predeterminado integrado; enviar un valor vacío para un campo conserva el texto predeterminado de esa plantilla.
  • El texto de las plantillas de correo admite merge tokens ##TOKEN## (p. ej. ##DOCUMENT_TITLE## para el título del documento), sustituidos en el momento del envío.
  • Los colores del botón (ApprovalButtonColor, ApprovalButtonTextColor) son valores hexadecimales con un # inicial y se almacenan tal cual sin validación; los valores predeterminados son #000000 y #FFFFFF.