Documents

Sous-client pour les endpoints /v1/documents.

Classes: - SyncDocumentsClient : Accès synchrone aux endpoints documents. - AsyncDocumentsClient : Accès asynchrone aux endpoints documents.

Notes: Utiliser de préférence les objets suivants pour acceder aux endpoints: - henrri_connect.SyncHenrriClient - henrri_connect.AsyncHenrriClient

class henrri_connect.documents.AsyncDocumentsClient(client)[source]

Bases : object

Accès asynchrone aux endpoints documents.

Arguments - client : Objet henrri_connect.AsyncHenrriClient.

Methods - list_documents : Liste tous les documents. - add : Ajoute un document. - get : Accès au document par son ID. - get_with_all : Accès au document par son ID avec toutes ses relations incluses. - get_all_included : Accès au document par son ID avec toutes ses données incluses. - modify : Modifie un document par son ID. - delete : Supprime un document par son ID. - get_tax_details : Accès aux taxes d’un document par son ID. - validate : Valide un document. - get_pdf_url : Accès au document par son ID et son GUID. - get_pdf_bytes : Accès au document par son ID et son GUID. - get_pdf_file : Accès au document par son ID et son GUID. - get_display : Accès aux données d’affichage d’un document par son ID. - get_payment_milestones : Accès aux milestones de paiement d’un document par son ID. - finalize : Finalise un document. - transform_to_invoice : Transforme un document (devis, bon de livraison…) en facture. - get_next_code_batch : Accès au code de batch suivant. - list_with_selected_fields : Liste les documents avec sélection de champs.

async list_documents(*, request)[source]

Liste les documents avec pagination et filtres optionnels.

Arguments - request (DocumentQuery) : Paramètres de recherche.

Returns - PagedListResponse[Document] : Liste paginée de documents.

Type renvoyé:

PagedListResponse[Document]

async add(document)[source]

Crée un nouveau document.

Arguments - document (Document) : Document à créer.

Returns - Document : Document créé.

Type renvoyé:

Document

async get(doc_id)[source]

Récupère un document par son identifiant.

Arguments - doc_id (int) : Identifiant du document.

Returns - Document : Document trouvé.

Type renvoyé:

Document

async get_with_all(doc_id)[source]

Récupère un document avec toutes ses relations incluses.

Arguments - doc_id (int) : Identifiant du document.

Returns - Document : Document avec toutes ses relations incluses.

Type renvoyé:

Document

async get_all_included(doc_id)[source]

Récupère un document avec toutes ses données incluses.

Arguments - doc_id (int) : Identifiant du document.

Returns - Document : Document avec toutes ses données incluses.

Type renvoyé:

Document

async modify(doc_id, document)[source]

Met à jour un document existant.

Arguments - doc_id (int) : Identifiant du document. - document (Document) : Document à mettre à jour.

Returns - Document : Document mis à jour.

Type renvoyé:

Document

async delete(doc_id)[source]

Supprime un document.

Arguments - doc_id (int) : Identifiant du document.

Type renvoyé:

None

async get_tax_details(doc_id)[source]

Récupère le détail des taxes d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - TaxDetailArray : Détail des taxes du document.

Type renvoyé:

TaxDetailArray

async validate(doc_id, request)[source]

Valide électroniquement un document.

Arguments - doc_id (int) : Identifiant du document. - request (ValidateDocumentRequest) : Dossier à valider.

Returns - Document : Document validé.

Type renvoyé:

Document

async get_pdf_url(doc_id)[source]

Génère une URL de téléchargement pour le PDF d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - PdfUrlResponse : URL de téléchargement du PDF du document.

Type renvoyé:

PdfUrlResponse

async get_pdf_bytes(doc_id)[source]

Télécharge le PDF d’un document (retourne les octets bruts).

Arguments - doc_id (int) : Identifiant du document.

Returns - bytes : Octets bruts du PDF du document.

Type renvoyé:

bytes

async get_pdf_file(doc_id, guid)[source]

Télécharge un fichier PDF identifié par son GUID.

Arguments - doc_id (int) : Identifiant du document. - guid (str) : GUID du fichier PDF.

Returns - bytes : Octets bruts du fichier PDF.

Type renvoyé:

bytes

async get_display(doc_id)[source]

Récupère les données d’affichage d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - Document : Document avec les données d’affichage.

Type renvoyé:

Document

async get_payment_milestones(doc_id)[source]

Récupère les jalons de paiement d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - ListResponse[PaymentMilestone] : Liste des jalons de paiement du document.

Type renvoyé:

ListResponse[PaymentMilestone]

async finalize(doc_id)[source]

Finalise un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - Document : Document finalisé.

Type renvoyé:

Document

async transform_to_invoice(doc_id)[source]

Transforme un document (devis, bon de livraison…) en facture.

Arguments - doc_id (int) : Identifiant du document.

Returns - Document : Document transformé en facture.

Type renvoyé:

Document

async get_next_quote_batch()[source]

Récupère le prochain numéro de lot pour un devis.

Returns - object : Numéro de lot.

Type renvoyé:

object

async list_with_selected_fields(*, page=1, limit=50, fields=None, **kwargs)[source]

Liste les documents avec sélection de champs.

Arguments - page (int) : Numéro de page (par défaut 1). - limit (int) : Nombre de documents par page (par défaut 50). - fields (str | None) : Champs à retourner (par défaut None). - **kwargs (object) : Autres paramètres.

Returns - PagedListResponse[Document] : Liste de documents.

Type renvoyé:

PagedListResponse[Document]

class henrri_connect.documents.Document(**data)[source]

Bases : CamelModel

Représente un document dans l’API Henrri Connect.

Attributs: - id: Identifiant unique du document. - identity: Identité du document. - finalized: Indique si le document est finalisé. - type: Type du document. - document_type_id: Identifiant du type de document. - document_type: Type de document (si applicable). - title: Titre du document. - subtitle: Sous-titre du document (si applicable). - price_before_tax: Prix total avant taxe du document. - tax_amount: Montant total de la taxe du document. - price_after_tax: Prix total après taxe du document. - due_label: Libellé de l’échéance du document (si applicable). - last_modification_date: Date de dernière modification du document. - date: Date du document. - validated: Indique si le document est validé. - validation_date: Date de validation du document (si applicable). - validation_firstname: Prénom de la personne ayant validé le document (si applicable). - validation_lastname: Nom de la personne ayant validé le document (si applicable). - validation_email: E-mail de la personne ayant validé le document (si applicable). - validation_ip: IP de la personne ayant validé le document (si applicable). - lines: Liste de lignes de document associées au document (si applicable). - customer_id: Identifiant du client associé au document (si applicable). - customer: Client associé au document (si applicable). - customer_address: Adresse du client associée au document (si applicable). - user_can_validate: Indique si l’utilisateur peut valider le document. - footer_text: Texte de pied de page du document (si applicable). - bank_account_label: Libellé du compte bancaire associé au document (si applicable). - label_id: Identifiant de l’étiquette de document associée au document (si applicable). - links: Liste de liens associés au document (si applicable).

id: int | None
identity: str | None
finalized: bool
type: str | None
document_type_id: int
document_type: DocumentType | None
title: str | None
subtitle: str | None
price_before_tax: float
tax_amount: float
price_after_tax: float
due_label: str | None
last_modification_date: str | None
date: str | None
validated: bool
validation_date: str | None
validation_firstname: str | None
validation_lastname: str | None
validation_email: str | None
validation_ip: str | None
lines: list[DocumentLine] | None
customer_id: int
customer: Customer | None
customer_address: Address | None
user_can_validate: bool
footer_text: str | None
bank_account_label: str | None
label_id: int | None
links: list[Link] | None
model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class henrri_connect.documents.ListResponse(**data)[source]

Bases : CamelModel, Generic[T]

Réponse liste générique.

Attributs - elements: Liste d’éléments. - meta: Métadonnées de la réponse liste (si applicable).

elements: list[T] | None
meta: MetaListResponse | None
model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class henrri_connect.documents.PagedListResponse(**data)[source]

Bases : CamelModel, Generic[T]

Réponse paginée générique.

Attributs - elements: Liste d’éléments de la page. - totals: Liste de cellules de total pour la page (si applicable). - display: Liste d’informations d’affichage pour les éléments de la page (si applicable). - meta: Métadonnées de la réponse paginée (si applicable).

elements: list[T] | None
totals: list[Cell] | None
display: list[ElementDisplay] | None
meta: MetaPagedListResponse | None
model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class henrri_connect.documents.PaymentMilestone(**data)[source]

Bases : CamelModel

Représente une étape de paiement dans l’API Henrri Connect.

Attributs: - id: Identifiant unique de l’étape de paiement. - amount: Montant de l’étape de paiement. - percentage: Pourcentage de l’étape de paiement. - due_date: Date d’échéance de l’étape de paiement. - is_paid: Indique si l’étape de paiement est payée. - document_id: Identifiant du document associé à l’étape de paiement. - payment_id: Identifiant du paiement associé à l’étape de paiement (si applicable). - links: Liste de liens associés à l’étape de paiement (si applicable).

id: int | None
amount: float | None
percentage: float | None
due_date: str
is_paid: bool
document_id: int
payment_id: int | None
links: list[Link] | None
model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class henrri_connect.documents.PdfUrlResponse(**data)[source]

Bases : CamelModel

Représente la réponse de l’API Henrri Connect pour une URL de PDF.

Attributs: - download_url: URL de téléchargement du PDF. - expires_at: Date d’expiration de l’URL de téléchargement du PDF. - file_name: Nom du fichier PDF (si applicable).

download_url: str | None
expires_at: str | None
file_name: str | None
model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class henrri_connect.documents.TaxDetailArray(**data)[source]

Bases : CamelModel

Représente un tableau de détails de taxe dans l’API Henrri Connect.

Attributs: - tax_detail_array: Liste des détails de taxe. - document_id: Identifiant du document associé aux détails de taxe. - links: Liste de liens associés au tableau de détails de taxe (si applicable).

tax_detail_array: list[TaxDetail] | None
document_id: str | None
links: list[Link] | None
model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class henrri_connect.documents.ValidateDocumentRequest(**data)[source]

Bases : CamelModel

Représente une requête de validation de document dans l’API Henrri Connect.

Attributs: - email: Adresse e-mail de la personne validant le document. - first_name: Prénom de la personne validant le document. - last_name: Nom de la personne validant le document. - validation_date: Date de validation du document. - time_offset: Décalage horaire par rapport à UTC. - ip: Adresse IP de la personne validant le document.

email: str
first_name: str
last_name: str
validation_date: str
time_offset: int
ip: str
model_config: ClassVar[ConfigDict] = {'alias_generator': <function to_camel>, 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class henrri_connect.documents.SyncDocumentsClient(client)[source]

Bases : object

Accès synchrone aux endpoints documents.

Arguments - client : Objet henrri_connect.AsyncHenrriClient.

Methods - list_documents : Liste tous les documents. - add : Ajoute un document. - get : Accès au document par son ID. - get_with_all : Accès au document par son ID avec toutes ses relations incluses. - get_all_included : Accès au document par son ID avec toutes ses données incluses. - modify : Modifie un document par son ID. - delete : Supprime un document par son ID. - get_tax_details : Accès aux taxes d’un document par son ID. - validate : Valide un document. - get_pdf_url : Accès au document par son ID et son GUID. - get_pdf_bytes : Accès au document par son ID et son GUID. - get_pdf_file : Accès au document par son ID et son GUID. - get_display : Accès aux données d’affichage d’un document par son ID. - get_payment_milestones : Accès aux milestones de paiement d’un document par son ID. - finalize : Finalise un document. - transform_to_invoice : Transforme un document (devis, bon de livraison…) en facture. - get_next_code_batch : Accès au code de batch suivant. - list_with_selected_fields : Liste les documents avec sélection de champs.

list_documents(*, request)[source]

Liste les documents avec pagination et filtres optionnels.

Arguments - request (DocumentQuery) : Paramètres de recherche.

Returns - PagedListResponse[Document] : Liste paginée de documents.

Type renvoyé:

PagedListResponse[Document]

add(document)[source]

Crée un nouveau document. Les champs unset ou None du document sont exclus de la requête.

Args - document (Document) : Document à créer.

Returns - Document: Le document créé avec les données retournées par l’API.

Raises - HTTPError: Si la requête échoue (code de statut 4xx ou 5xx).

Type renvoyé:

Document

get(doc_id)[source]

Récupère un document par son identifiant.

Arguments - doc_id (int) : Identifiant du document à reafficher.

Returns - Document: Le document retourné par l’API.

Raises - HTTPError: Si la requête échoue (code de statut 4xx ou 5xx).

Type renvoyé:

Document

get_with_all(doc_id)[source]

Récupère un document avec toutes ses relations incluses.

Arguments - doc_id (int) : Identifiant du document à reafficher.

Returns - Document: Le document retourné par l’API.

Type renvoyé:

Document

get_all_included(doc_id)[source]

Récupère un document avec toutes ses données incluses.

Arguments - doc_id (int) : Identifiant du document à reafficher.

Returns - Document: Le document retourné par l’API.

Type renvoyé:

Document

modify(doc_id, document)[source]

Met à jour un document existant.

Arguments - doc_id (int) : Identifiant du document à mettre à jour. - document (Document) : Document à mettre à jour.

Returns - Document: Le document mis à jour par l’API.

Type renvoyé:

Document

delete(doc_id)[source]

Supprime un document.

Arguments - doc_id (int) : Identifiant du document à supprimer.

Type renvoyé:

None

get_tax_details(doc_id)[source]

Récupère le détail des taxes d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - TaxDetailArray: Le détail des taxes retourné par l’API.

Type renvoyé:

TaxDetailArray

validate(doc_id, request)[source]

Valide électroniquement un document.

Arguments - doc_id (int) : Identifiant du document à valider. - request (ValidateDocumentRequest) : La requête de validation du document.

Returns - Document: Le document validé par l’API.

Type renvoyé:

Document

get_pdf_url(doc_id)[source]

Génère une URL de téléchargement pour le PDF d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - PdfUrlResponse: L’URL de téléchargement du PDF retourné par l’API.

Type renvoyé:

PdfUrlResponse

get_pdf_bytes(doc_id)[source]

Télécharge le PDF d’un document (retourne les octets bruts).

Arguments - doc_id (int) : Identifiant du document.

Returns - bytes: Les octets bruts du PDF retourné par l’API.

Type renvoyé:

bytes

get_pdf_file(doc_id, guid)[source]

Télécharge un fichier PDF identifié par son GUID.

Arguments - doc_id (int) : Identifiant du document. - guid (str) : GUID du fichier PDF.

Returns - bytes: Les octets bruts du fichier PDF retourné par l’API.

Type renvoyé:

bytes

get_display(doc_id)[source]

Récupère les données d’affichage d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - Document: Les données d’affichage du document retourné par l’API.

Type renvoyé:

Document

get_payment_milestones(doc_id)[source]

Récupère les jalons de paiement d’un document.

Arguments - doc_id (int) : Identifiant du document.

Returns - ListResponse[PaymentMilestone]: La liste des jalons de paiement du document retourné par l’API.

Type renvoyé:

ListResponse[PaymentMilestone]

finalize(doc_id)[source]

Finalise un document.

Arguments - doc_id (int) : Identifiant du document à finaliser.

Returns - Document: Le document finalisé par l’API.

Type renvoyé:

Document

transform_to_invoice(doc_id)[source]

Transforme un document (devis, bon de livraison…) en facture.

Arguments - doc_id (int) : Identifiant du document à transformer en facture.

Returns - Document: Le document transformé en facture par l’API.

Type renvoyé:

Document

get_next_quote_batch()[source]

Récupère le prochain numéro de lot pour un devis.

Returns - object: Le numéro de lot retourné par l’API.

Type renvoyé:

object

list_with_selected_fields(*, page=1, limit=50, fields=None, **kwargs)[source]

Liste les documents avec sélection de champs.

Arguments - page (int) : Numéro de page. - limit (int) : Nombre d’articles par page. - fields (str | None) : Champs à retourner.

Returns - PagedListResponse[Document]: La liste des documents retourné par l’API.

Type renvoyé:

PagedListResponse[Document]