--- title: "Données de documents personnalisés" slug: "custom-document-data" updated: 2025-03-02T07:01:47Z published: 2025-03-02T07:01:47Z canonical: "docs.onespan.com/custom-document-data" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.onespan.com/llms.txt > Use this file to discover all available pages before exploring further. # Données de documents personnalisés [SDK Java](/v1/docs/fr/custom-document-data#sdk-java) [.NET SDK](/v1/docs/fr/custom-document-data#net-sdk) [API REST](/v1/docs/fr/custom-document-data#api-rest) ## SDK Java Pour télécharger l'exemple complet de code, consultez notre site [Partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/document-attributes-java-sdk/). Les attributs de document sont des données personnalisées liées à un document dans une transaction, ou à toutes les données dans une transaction. Ces données ne sont pas interprétées par OneSpan Sign. En tant que tels, les utilisateurs de ces données sont libres de stocker et d'interpréter les données qu'ils souhaitent. Les données personnalisées peuvent également être appliquées au niveau de la transaction. Pour obtenir plus d'informations, consultez [Attributs du paquet](/v1/docs/fr/custom-transaction-data#sdk-java). L'exemple de code suivant illustre la manière la plus simple de créer un paquet avec des attributs de document personnalisés. Cet exemple illustre comment créer des attributs personnalisés avec les clés Department et Employee. Les données d'attributs personnalisés sont construites sous forme de mappage. ```java DocumentPackage pkg = eslClient.getPackageService().getPackage(packageId); Document doc = pkg.getDocument(DOCUMENT_NAME); Map < String, Object > attributes = doc.getData(); for (Map.Entry < String, Object > entry: attributes.entrySet()) { System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue()); } ``` ### Récupération de vos attributs Pour récupérer ces attributs, utilisez le code suivant : ```java DocumentPackage pkg = eslClient.getPackageService().getPackage(packageId); Document doc = pkg.getDocument(DOCUMENT_NAME); Map attributes = doc.getData(); for (Map.Entry entry : attributes.entrySet()) {    System.out.println("Key : " + entry.getKey() + " Value : " + entry.getValue());   } ``` ### Résultats Voici un exemple de ce que vous pouvez vous attendre à voir une fois que vous aurez exécuté votre code. ![java](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/java-300x77(1).png?sv=2026-02-06&spr=https&st=2026-11-13T10%3A25%3A13Z&se=2026-11-13T11%3A25%3A13Z&sr=c&sp=r&sig=6xVYaSylrEWupsYNpfxDsnnk4ms3px1c6LyvbrJktg0%3D) ## .NET SDK Pour télécharger l'exemple complet de code, consultez notre site [Partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/document-attributes-java-sdk/). Les attributs de document sont des données personnalisées liées à un document dans une transaction, ou à toutes les données dans une transaction. Ces données ne sont pas interprétées par OneSpan Sign. En tant que tels, les utilisateurs de ces données sont libres de stocker et d'interpréter les données qu'ils souhaitent. Les données personnalisées peuvent également être appliquées au niveau de la transaction. Pour obtenir plus d'informations, consultez [Attributs du paquet](/v1/docs/fr/custom-transaction-data#net-sdk). L'exemple de code suivant illustre la manière la plus simple de créer un paquet avec des attributs de document personnalisés. Cet exemple illustre comment créer des attributs personnalisés avec les clés Department et Employee. Les données d'attributs personnalisés sont construites sous forme de mappage. ```csharp DocumentPackage superDuperPackage = PackageBuilder    .NewPackageNamed(PackageName)    .DescribedAs("This is a package created using the OneSpan Sign SDK")    .WithSigner(SignerBuilder        .NewSignerWithEmail(email1)        .WithCustomId("Client1")        .WithFirstName("John")        .WithLastName("Smith")        .WithTitle("Managing Director")        .WithCompany("Acme Inc."))    .WithDocument(DocumentBuilder        .NewDocumentNamed(DOCUMENT_NAME)        .FromStream(fileStream1, DocumentType.PDF)        .WithSignature(SignatureBuilder            .SignatureFor(email1)            .OnPage(0)            .AtPosition(100, 100))        .WithData(DocumentAttributesBuilder            .NewDocumentAttributes()            .AddAttribute("Department", "1806")            .AddAttribute("Employee", "135526")))    .Build(); ``` ### Récupération de vos attributs Pour récupérer ces attributs, utilisez le code suivant : ```csharp DocumentPackage pkg = eslClient.GetPackage(packageId); Document doc = pkg.GetDocument("sample doc"); IDictionary < string, object > attributes = doc.Data; foreach(var attribute in attributes) { Debug.WriteLine("Key : " + attribute.Key + " Value : " + attribute.Value); } ``` ### Résultats Voici un exemple de ce que vous pouvez vous attendre à voir une fois que vous aurez exécuté votre code. ![java](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/custom_document_data(2).png?sv=2026-02-06&spr=https&st=2026-11-13T10%3A25%3A13Z&se=2026-11-13T11%3A25%3A13Z&sr=c&sp=r&sig=6xVYaSylrEWupsYNpfxDsnnk4ms3px1c6LyvbrJktg0%3D) ## API REST Pour télécharger l'exemple complet de code, consultez notre site [Partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/document-attributes-java-sdk/). Les attributs de document sont des données personnalisées liées à un document dans une transaction, ou à toutes les données dans une transaction. Ces données ne sont pas interprétées par OneSpan Sign. En tant que tels, les utilisateurs de ces données sont libres de stocker et d'interpréter les données qu'ils souhaitent. Les données personnalisées peuvent également être appliquées au niveau de la transaction. Pour obtenir plus d'informations, consultez [Attributs du paquet](/v1/docs/fr/custom-transaction-data#api-rest). L'exemple de code suivant illustre la manière la plus simple de créer un paquet avec des attributs de document personnalisés. Cet exemple illustre comment créer des attributs personnalisés avec les clés Department et Employee. Les données d'attributs personnalisés sont construites sous forme de mappage. #### Requête HTTP ```http POST /api/packages ``` #### En-têtes HTTP ```http Accept: application/json   Content-Type: multipart/form-data   Authorization: Basic api_key ``` #### Données utiles de la demande ```json ------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="file"; filename="testDocumentExtraction.pdf" Content-Type: application/pdf %PDF-1.5 %µµµµ 1 0 obj <>>> endobj.... ------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="payload" {  "autocomplete": true,  "documents": [    {      "approvals": [        {          "fields": [            {              "extract": false,              "height": 50,              "left": 100,              "page": 0,              "subtype": "FULLNAME",              "top": 100,              "type": "SIGNATURE",              "width": 200            }          ],          "role": "Client1"        }      ],      "data": {        "Department": "1806",        "Employee": "135526"      },      "name": "sample doc"    }  ],  "name": "Document Attributes Example",  "roles": [    {      "id": "Client1",      "name": "Client1",      "signers": [        {          "company": "Acme Inc.",          "email": "mail32@example.com",          "firstName": "John",          "id": "Client1",          "lastName": "Smith",          "title": "Managing Director"        }      ]    }  ],  "trashed": false,  "type": "PACKAGE",  "visibility": "ACCOUNT" } ------WebKitFormBoundary1bNO60n7FqP5WO4t-- ``` Pour une description complète de chaque champ, voir le tableau des données utiles de la demande ci-dessous. #### Données utiles de la réponse ```json {   "id": "9sKhW-h-qS9m6Ho3zRv3n2a-rkI="   } ``` Si vous souhaitez récupérer vos attributs à un stade ultérieur, vous pouvez le faire en récupérant simplement votre document JSON : ```http GET https://sandbox.esignlive.com/api/packages/{packageId}/documents/{documentId} ``` Ensuite, bouclez sur la propriété du champ data. ### Résultats Voici un exemple de ce que vous pouvez vous attendre à voir une fois que vous aurez exécuté votre code. ![java](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/custom_document_data(3).png?sv=2026-02-06&spr=https&st=2026-11-13T10%3A25%3A13Z&se=2026-11-13T11%3A25%3A13Z&sr=c&sp=r&sig=6xVYaSylrEWupsYNpfxDsnnk4ms3px1c6LyvbrJktg0%3D) ### Tableau des données utiles de la demande | Propriété | Type | Modifiable | Requis | Par défaut | Exemples de valeurs | | --- | --- | --- | --- | --- | --- | | statut | chaîne de caractères | Oui | Non | ÉBAUCHE | ÉBAUCHE / ENVOYÉ / COMPLÉTÉ / ARCHIVÉ / DÉCLINÉ / REFUSÉ / EXPIRÉ | | ComplétionAuto | booléen | Oui | Non | vrai | vrai / faux | | type | chaîne de caractères | Oui | Non | PACKAGE | PAQUET / MODÈLE / MISE EN PAGE | | nom | chaîne de caractères | Oui | Oui | s.o. | Exemple d'attributs de document | | supprimé | booléen | Oui | Non | faux | vrai / faux | | visibilité | chaîne de caractères | Oui | Non | COMPTE | COMPTE / EXPÉDITEUR | | documents | | | | | | | nom | chaîne de caractères | Oui | Non | s.o. | exemple de document | | approbations | | | | | | | champs | | | | | | | sous-type | chaîne de caractères | Oui | Non | s.o. | NOM COMPLET / INITIALES / CAPTURE / CAPTURE_MOBILE / ÉTIQUETTE / CHAMP DE TEXTE / ZONE DE TEXTE / CASE / DATE / RADIO / LISTE | | type | chaîne de caractères | Oui | Non | s.o. | SIGNATURE / ENTRÉE | | extrait | booléen | Oui | Non | faux | vrai / faux | | hauteur | entier | Oui | Non | 50 | 50 / 100 / 150 ... | | gauche | entier | Oui | Non | 0 | 50 / 100 / 150 ... | | page | entier | Oui | Non | 0 | 0 / 1 / 2 ... | | haut | entier | Oui | Non | 0 | 50 / 100 / 150 ... | | largeur | entier | Oui | Non | 200 | 50 / 100 / 150 ... | | | | | | | | | rôle | chaîne de caractères | Oui | Non | s.o. | Client1 | | données | | | | | | | Département | chaîne de caractères | Oui | Non | s.o. | 1806 | | Employé | chaîne de caractères | Oui | Non | s.o. | 135526 | | rôles | | | | | | | id | chaîne de caractères | Oui | Non | s.o. | Client1 | | nom | chaîne de caractères | Oui | Non | s.o. | Client1 | | type | chaîne de caractères | Oui | Non | SIGNER | SIGNATAIRE / EXPÉDITEUR | | signataires | | | | | | | courriel | chaîne de caractères | Oui | Oui | s.o. | courriel.préparateur@exemple.com | | Prénom | chaîne de caractères | Oui | Oui | s.o. | John | | Nom de famille | chaîne de caractères | Oui | Oui | s.o. | Smith | | téléphone | chaîne de caractères | Oui | Non | s.o. | 514-555-8888 | | id | chaîne de caractères | Oui | Non | s.o. | Client1 | | entreprise | chaîne de caractères | Oui | Non | s.o. | Acme Inc. | | titre | chaîne de caractères | Oui | Non | s.o. | Directeur général |