Encripta y prodege tu PDF

Si encuentras algún problema con el API, por favor comunícalo en GitHub


4.1 Cómo encriptar y establecer permisos en un pdf usando nuestra API


URL

Para encriptar un PDF usando nuestra API Rest es necesario realizar una llamada POST a la siguiente url:

https://getoutpdf.com/api/tool/encrypt-pdf


Parámetros GET

Nuestra API Rest no dispone de operaciones a través de parámetros GET


Parámetros POST

  • api_keyApi key generada para tu licencia. Puedes ver tu api key en
    (string, required)
  • pdf_inFichero PDF de origen codificado en base64
    (string, required)
  • user_passwordContraseña de usuario para encriptar el PDF
    (string, required)
  • owner_passwordContraseña de propietario para encriptar el PDF. Este parámetro solo tendrá efecto si está presente el parámetro "user_password"
    (string, required)
  • assemblePermiso para montar documento
    (boolean, optional, default: true)
  • copyPermiso para copiar
    (boolean, optional, default: true)
  • copy_accessibilityPermiso para copiar para accesibilidad
    (boolean, optional, default: true)
  • fillPermiso para rellenar formularios
    (boolean, optional, default: true)
  • modifyPermiso para modificar el documento
    (boolean, optional, default: true)
  • modify_annotationsPermiso para modificar anotaciones
    (boolean, optional, default: true)
  • printPermiso para imprimir el documento
    (boolean, optional, default: true)
  • print_degradedPermiso para impresión degradada
    (boolean, optional, default: true)

Puedes hacer una llamada POST, utilizando la cabecera html application/x-www-form-urlencoded, con los parámetros anteriormente descritos.

O también puedes enviar los parámetros a través del formato JSON, utilizando la cabecera html application/json:

{
    "api_key" : "...",                  // string, required
    "pdf_in" : "...",                   // string, required
    "user_password" : "...",            // string, required
    "owner_password" : "...",           // string, required
    "assemble": "...",                  // boolean, optional, default: true
    "copy": "...",                      // boolean, optional, default: true
    "copy_accessibility": "...",        // boolean, optional, default: true
    "fill": "...",                      // boolean, optional, default: true
    "modify": "...",                    // boolean, optional, default: true
    "modify_annotations": "...",        // boolean, optional, default: true
    "print": "...",                     // boolean, optional, default: true
    "print_degraded": "...",            // boolean, optional, default: true
}

Ejemplo

{
    "api_key" : "64b5d1054b69e676b9984d8406c5209a6ba78...",
    "pdf_in" : "JVBERi0xLjQNJeLjz9MNCjYgMCBvYmo8PC9I...",
    "user_password" : "userpassword",
    "owner_password" : "ownerpassword",
    "assemble": true,
    "copy": false,
    "copy_accessibility": true,
    "fill": true,
    "modify": true,
    "modify_annotations": true,
    "print": false,
    "print_degraded": true
}

Respuesta

Si la operación se ha realizado correctamente la respuesta es un JSON con la siguiente estructura:

{
    "api_key": "...",       // string - Api key utilizada para tu licencia
    "pdf_base64": "...",    // string - Fichero PDF codificado en base64
    "tokens_used": "...",   // integer - Créditos utilizados para la operación
    "tokens_left": "..."    // integer - Créditos restantes
}

Errores

Si se produce un error en el envío de parámetros, la respuesta será un JSON con la siguiente estructura:

{
    "errors": {
        "param1": [     // string - Nombre del parámetro que ha generado el error
            "message"   // string - Descripción del error
        ],
        "param2": [
            "message"
        ],
        ...
        "paramN": [
            "message"
        ]
    }
}

Si se produce un error en la operación, la respuesta será un JSON con la siguiente estructura:

{
    "errors": [
        "message1",
        "message2",
        ...
        "messageN"
    ]
}