API REST pour IronSecureDoc

Chaknith Bin
Chaknith Bin
juillet 20, 2024
Mise à jour octobre 20, 2024
Partager:
This article was translated from English: Does it need improvement?
Translated
View the article in English

Il s'agit de la référence de l'API REST pour votre instance d'IronSecureDoc. Ce tutoriel suppose que vous avez déjà une instance du conteneur en cours d’exécution. Si vous cherchez à commencer, veuillez suivre notre guide.

Passer aux fonctionnalités :

[GET] Bilan de santé

Point de terminaison : http://localhost:8080/v1/document-services/ping

Point d'arrivée du contrôle de santé pour vérifier que le serveur fonctionne.

Réponse : 200 OK : pong


[GET] Vérifier la licence

Endpoint : http://localhost:8080/v1/document-services/check-license

Vérifie la validité de la licence.

Réponse : 200 OK : Valide


[POST] Rédiger le texte

Endpoint : http://localhost:8080/v1/document-services/pdfs/redact-text

Masque les mots sensibles dans un document au format PDF à l'aide d'une véritable rédaction. Incluez un fichier PDF en tant qu'objet pdf_file dans le corps de la requête.

Paramètres requis du corps de la requête

NomType de donnéesDescription
pdf_filefichier application/pdfLe fichier PDF à masquer.
words_to_redacttableau[string]Un tableau de mots à masquer dans le document.

Paramètres facultatifs du corps de la requête

NameData TypeDefaultDescription
user_passwordstringnullUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringnullOwner password for the input PDF. Required if the PDF has an owner password to grant access to make modifications.
specific_pagesarray[int]nullOptionally specify pages to apply to. If left empty, all pages will apply.
draw_black_boxboolTrueHave a Black Box drawn over redacted text areas.
match_whole_wordboolTrueAllow partial matches within words be redacted too.
match_caseboolnullMatch case for the words to be redacted.
overlay_textstringnullIf your prefer an Overlay Text on the redaction area such as words or symbols, set them here. If not set, a blank character will be used.
save_as_pdfaboolFalseSave the PDF with PDF/A-3 compliance.
save_as_pdfuaboolFalseSave the PDF with PDF/UA compliance.

En-têtes optionnels

NameData TypeDescription
authorstringSet the PDF Metadata Author property.
titlestringSet the PDF Metadata Title property.
subjectstringSet the PDF Metadata Subject property.

Exemple :

Demande

Paramètres requis uniquement :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'words_to_redact="pdf"' \
  -F 'draw_black_box=true' \
  -F 'match_whole_word=true' \
  -F 'match_case=true' \
CURL

Tous les paramètres obligatoires et facultatifs :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/redact-text' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'words_to_redact="word1"' \
  -F 'words_to_redact="word2"' \
  -F 'draw_black_box=true' \
  -F 'match_whole_word=true' \
  -F 'match_case=true' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
  -F 'overlay_text="REDACTED"' \
  -F 'specific_pages=0' \
  -F 'specific_pages=1' \
  -F 'save_as_pdfa=false' \
  -F 'save_as_pdfua=false' \
CURL

Réponse :

  • 200 OK avec le fichier PDF expurgé en pièce jointe.

[POST] Réduire l'expression régulière

Point de terminaison : http://localhost:8080/v1/document-services/pdfs/redact-regular-expression

Masque les correspondances sensibles d'expressions régulières (telles que les dates, les noms ou les motifs) dans un document au format PDF en utilisant la véritable caviardage. Incluez un fichier PDF en tant qu'objet pdf_file dans le corps de la requête.

Paramètres requis du corps de la requête

NameData TypeDescription
pdf_fileapplication/pdf fileThe PDF file to redact.
regular_expressionstringRegular Expression from which matching cases will be redacted from the document.

Paramètres facultatifs du corps de la requête

Nom

En-têtes optionnels

NameData TypeDescription
authorstringSet the PDF Metadata Author property.
titlestringSet the PDF Metadata Title property.
subjectstringSet the PDF Metadata Subject property.

Exemple :

Demande

Paramètres requis uniquement :

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/redact-regular-expression' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'regular_expression="[0-9]"' \
  -F 'draw_black_box=true' \
CURL

Tous les paramètres obligatoires et facultatifs :

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/redact-regular-expression' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'regular_expression="[0-9]"' \
  -F 'draw_black_box=true' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
  -F 'overlay_text="%2A"' \
  -F 'specific_pages=0' \
  -F 'specific_pages=1' \
  -F 'save_as_pdfa=false' \
  -F 'save_as_pdfua=false' \
CURL

Réponse :

  • 200 OK avec le fichier PDF expurgé en pièce jointe.

[POST] Réduire la région

Point de terminaison : http://localhost:8080/v1/document-services/pdfs/redact-region

Description : Masque le texte sensible dans une région spécifique d'un document PDF en utilisant une vraie caviardage. Incluez un fichier PDF en tant qu'objet pdf_file dans le corps de la requête.

Paramètres requis du corps de la requête

NameData TypeDescription
pdf_fileapplication/pdf fileThe PDF file to redact.
region_to_redact_xfloatX coordinate of the region to redact, starting from the bottom-left of the page.
region_to_redact_yfloatY coordinate of the region to redact, starting from the bottom-left of the page.
region_to_redact_wfloatWidth of the region to redact, starting from the specified X coordinate.
region_to_redact_hfloatHeight of the region to redact, starting from the specified Y coordinate.

Paramètres facultatifs du corps de la requête

NameData TypeDefaultDescription
user_passwordstringnullUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringnullOwner password for the input PDF. Required if the PDF has an owner password to grant access to make modifications.
specific_pagesarray[int]nullOptionally specify pages to apply to. If left empty, all pages will apply.
draw_black_boxboolTrueHave a Black Box drawn over redacted text areas.
save_as_pdfaboolFalseSave the PDF with PDF/A-3 compliance.
save_as_pdfuaboolFalseSave the PDF with PDF/UA compliance.

En-têtes optionnels

NameData TypeDescription
authorstringSet the PDF Metadata Author property.
titlestringSet the PDF Metadata Title property.
subjectstringSet the PDF Metadata Subject property.

Exemple :

Demande

Paramètres requis uniquement :

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/redact-region' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'region_to_redact_x=100' \
  -F 'region_to_redact_y=150' \
  -F 'region_to_redact_w=500' \
  -F 'region_to_redact_h=400' \
CURL

Tous les paramètres obligatoires et facultatifs :

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/redact-region' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
  -F 'region_to_redact_x=100' \
  -F 'region_to_redact_y=150' \
  -F 'region_to_redact_w=500' \
  -F 'region_to_redact_h=400' \
  -F 'specific_pages=0' \
  -F 'specific_pages=1' \
  -F 'save_as_pdfa=false' \
  -F 'save_as_pdfua=false' \
CURL

Réponse :

  • 200 OK avec le fichier PDF expurgé en pièce jointe.

[POST] Certifier / Appliquer la signature numérique

Point de terminaison : http://localhost:8080/v1/document-services/pdfs/certify

Description : Ajoute une certification à un document PDF pour affirmer qu'il n'a pas été altéré au moyen d'un fichier de certificat (.p12, .pfx). Incluez un fichier PDF en tant qu'objet pdf_file dans le corps de la requête et un fichier de certificat en tant qu'objet certificate_file dans le corps de la requête.

Paramètres requis du corps de la requête

Nom
Type de donnéesDescription
pdf_fileapplication/pdf fileThe PDF file to certify.
certificate_fileapplication/x-pkcs12 fileThe certificate file (.p12, .pfx) to use for certification.
certificate_passwordstringPassword for the provided certificate file.
certificate_permissionsint
certificate_permissions valuePermissions
1No Changes Allowed. Any further document changes will invalidate the signature.
2Only Additional Signatures and Form Filling Allowed.
3Only AdditionalSignatures, Form Filling, and Annotations Allowed

Paramètres facultatifs du corps de la requête

NameData TypeDefaultDescription
user_passwordstringnullUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringnullOwner password for the input PDF. Required if the PDF has an owner password to grant access to make modifications.
save_as_pdfaboolFalseSave the PDF with PDF/A-3 compliance.
save_as_pdfuaboolFalseSave the PDF with PDF/UA compliance.

En-têtes optionnels

NameData TypeDescription
authorstringSet the PDF Metadata Author property.
titlestringSet the PDF Metadata Title property.
subjectstringSet the PDF Metadata Subject property.

Exemple :

Demande

Paramètres requis uniquement :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/certify' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'certificate_file=@sample.pfx;type=application/x-pkcs12' \
  -F 'certificate_password="p4ssw0rd"' \
  -F 'certificate_permissions=1' \
CURL

Tous les paramètres obligatoires et facultatifs :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/certify' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'certificate_file=@sample.pfx;type=application/x-pkcs12' \
  -F 'certificate_password="p4ssw0rd"' \
  -F 'certificate_permissions=1' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
  -F 'save_as_pdfa=false' \
  -F 'save_as_pdfua=false' \
CURL

Réponse :

  • 200 OK avec le fichier PDF certifié en pièce jointe.

[POST] Signer avec signature et certificat

Endpoint : http://localhost:8080/v1/document-services/pdfs/sign

Description : Ajoute une image et une certification à cette image dans un document PDF pour attester qu'elle n'a pas été altérée au moyen d'un fichier de certificat (.p12, .pfx). Incluez un fichier PDF en tant qu'objet pdf_file dans le corps de la requête et un fichier de certificat en tant qu'objet certificate_file dans le corps de la requête.

Paramètres requis du corps de la requête

Nom

Type de donnéesDescription
pdf_fileapplication/pdf fileThe PDF file to certify.
signature_image_fileimage/jpeg or image/png fileThe signature image (.png, .jpg, .jpeg) to use for certification. Can be a logo, autograph, etc.
certificate_fileapplication/x-pkcs12 fileThe certificate file (.p12, .pfx) to use for certification.
certificate_passwordstringPassword for the provided certificate file.
certificate_permissionsint
certificate_permissions valuePermissions
1No Changes Allowed. Any further document changes will invalidate the signature.
2Only Additional Signatures and Form Filling Allowed.
3Only AdditionalSignatures, Form Filling, and Annotations Allowed

sign_specific_pageintSpecify page to apply the image and certificate to. First page is 0. If left empty, only first page will apply.
signature_image_xfloatThe X coordinate of the Rectangle region of the signature image. This starts from the top-left of the page.
signature_image_yfloatThe Y coordinate of the Rectangle region of the signature image. This starts from the top-left of the page.
signature_image_wfloatThe Width of the Rectangle region of the signature image. This starts from the top-left of the page.
signature_image_hfloatThe Height of the Rectangle region of the signature image. This starts from the top-left of the page.

Paramètres facultatifs du corps de la requête

NameData TypeDefaultDescription
user_passwordstringnullUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringnullOwner password for the input PDF. Required if the PDF has an owner password to grant access to make modifications.
specific_pagesarray[int]nullOptionally specify pages to apply to. If left empty, all pages will apply.
save_as_pdfaboolFalseSave the PDF with PDF/A-3 compliance.
save_as_pdfuaboolFalseSave the PDF with PDF/UA compliance.

En-têtes optionnels

NameData TypeDescription
authorstringSet the PDF Metadata Author property.
titlestringSet the PDF Metadata Title property.
subjectstringSet the PDF Metadata Subject property.

Exemple :

Demande

Paramètres requis uniquement :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/sign' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'signature_image_file=@autograph.png;type=image/png' \
  -F 'certificate_file=@sample.pfx;type=application/x-pkcs12' \
  -F 'certificate_password="p4ssw0rd"' \
  -F 'certificate_permissions=1' \
  -F 'sign_specific_page=0' \
  -F 'signature_image_x=100' \
  -F 'signature_image_y=150' \
  -F 'signature_image_w=500' \
  -F 'signature_image_h=400' \
CURL

Tous les paramètres obligatoires et facultatifs :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/sign' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'certificate_file=@sample.pfx;type=application/x-pkcs12' \
  -F 'certificate_password="p4ssw0rd"' \
  -F 'certificate_permissions=0' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
  -F 'save_as_pdfa=false' \
  -F 'save_as_pdfua=false' \
  -F 'sign_specific_page=0' \
  -F 'signature_image_x=100' \
  -F 'signature_image_y=150' \
  -F 'signature_image_w=500' \
  -F 'signature_image_h=400' \
CURL

Réponse :

  • 200 OK avec le fichier PDF certifié en pièce jointe.

[POST] Vérifier les signatures

Point de terminaison : http://localhost:8080/v1/document-services/pdfs/verify-signatures

Description : Vérifie que le mot de passe utilisateur et le mot de passe propriétaire fournis sont valides pour le pdf_file

Paramètres requis du corps de la requête

NameData TypeDescription
pdf_fileapplication/pdf fileThe PDF file to encrypt.

Paramètres facultatifs du corps de la requête

NameData TypeDefaultDescription
user_passwordstringnullUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringnullOwner password for the input PDF. Required if the PDF has an owner password to grant access to make modifications.

Exemple :

Demande

Paramètres requis uniquement :

curl -X POST 'https://api.securedoc.com/v1/document-services/pdfs/verify-signatures' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
YAML

Tous les paramètres obligatoires et facultatifs :

curl -X POST 'https://api.securedoc.com/v1/document-services/pdfs/verify-signatures' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
YAML

Réponse :

  • 200 OK s'il y a des signatures et qu'elles sont toutes valides
  • 400 Résultat BadRequest s'il n'y a pas de signatures ou si au moins une est invalide.

[POST] Chiffrer / Ajouter un mot de passe et des autorisations

Point de terminaison : http://localhost:8080/v1/document-services/pdfs/encrypt

Description: Ajoute une couche de sécurité à un document PDF en le cryptant avec un mot de passe utilisateur et propriétaire. Inclure un fichier PDF en tant qu'objet pdf_file dans le corps de la demande.

Paramètres requis du corps de la requête

NameData TypeDescription
pdf_fileapplication/pdf fileThe PDF file to encrypt.
allow_extracting_contentboolAllow the extraction of content from the PDF file.
allow_form_fillingboolAllow the filling of forms in the resulting PDF.
allow_annotationsboolAllow the addition or modification of annotations in the resulting PDF.
allow_printingboolAllow printing of the resulting PDF.
allow_modificationsboolAllow modifications to the resulting PDF.
new_owner_passwordstringNew owner password for the output PDF. Grants full access, including changing permissions and passwords.

Paramètres facultatifs du corps de la requête

NameData TypeDefaultDescription
user_passwordstringnullUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringnullOwner password for the input PDF. Required if the PDF has an owner password to grant access to make modifications.
new_user_passwordstringnullNew user password for the output PDF. Grants read access and other specified permissions.
save_as_pdfaboolFalseSave the PDF with PDF/A-3 compliance.
save_as_pdfuaboolFalseSave the PDF with PDF/UA compliance.

En-têtes optionnels

NameData TypeDescription
authorstringSet the PDF Metadata Author property.
titlestringSet the PDF Metadata Title property.
subjectstringSet the PDF Metadata Subject property.

Exemple :

Demande

Paramètres requis uniquement :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/encrypt' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'allow_extracting_content=true' \
  -F 'allow_form_filling=true' \
  -F 'allow_annotations=true' \
  -F 'allow_printing=true' \
  -F 'allow_modifications=false' \
CURL

Tous les paramètres obligatoires et facultatifs :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/encrypt' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'allow_extracting_content=true' \
  -F 'allow_form_filling=true' \
  -F 'allow_annotations=true' \
  -F 'allow_printing=true' \
  -F 'allow_modifications=false' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
  -F 'new_user_password="p4ssw0rd"' \
  -F 'save_as_pdfa=false' \
  -F 'save_as_pdfua=false' \
CURL

Réponse :

  • 200 OK avec le fichier PDF crypté en pièce jointe.

[POST] Extraire du texte d'un document

Point d'accès : http://localhost:8080/v1/document-services/pdfs/extract

Description : Extrait le texte intégré dans les pages d'un document. Incluez un fichier PDF en tant qu'objet pdf_file dans le corps de la requête.

Paramètres requis du corps de la requête

NameData TypeDescription
pdf_fileapplication/pdf fileThe PDF file to encrypt.

Paramètres facultatifs du corps de la requête

NameData TypeDefaultDescription
user_passwordstringnullUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringnullOwner password for the input PDF. Required if the PDF has an owner password to grant access to make modifications.
specific_pagesarray[int]nullOptionally specify pages to apply to. If left empty, all pages will apply.

Exemple :

Demande

Paramètres requis uniquement :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/extract' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
CURL

Tous les paramètres obligatoires et facultatifs :

curl -X POST 'http://localhost:8080/v1/document-services/pdfs/extract' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
  -F 'specific_pages=0' \
  -F 'specific_pages=1' \
CURL

Réponse :

  • 200 OK avec le texte extrait comme réponse.

[POST] Vérifier le mot de passe du document

Point de terminaison : http://localhost:8080/v1/document-services/pdfs/verify-password

Description : Vérifie que le mot de passe utilisateur et le mot de passe propriétaire fournis sont valides pour le pdf_file

Paramètres requis du corps de la requête

NameData TypeDescription
pdf_fileapplication/pdf fileThe PDF file.
user_passwordstringUser password for the input PDF. Required if the PDF has a user password to grant read access.
owner_passwordstringOwner password for the input PDF.

Exemple :

Demande

Paramètres requis uniquement :

curl -X POST 'https://api.securedoc.com/v1/document-services/pdfs/verify-password' \
  -H 'accept: */*' \
  -H 'author: Iron Software 
 IRONSECUREDOC' \
  -H 'title: WEBSITE DEMO 2024' \
  -H 'subject: DEMO EXAMPLE' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@sample.pdf;type=application/pdf' \
  -F 'user_password="password"' \
  -F 'owner_password="5yug2RT45th32h78"' \
YAML

Réponse :

  • 200 OK
Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.