factpulse 0.1.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (794) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -4
  3. data/Gemfile.lock +7 -7
  4. data/LICENSE +1 -1
  5. data/README.md +146 -159
  6. data/docs/AFNORPDPPAApi.md +6 -87
  7. data/docs/AFNORPDPPADirectoryServiceApi.md +238 -148
  8. data/docs/AFNORPDPPAFlowServiceApi.md +40 -52
  9. data/docs/APIError.md +2 -2
  10. data/docs/AdresseElectronique.md +20 -0
  11. data/docs/AdressePostale.md +26 -0
  12. data/docs/CadreDeFacturation.md +22 -0
  13. data/docs/CategorieTVA.md +15 -0
  14. data/docs/CertificateInfoResponse.md +20 -20
  15. data/docs/ChorusProApi.md +142 -224
  16. data/docs/ChorusProCredentials.md +5 -5
  17. data/docs/{AFNORDiffusionStatus.md → CodeCadreFacturation.md} +2 -2
  18. data/docs/{AFNORFacilityType.md → CodeRaisonReduction.md} +2 -2
  19. data/docs/{GetInvoiceRequest.md → ConsulterFactureRequest.md} +4 -4
  20. data/docs/ConsulterFactureResponse.md +34 -0
  21. data/docs/ConsulterStructureRequest.md +22 -0
  22. data/docs/ConsulterStructureResponse.md +34 -0
  23. data/docs/{AFNORCredentials.md → CredentialsAFNOR.md} +2 -2
  24. data/docs/{FactureElectroniqueRestApiSchemasProcessingChorusProCredentials.md → CredentialsChorusPro.md} +4 -4
  25. data/docs/Destinataire.md +28 -0
  26. data/docs/Destination.md +7 -7
  27. data/docs/DestinationAFNOR.md +24 -0
  28. data/docs/DestinationChorusPro.md +20 -0
  29. data/docs/DonneesFactureSimplifiees.md +34 -0
  30. data/docs/FactureEnrichieInfo.md +32 -0
  31. data/docs/FactureFacturX.md +46 -0
  32. data/docs/FormatSortie.md +15 -0
  33. data/docs/Fournisseur.md +36 -0
  34. data/docs/GenerateCertificateRequest.md +19 -19
  35. data/docs/GenerateCertificateResponse.md +8 -8
  36. data/docs/InformationSignatureAPI.md +28 -0
  37. data/docs/LigneDePoste.md +46 -0
  38. data/docs/LigneDePosteMontantRemiseHt.md +15 -0
  39. data/docs/LigneDePosteTauxTvaManuel.md +15 -0
  40. data/docs/LigneDeTVA.md +26 -0
  41. data/docs/{AmountDue.md → ModeDepot.md} +2 -2
  42. data/docs/ModePaiement.md +15 -0
  43. data/docs/{AFNORFlowType.md → MontantAPayer.md} +2 -2
  44. data/docs/MontantBaseHt.md +15 -0
  45. data/docs/{AFNORAlgorithm.md → MontantHtTotal.md} +2 -2
  46. data/docs/{AFNORContainsOperator.md → MontantRemiseGlobaleTtc.md} +2 -2
  47. data/docs/MontantTotal.md +30 -0
  48. data/docs/{AFNORFacilityNature.md → MontantTotalAcompte.md} +2 -2
  49. data/docs/MontantTotalLigneHt.md +15 -0
  50. data/docs/{AFNORFlowSyntax.md → MontantTtcTotal.md} +2 -2
  51. data/docs/{APIProfile.md → MontantTva.md} +2 -2
  52. data/docs/{AFNOREntityType.md → MontantTvaLigne.md} +2 -2
  53. data/docs/MontantTvaTotal.md +15 -0
  54. data/docs/{AFNORFlowProfile.md → MontantUnitaireHt.md} +2 -2
  55. data/docs/{InvoiceNote.md → Note.md} +3 -3
  56. data/docs/ObtenirIdChorusProRequest.md +22 -0
  57. data/docs/ObtenirIdChorusProResponse.md +24 -0
  58. data/docs/OptionsProcessing.md +24 -0
  59. data/docs/PDFFacturXInfo.md +22 -0
  60. data/docs/ParametresSignature.md +34 -0
  61. data/docs/ParametresStructure.md +22 -0
  62. data/docs/PieceJointeComplementaire.md +26 -0
  63. data/docs/{Amount.md → ProfilAPI.md} +2 -2
  64. data/docs/{Amount2.md → Quantite.md} +2 -2
  65. data/docs/RechercherServicesResponse.md +24 -0
  66. data/docs/RechercherStructureRequest.md +26 -0
  67. data/docs/RechercherStructureResponse.md +24 -0
  68. data/docs/References.md +32 -0
  69. data/docs/ReponseTache.md +18 -0
  70. data/docs/ReponseValidationErreur.md +18 -0
  71. data/docs/ReponseValidationSucces.md +18 -0
  72. data/docs/ResultatAFNOR.md +26 -0
  73. data/docs/ResultatChorusPro.md +22 -0
  74. data/docs/ResultatValidationPDFAPI.md +62 -0
  75. data/docs/SantApi.md +131 -0
  76. data/docs/ServiceStructure.md +24 -0
  77. data/docs/SignatureInfo.md +2 -2
  78. data/docs/SoumettreFactureCompleteRequest.md +26 -0
  79. data/docs/SoumettreFactureCompleteResponse.md +34 -0
  80. data/docs/SoumettreFactureRequest.md +46 -0
  81. data/docs/SoumettreFactureResponse.md +24 -0
  82. data/docs/StatutCelery.md +15 -0
  83. data/docs/{InvoiceStatus.md → StatutFacture.md} +5 -5
  84. data/docs/StatutTache.md +22 -0
  85. data/docs/StructureInfo.md +10 -10
  86. data/docs/Tauxmanuel.md +15 -0
  87. data/docs/TraitementFactureApi.md +831 -0
  88. data/docs/TypeFacture.md +15 -0
  89. data/docs/{Amount1.md → TypeTVA.md} +2 -2
  90. data/docs/{Rate.md → Unite.md} +2 -2
  91. data/docs/UtilisateurApi.md +74 -0
  92. data/docs/ValidationError.md +1 -1
  93. data/docs/ValidationErrorDetail.md +3 -3
  94. data/docs/{AFNORDirectoryLineField.md → ValidationErrorLocInner.md} +2 -2
  95. data/factpulse.gemspec +7 -7
  96. data/lib/factpulse/api/afnorpdppa_api.rb +8 -77
  97. data/lib/factpulse/api/afnorpdppa_directory_service_api.rb +143 -143
  98. data/lib/factpulse/api/afnorpdppa_flow_service_api.rb +34 -67
  99. data/lib/factpulse/api/chorus_pro_api.rb +147 -149
  100. data/lib/factpulse/api/sant_api.rb +136 -0
  101. data/lib/factpulse/api/traitement_facture_api.rb +835 -0
  102. data/lib/factpulse/api/utilisateur_api.rb +79 -0
  103. data/lib/factpulse/api_client.rb +4 -4
  104. data/lib/factpulse/api_error.rb +4 -4
  105. data/lib/factpulse/api_model_base.rb +4 -4
  106. data/lib/factpulse/configuration.rb +8 -19
  107. data/lib/factpulse/helpers/client.rb +246 -218
  108. data/lib/factpulse/helpers/exceptions.rb +14 -38
  109. data/lib/factpulse/helpers.rb +13 -0
  110. data/lib/factpulse/models/adresse_electronique.rb +196 -0
  111. data/lib/factpulse/models/adresse_postale.rb +189 -0
  112. data/lib/factpulse/models/api_error.rb +7 -7
  113. data/lib/factpulse/models/cadre_de_facturation.rb +207 -0
  114. data/lib/factpulse/models/categorie_tva.rb +47 -0
  115. data/lib/factpulse/models/certificate_info_response.rb +166 -166
  116. data/lib/factpulse/models/chorus_pro_credentials.rb +14 -14
  117. data/lib/factpulse/models/code_cadre_facturation.rb +42 -0
  118. data/lib/factpulse/models/code_raison_reduction.rb +45 -0
  119. data/lib/factpulse/models/consulter_facture_request.rb +176 -0
  120. data/lib/factpulse/models/consulter_facture_response.rb +261 -0
  121. data/lib/factpulse/models/consulter_structure_request.rb +188 -0
  122. data/lib/factpulse/models/consulter_structure_response.rb +261 -0
  123. data/lib/factpulse/models/credentials_afnor.rb +169 -0
  124. data/lib/factpulse/models/credentials_chorus_pro.rb +191 -0
  125. data/lib/factpulse/models/destinataire.rb +215 -0
  126. data/lib/factpulse/models/destination.rb +9 -9
  127. data/lib/factpulse/models/destination_afnor.rb +228 -0
  128. data/lib/factpulse/models/destination_chorus_pro.rb +194 -0
  129. data/lib/factpulse/models/donnees_facture_simplifiees.rb +342 -0
  130. data/lib/factpulse/models/error_level.rb +4 -4
  131. data/lib/factpulse/models/error_source.rb +5 -6
  132. data/lib/factpulse/models/facture_enrichie_info.rb +348 -0
  133. data/lib/factpulse/models/facture_factur_x.rb +443 -0
  134. data/lib/factpulse/models/format_sortie.rb +40 -0
  135. data/lib/factpulse/models/fournisseur.rb +271 -0
  136. data/lib/factpulse/models/generate_certificate_request.rb +108 -108
  137. data/lib/factpulse/models/generate_certificate_response.rb +49 -49
  138. data/lib/factpulse/models/http_validation_error.rb +4 -4
  139. data/lib/factpulse/models/information_signature_api.rb +216 -0
  140. data/lib/factpulse/models/ligne_de_poste.rb +390 -0
  141. data/lib/factpulse/models/ligne_de_poste_montant_remise_ht.rb +104 -0
  142. data/lib/factpulse/models/ligne_de_poste_taux_tva_manuel.rb +104 -0
  143. data/lib/factpulse/models/ligne_de_tva.rb +242 -0
  144. data/lib/factpulse/models/mode_depot.rb +41 -0
  145. data/lib/factpulse/models/mode_paiement.rb +44 -0
  146. data/lib/factpulse/models/montant_a_payer.rb +104 -0
  147. data/lib/factpulse/models/montant_base_ht.rb +104 -0
  148. data/lib/factpulse/models/montant_ht_total.rb +104 -0
  149. data/lib/factpulse/models/montant_remise_globale_ttc.rb +104 -0
  150. data/lib/factpulse/models/montant_total.rb +272 -0
  151. data/lib/factpulse/models/montant_total_acompte.rb +104 -0
  152. data/lib/factpulse/models/montant_total_ligne_ht.rb +104 -0
  153. data/lib/factpulse/models/montant_ttc_total.rb +104 -0
  154. data/lib/factpulse/models/montant_tva.rb +104 -0
  155. data/lib/factpulse/models/montant_tva_ligne.rb +104 -0
  156. data/lib/factpulse/models/montant_tva_total.rb +104 -0
  157. data/lib/factpulse/models/montant_unitaire_ht.rb +104 -0
  158. data/lib/factpulse/models/note.rb +175 -0
  159. data/lib/factpulse/models/obtenir_id_chorus_pro_request.rb +188 -0
  160. data/lib/factpulse/models/obtenir_id_chorus_pro_response.rb +230 -0
  161. data/lib/factpulse/models/options_processing.rb +207 -0
  162. data/lib/factpulse/models/parametres_signature.rb +235 -0
  163. data/lib/factpulse/models/parametres_structure.rb +175 -0
  164. data/lib/factpulse/models/pdf_factur_x_info.rb +205 -0
  165. data/lib/factpulse/models/piece_jointe_complementaire.rb +269 -0
  166. data/lib/factpulse/models/profil_api.rb +42 -0
  167. data/lib/factpulse/models/quantite.rb +104 -0
  168. data/lib/factpulse/models/rechercher_services_response.rb +214 -0
  169. data/lib/factpulse/models/rechercher_structure_request.rb +191 -0
  170. data/lib/factpulse/models/rechercher_structure_response.rb +216 -0
  171. data/lib/factpulse/models/references.rb +290 -0
  172. data/lib/factpulse/models/reponse_tache.rb +165 -0
  173. data/lib/factpulse/models/reponse_validation_erreur.rb +167 -0
  174. data/lib/factpulse/models/reponse_validation_succes.rb +165 -0
  175. data/lib/factpulse/models/resultat_afnor.rb +240 -0
  176. data/lib/factpulse/models/resultat_chorus_pro.rb +186 -0
  177. data/lib/factpulse/models/resultat_validation_pdfapi.rb +523 -0
  178. data/lib/factpulse/models/scheme_id.rb +7 -20
  179. data/lib/factpulse/models/service_structure.rb +247 -0
  180. data/lib/factpulse/models/signature_info.rb +22 -22
  181. data/lib/factpulse/models/soumettre_facture_complete_request.rb +239 -0
  182. data/lib/factpulse/models/soumettre_facture_complete_response.rb +355 -0
  183. data/lib/factpulse/models/soumettre_facture_request.rb +388 -0
  184. data/lib/factpulse/models/soumettre_facture_response.rb +213 -0
  185. data/lib/factpulse/models/statut_celery.rb +43 -0
  186. data/lib/factpulse/models/statut_facture.rb +203 -0
  187. data/lib/factpulse/models/statut_tache.rb +226 -0
  188. data/lib/factpulse/models/structure_info.rb +86 -86
  189. data/lib/factpulse/models/tauxmanuel.rb +104 -0
  190. data/lib/factpulse/models/type_facture.rb +40 -0
  191. data/lib/factpulse/models/type_tva.rb +42 -0
  192. data/lib/factpulse/models/unite.rb +44 -0
  193. data/lib/factpulse/models/validation_error.rb +5 -5
  194. data/lib/factpulse/models/validation_error_detail.rb +8 -8
  195. data/lib/factpulse/models/validation_error_loc_inner.rb +103 -0
  196. data/lib/factpulse/version.rb +5 -5
  197. data/lib/factpulse.rb +79 -315
  198. metadata +215 -676
  199. data/docs/AFNORAcknowledgement.md +0 -20
  200. data/docs/AFNORAcknowledgementDetail.md +0 -24
  201. data/docs/AFNORAddressEdit.md +0 -30
  202. data/docs/AFNORAddressPatch.md +0 -30
  203. data/docs/AFNORAddressPut.md +0 -30
  204. data/docs/AFNORAddressRead.md +0 -32
  205. data/docs/AFNORCreateDirectoryLineBody.md +0 -20
  206. data/docs/AFNORCreateDirectoryLineBodyAddressingInformation.md +0 -24
  207. data/docs/AFNORCreateDirectoryLineBodyPeriod.md +0 -20
  208. data/docs/AFNORCreateRoutingCodeBody.md +0 -32
  209. data/docs/AFNORDestination.md +0 -26
  210. data/docs/AFNORDirectoryLinePayloadHistoryLegalUnitFacilityRoutingCode.md +0 -32
  211. data/docs/AFNORDirectoryLinePayloadHistoryLegalUnitFacilityRoutingCodePlatform.md +0 -20
  212. data/docs/AFNORDirectoryLinePayloadHistoryLegalUnitFacilityRoutingCodeRoutingCode.md +0 -28
  213. data/docs/AFNORDirectoryLinePost201Response.md +0 -22
  214. data/docs/AFNORDirectoryLineSearchPost200Response.md +0 -22
  215. data/docs/AFNORError.md +0 -26
  216. data/docs/AFNORFacilityAdministrativeStatus.md +0 -15
  217. data/docs/AFNORFacilityPayloadHistory.md +0 -34
  218. data/docs/AFNORFacilityPayloadHistoryUleB2gAdditionalData.md +0 -28
  219. data/docs/AFNORFacilityPayloadIncluded.md +0 -32
  220. data/docs/AFNORFlow.md +0 -38
  221. data/docs/AFNORFlowAckStatus.md +0 -15
  222. data/docs/AFNORFlowDirection.md +0 -15
  223. data/docs/AFNORFlowInfo.md +0 -28
  224. data/docs/AFNORFullFlowInfo.md +0 -32
  225. data/docs/AFNORHealthCheckResponse.md +0 -22
  226. data/docs/AFNORLegalUnitAdministrativeStatus.md +0 -15
  227. data/docs/AFNORLegalUnitPayloadHistory.md +0 -24
  228. data/docs/AFNORLegalUnitPayloadIncluded.md +0 -24
  229. data/docs/AFNORLegalUnitPayloadIncludedNoSiren.md +0 -22
  230. data/docs/AFNORPlatformStatus.md +0 -15
  231. data/docs/AFNORProcessingRule.md +0 -15
  232. data/docs/AFNORReasonCode.md +0 -49
  233. data/docs/AFNORReasonCodeEnum.md +0 -15
  234. data/docs/AFNORRecipientPlatformType.md +0 -15
  235. data/docs/AFNORResult.md +0 -32
  236. data/docs/AFNORRoutingCodeAdministrativeStatus.md +0 -15
  237. data/docs/AFNORRoutingCodeField.md +0 -15
  238. data/docs/AFNORRoutingCodePayloadHistoryLegalUnitFacility.md +0 -34
  239. data/docs/AFNORRoutingCodePost201Response.md +0 -22
  240. data/docs/AFNORRoutingCodeSearch.md +0 -28
  241. data/docs/AFNORRoutingCodeSearchFilters.md +0 -30
  242. data/docs/AFNORRoutingCodeSearchFiltersAdministrativeStatus.md +0 -20
  243. data/docs/AFNORRoutingCodeSearchFiltersRoutingCodeName.md +0 -20
  244. data/docs/AFNORRoutingCodeSearchFiltersRoutingIdentifier.md +0 -20
  245. data/docs/AFNORRoutingCodeSearchPost200Response.md +0 -22
  246. data/docs/AFNORRoutingCodeSearchSortingInner.md +0 -20
  247. data/docs/AFNORSearchDirectoryLine.md +0 -26
  248. data/docs/AFNORSearchDirectoryLineFilters.md +0 -26
  249. data/docs/AFNORSearchDirectoryLineFiltersAddressingIdentifier.md +0 -20
  250. data/docs/AFNORSearchDirectoryLineFiltersAddressingSuffix.md +0 -20
  251. data/docs/AFNORSearchDirectoryLineSortingInner.md +0 -20
  252. data/docs/AFNORSearchFlowContent.md +0 -22
  253. data/docs/AFNORSearchFlowFilters.md +0 -30
  254. data/docs/AFNORSearchFlowParams.md +0 -20
  255. data/docs/AFNORSearchSiren.md +0 -26
  256. data/docs/AFNORSearchSirenFilters.md +0 -24
  257. data/docs/AFNORSearchSirenFiltersAdministrativeStatus.md +0 -20
  258. data/docs/AFNORSearchSirenFiltersBusinessName.md +0 -20
  259. data/docs/AFNORSearchSirenFiltersEntityType.md +0 -20
  260. data/docs/AFNORSearchSirenFiltersSiren.md +0 -20
  261. data/docs/AFNORSearchSirenSortingInner.md +0 -20
  262. data/docs/AFNORSearchSiret.md +0 -28
  263. data/docs/AFNORSearchSiretFilters.md +0 -34
  264. data/docs/AFNORSearchSiretFiltersAddressLines.md +0 -20
  265. data/docs/AFNORSearchSiretFiltersAdministrativeStatus.md +0 -20
  266. data/docs/AFNORSearchSiretFiltersCountrySubdivision.md +0 -20
  267. data/docs/AFNORSearchSiretFiltersFacilityType.md +0 -20
  268. data/docs/AFNORSearchSiretFiltersLocality.md +0 -20
  269. data/docs/AFNORSearchSiretFiltersName.md +0 -20
  270. data/docs/AFNORSearchSiretFiltersPostalCode.md +0 -20
  271. data/docs/AFNORSearchSiretFiltersSiret.md +0 -20
  272. data/docs/AFNORSearchSiretSortingInner.md +0 -20
  273. data/docs/AFNORSirenField.md +0 -15
  274. data/docs/AFNORSirenSearchPost200Response.md +0 -22
  275. data/docs/AFNORSiretField.md +0 -15
  276. data/docs/AFNORSiretSearchPost200Response.md +0 -22
  277. data/docs/AFNORSortingOrder.md +0 -15
  278. data/docs/AFNORStrictOperator.md +0 -15
  279. data/docs/AFNORUpdatePatchDirectoryLineBody.md +0 -18
  280. data/docs/AFNORUpdatePatchRoutingCodeBody.md +0 -24
  281. data/docs/AFNORUpdatePutRoutingCodeBody.md +0 -24
  282. data/docs/AFNORWebhookCallbackContent.md +0 -18
  283. data/docs/AcknowledgmentStatus.md +0 -15
  284. data/docs/ActionCodeInfo.md +0 -22
  285. data/docs/ActionCodesResponse.md +0 -22
  286. data/docs/AdditionalDocument.md +0 -26
  287. data/docs/AggregatedPaymentInput.md +0 -22
  288. data/docs/AggregatedTransactionInput.md +0 -32
  289. data/docs/AllowanceCharge.md +0 -32
  290. data/docs/AllowanceChargeReasonCode.md +0 -15
  291. data/docs/AllowanceReasonCode.md +0 -15
  292. data/docs/AllowanceTotalAmount.md +0 -15
  293. data/docs/AsyncTaskStatus.md +0 -22
  294. data/docs/AsyncTasksApi.md +0 -82
  295. data/docs/BaseAmount.md +0 -15
  296. data/docs/BoundingBoxSchema.md +0 -30
  297. data/docs/Buyercountry.md +0 -15
  298. data/docs/CeleryStatus.md +0 -15
  299. data/docs/ChargeTotalAmount.md +0 -15
  300. data/docs/ChorusProDestination.md +0 -20
  301. data/docs/ChorusProResult.md +0 -22
  302. data/docs/ClientActivateResponse.md +0 -22
  303. data/docs/ClientCreateRequest.md +0 -22
  304. data/docs/ClientDetail.md +0 -38
  305. data/docs/ClientListResponse.md +0 -24
  306. data/docs/ClientManagementApi.md +0 -921
  307. data/docs/ClientSummary.md +0 -38
  308. data/docs/ClientUpdateRequest.md +0 -22
  309. data/docs/Contact.md +0 -24
  310. data/docs/ConvertResumeRequest.md +0 -18
  311. data/docs/ConvertSuccessResponse.md +0 -36
  312. data/docs/ConvertValidationFailedResponse.md +0 -34
  313. data/docs/CountryCode.md +0 -15
  314. data/docs/CreateAggregatedReportRequest.md +0 -36
  315. data/docs/CreateCDARRequest.md +0 -52
  316. data/docs/CreateEReportingRequest.md +0 -38
  317. data/docs/Currency.md +0 -15
  318. data/docs/CurrencyCode.md +0 -15
  319. data/docs/DeliveryParty.md +0 -24
  320. data/docs/DocType.md +0 -15
  321. data/docs/DocumentTypeInfo.md +0 -22
  322. data/docs/DownloadsApi.md +0 -161
  323. data/docs/EReportingFlowType.md +0 -15
  324. data/docs/EReportingValidationError.md +0 -22
  325. data/docs/ElectronicAddress.md +0 -20
  326. data/docs/ElectronicSignatureApi.md +0 -339
  327. data/docs/Encaisseamount.md +0 -15
  328. data/docs/Encaisseamount1.md +0 -15
  329. data/docs/EncaisseeRequest.md +0 -40
  330. data/docs/EnrichedInvoiceInfo.md +0 -32
  331. data/docs/ExtractionInfo.md +0 -24
  332. data/docs/FacturXConversionApi.md +0 -319
  333. data/docs/FacturXGenerationApi.md +0 -254
  334. data/docs/FacturXInvoice.md +0 -76
  335. data/docs/FacturXPDFInfo.md +0 -22
  336. data/docs/FacturXPDFXMLVerificationApi.md +0 -240
  337. data/docs/FacturXValidationApi.md +0 -256
  338. data/docs/FactureElectroniqueRestApiSchemasEreportingInvoiceTypeCode.md +0 -15
  339. data/docs/FactureElectroniqueRestApiSchemasValidationValidationErrorResponse.md +0 -18
  340. data/docs/FieldStatus.md +0 -15
  341. data/docs/FileInfo.md +0 -20
  342. data/docs/FilesInfo.md +0 -20
  343. data/docs/FlowDirection.md +0 -15
  344. data/docs/FlowProfile.md +0 -15
  345. data/docs/FlowSummary.md +0 -32
  346. data/docs/FlowSyntax.md +0 -15
  347. data/docs/FlowType.md +0 -15
  348. data/docs/Flux10EReportingApi.md +0 -814
  349. data/docs/Flux6InvoiceLifecycleCDARApi.md +0 -698
  350. data/docs/GenerateAggregatedReportResponse.md +0 -30
  351. data/docs/GenerateCDARResponse.md +0 -26
  352. data/docs/GenerateEReportingResponse.md +0 -26
  353. data/docs/GetChorusProIdRequest.md +0 -22
  354. data/docs/GetChorusProIdResponse.md +0 -24
  355. data/docs/GetInvoiceResponse.md +0 -34
  356. data/docs/GetStructureRequest.md +0 -22
  357. data/docs/GetStructureResponse.md +0 -34
  358. data/docs/GlobalAllowanceAmount.md +0 -15
  359. data/docs/GrossUnitPrice.md +0 -15
  360. data/docs/HealthApi.md +0 -203
  361. data/docs/IncomingInvoice.md +0 -54
  362. data/docs/IncomingSupplier.md +0 -32
  363. data/docs/InvoiceFormat.md +0 -15
  364. data/docs/InvoiceInput.md +0 -50
  365. data/docs/InvoiceLine.md +0 -84
  366. data/docs/InvoiceLineAllowanceAmount.md +0 -15
  367. data/docs/InvoicePaymentInput.md +0 -26
  368. data/docs/InvoiceReferences.md +0 -52
  369. data/docs/InvoiceTotals.md +0 -38
  370. data/docs/InvoiceTotalsPrepayment.md +0 -15
  371. data/docs/InvoiceTypeCode.md +0 -15
  372. data/docs/InvoiceTypeCodeOutput.md +0 -15
  373. data/docs/InvoicingFramework.md +0 -24
  374. data/docs/InvoicingFrameworkCode.md +0 -15
  375. data/docs/IssuerRoleCode.md +0 -15
  376. data/docs/KeyRotationRequest.md +0 -20
  377. data/docs/KeyRotationResponse.md +0 -24
  378. data/docs/LineNetAmount.md +0 -15
  379. data/docs/LineSubType.md +0 -15
  380. data/docs/LineTotalAmount.md +0 -15
  381. data/docs/LocationInner.md +0 -15
  382. data/docs/MandatoryNoteSchema.md +0 -30
  383. data/docs/ManualRate.md +0 -15
  384. data/docs/ManualVatRate.md +0 -15
  385. data/docs/MissingField.md +0 -28
  386. data/docs/OperationNature.md +0 -15
  387. data/docs/OutputFormat.md +0 -15
  388. data/docs/PDFValidationResultAPI.md +0 -62
  389. data/docs/PDPConfigResponse.md +0 -46
  390. data/docs/PDPConfigUpdateRequest.md +0 -30
  391. data/docs/PDPCredentials.md +0 -26
  392. data/docs/PageDimensionsSchema.md +0 -20
  393. data/docs/Payee.md +0 -32
  394. data/docs/PaymentAmountByRate.md +0 -20
  395. data/docs/PaymentCard.md +0 -20
  396. data/docs/PaymentMeans.md +0 -15
  397. data/docs/Percentage.md +0 -15
  398. data/docs/PostalAddress.md +0 -30
  399. data/docs/PriceAllowanceAmount.md +0 -15
  400. data/docs/PriceBasisQuantity.md +0 -15
  401. data/docs/ProcessingOptions.md +0 -24
  402. data/docs/ProcessingRule.md +0 -15
  403. data/docs/ProductCharacteristic.md +0 -20
  404. data/docs/ProductClassification.md +0 -22
  405. data/docs/Quantity.md +0 -15
  406. data/docs/Rate1.md +0 -15
  407. data/docs/ReasonCodeInfo.md +0 -22
  408. data/docs/ReasonCodesResponse.md +0 -22
  409. data/docs/Recipient.md +0 -34
  410. data/docs/RecipientInput.md +0 -26
  411. data/docs/RefuseeRequest.md +0 -40
  412. data/docs/ReportIssuer.md +0 -24
  413. data/docs/ReportPeriod.md +0 -20
  414. data/docs/ReportSender.md +0 -22
  415. data/docs/RoundingAmount.md +0 -15
  416. data/docs/SchematronValidationError.md +0 -32
  417. data/docs/SearchFlowRequest.md +0 -34
  418. data/docs/SearchFlowResponse.md +0 -24
  419. data/docs/SearchServicesResponse.md +0 -24
  420. data/docs/SearchStructureRequest.md +0 -26
  421. data/docs/SearchStructureResponse.md +0 -24
  422. data/docs/SecretStatus.md +0 -24
  423. data/docs/Sellercountry.md +0 -15
  424. data/docs/SignatureInfoAPI.md +0 -28
  425. data/docs/SignatureParameters.md +0 -34
  426. data/docs/SimplifiedCDARResponse.md +0 -26
  427. data/docs/SimplifiedInvoiceData.md +0 -42
  428. data/docs/StatusCodeInfo.md +0 -22
  429. data/docs/StatusCodesResponse.md +0 -22
  430. data/docs/StructureParameters.md +0 -22
  431. data/docs/StructureService.md +0 -24
  432. data/docs/SubmissionMode.md +0 -15
  433. data/docs/SubmitAggregatedReportRequest.md +0 -28
  434. data/docs/SubmitCDARRequest.md +0 -62
  435. data/docs/SubmitCDARResponse.md +0 -24
  436. data/docs/SubmitCDARXMLRequest.md +0 -30
  437. data/docs/SubmitCompleteInvoiceRequest.md +0 -26
  438. data/docs/SubmitCompleteInvoiceResponse.md +0 -34
  439. data/docs/SubmitEReportingRequest.md +0 -28
  440. data/docs/SubmitEReportingResponse.md +0 -32
  441. data/docs/SubmitFlowRequest.md +0 -28
  442. data/docs/SubmitFlowResponse.md +0 -30
  443. data/docs/SubmitGrossAmount.md +0 -15
  444. data/docs/SubmitInvoiceRequest.md +0 -46
  445. data/docs/SubmitInvoiceResponse.md +0 -24
  446. data/docs/SubmitNetAmount.md +0 -15
  447. data/docs/SubmitVatAmount.md +0 -15
  448. data/docs/SupplementaryAttachment.md +0 -26
  449. data/docs/Supplier.md +0 -52
  450. data/docs/TaskResponse.md +0 -18
  451. data/docs/TaxBreakdownInput.md +0 -22
  452. data/docs/TaxDueDateType.md +0 -15
  453. data/docs/TaxRepresentative.md +0 -22
  454. data/docs/TaxableAmount.md +0 -15
  455. data/docs/Taxableamount.md +0 -15
  456. data/docs/Taxamount.md +0 -15
  457. data/docs/Taxamount1.md +0 -15
  458. data/docs/Taxamount2.md +0 -15
  459. data/docs/Taxexclusiveamount.md +0 -15
  460. data/docs/Taxexclusiveamount1.md +0 -15
  461. data/docs/TotalGrossAmount.md +0 -15
  462. data/docs/TotalNetAmount.md +0 -15
  463. data/docs/TotalVATAmount.md +0 -15
  464. data/docs/TransactionCategory.md +0 -15
  465. data/docs/TransmissionTypeCode.md +0 -15
  466. data/docs/UnitNetPrice.md +0 -15
  467. data/docs/UnitOfMeasure.md +0 -15
  468. data/docs/VATAccountingCode.md +0 -15
  469. data/docs/VATAmount.md +0 -15
  470. data/docs/VATCategory.md +0 -15
  471. data/docs/VATLine.md +0 -32
  472. data/docs/VATPointDateCode.md +0 -15
  473. data/docs/ValidateCDARRequest.md +0 -32
  474. data/docs/ValidateCDARResponse.md +0 -22
  475. data/docs/ValidateEReportingRequest.md +0 -18
  476. data/docs/ValidateEReportingResponse.md +0 -28
  477. data/docs/ValidationErrorResponse.md +0 -24
  478. data/docs/ValidationInfo.md +0 -28
  479. data/docs/ValidationSuccessResponse.md +0 -18
  480. data/docs/VatRate.md +0 -15
  481. data/docs/VerificationSuccessResponse.md +0 -36
  482. data/docs/VerifiedFieldSchema.md +0 -34
  483. data/docs/WebhookSecretDeleteResponse.md +0 -20
  484. data/docs/WebhookSecretGenerateResponse.md +0 -24
  485. data/docs/WebhookSecretStatusResponse.md +0 -20
  486. data/lib/factpulse/api/async_tasks_api.rb +0 -85
  487. data/lib/factpulse/api/client_management_api.rb +0 -831
  488. data/lib/factpulse/api/downloads_api.rb +0 -151
  489. data/lib/factpulse/api/electronic_signature_api.rb +0 -339
  490. data/lib/factpulse/api/factur_x_conversion_api.rb +0 -306
  491. data/lib/factpulse/api/factur_x_generation_api.rb +0 -254
  492. data/lib/factpulse/api/factur_x_validation_api.rb +0 -256
  493. data/lib/factpulse/api/factur_xpdfxml_verification_api.rb +0 -232
  494. data/lib/factpulse/api/flux10_e_reporting_api.rb +0 -777
  495. data/lib/factpulse/api/flux6_invoice_lifecycle_cdar_api.rb +0 -670
  496. data/lib/factpulse/api/health_api.rb +0 -193
  497. data/lib/factpulse/helpers/helpers.rb +0 -14
  498. data/lib/factpulse/models/acknowledgment_status.rb +0 -41
  499. data/lib/factpulse/models/action_code_info.rb +0 -220
  500. data/lib/factpulse/models/action_codes_response.rb +0 -207
  501. data/lib/factpulse/models/additional_document.rb +0 -206
  502. data/lib/factpulse/models/afnor_acknowledgement.rb +0 -216
  503. data/lib/factpulse/models/afnor_acknowledgement_detail.rb +0 -267
  504. data/lib/factpulse/models/afnor_address_edit.rb +0 -353
  505. data/lib/factpulse/models/afnor_address_patch.rb +0 -386
  506. data/lib/factpulse/models/afnor_address_put.rb +0 -435
  507. data/lib/factpulse/models/afnor_address_read.rb +0 -382
  508. data/lib/factpulse/models/afnor_algorithm.rb +0 -43
  509. data/lib/factpulse/models/afnor_contains_operator.rb +0 -39
  510. data/lib/factpulse/models/afnor_create_directory_line_body.rb +0 -156
  511. data/lib/factpulse/models/afnor_create_directory_line_body_addressing_information.rb +0 -294
  512. data/lib/factpulse/models/afnor_create_directory_line_body_period.rb +0 -175
  513. data/lib/factpulse/models/afnor_create_routing_code_body.rb +0 -412
  514. data/lib/factpulse/models/afnor_credentials.rb +0 -169
  515. data/lib/factpulse/models/afnor_destination.rb +0 -224
  516. data/lib/factpulse/models/afnor_diffusion_status.rb +0 -40
  517. data/lib/factpulse/models/afnor_directory_line_field.rb +0 -44
  518. data/lib/factpulse/models/afnor_directory_line_payload_history_legal_unit_facility_routing_code.rb +0 -312
  519. data/lib/factpulse/models/afnor_directory_line_payload_history_legal_unit_facility_routing_code_platform.rb +0 -178
  520. data/lib/factpulse/models/afnor_directory_line_payload_history_legal_unit_facility_routing_code_routing_code.rb +0 -308
  521. data/lib/factpulse/models/afnor_directory_line_post201_response.rb +0 -187
  522. data/lib/factpulse/models/afnor_directory_line_search_post200_response.rb +0 -168
  523. data/lib/factpulse/models/afnor_entity_type.rb +0 -40
  524. data/lib/factpulse/models/afnor_error.rb +0 -214
  525. data/lib/factpulse/models/afnor_facility_administrative_status.rb +0 -40
  526. data/lib/factpulse/models/afnor_facility_nature.rb +0 -40
  527. data/lib/factpulse/models/afnor_facility_payload_history.rb +0 -323
  528. data/lib/factpulse/models/afnor_facility_payload_history_ule_b2g_additional_data.rb +0 -198
  529. data/lib/factpulse/models/afnor_facility_payload_included.rb +0 -314
  530. data/lib/factpulse/models/afnor_facility_type.rb +0 -40
  531. data/lib/factpulse/models/afnor_flow.rb +0 -315
  532. data/lib/factpulse/models/afnor_flow_ack_status.rb +0 -41
  533. data/lib/factpulse/models/afnor_flow_direction.rb +0 -40
  534. data/lib/factpulse/models/afnor_flow_info.rb +0 -293
  535. data/lib/factpulse/models/afnor_flow_profile.rb +0 -41
  536. data/lib/factpulse/models/afnor_flow_syntax.rb +0 -43
  537. data/lib/factpulse/models/afnor_flow_type.rb +0 -51
  538. data/lib/factpulse/models/afnor_full_flow_info.rb +0 -339
  539. data/lib/factpulse/models/afnor_health_check_response.rb +0 -220
  540. data/lib/factpulse/models/afnor_legal_unit_administrative_status.rb +0 -40
  541. data/lib/factpulse/models/afnor_legal_unit_payload_history.rb +0 -247
  542. data/lib/factpulse/models/afnor_legal_unit_payload_included.rb +0 -247
  543. data/lib/factpulse/models/afnor_legal_unit_payload_included_no_siren.rb +0 -207
  544. data/lib/factpulse/models/afnor_platform_status.rb +0 -40
  545. data/lib/factpulse/models/afnor_processing_rule.rb +0 -44
  546. data/lib/factpulse/models/afnor_reason_code.rb +0 -105
  547. data/lib/factpulse/models/afnor_reason_code_enum.rb +0 -53
  548. data/lib/factpulse/models/afnor_recipient_platform_type.rb +0 -40
  549. data/lib/factpulse/models/afnor_result.rb +0 -270
  550. data/lib/factpulse/models/afnor_routing_code_administrative_status.rb +0 -40
  551. data/lib/factpulse/models/afnor_routing_code_field.rb +0 -46
  552. data/lib/factpulse/models/afnor_routing_code_payload_history_legal_unit_facility.rb +0 -366
  553. data/lib/factpulse/models/afnor_routing_code_post201_response.rb +0 -228
  554. data/lib/factpulse/models/afnor_routing_code_search.rb +0 -224
  555. data/lib/factpulse/models/afnor_routing_code_search_filters.rb +0 -201
  556. data/lib/factpulse/models/afnor_routing_code_search_filters_administrative_status.rb +0 -178
  557. data/lib/factpulse/models/afnor_routing_code_search_filters_routing_code_name.rb +0 -209
  558. data/lib/factpulse/models/afnor_routing_code_search_filters_routing_identifier.rb +0 -209
  559. data/lib/factpulse/models/afnor_routing_code_search_post200_response.rb +0 -168
  560. data/lib/factpulse/models/afnor_routing_code_search_sorting_inner.rb +0 -179
  561. data/lib/factpulse/models/afnor_search_directory_line.rb +0 -191
  562. data/lib/factpulse/models/afnor_search_directory_line_filters.rb +0 -183
  563. data/lib/factpulse/models/afnor_search_directory_line_filters_addressing_identifier.rb +0 -198
  564. data/lib/factpulse/models/afnor_search_directory_line_filters_addressing_suffix.rb +0 -198
  565. data/lib/factpulse/models/afnor_search_directory_line_sorting_inner.rb +0 -179
  566. data/lib/factpulse/models/afnor_search_flow_content.rb +0 -168
  567. data/lib/factpulse/models/afnor_search_flow_filters.rb +0 -250
  568. data/lib/factpulse/models/afnor_search_flow_params.rb +0 -195
  569. data/lib/factpulse/models/afnor_search_siren.rb +0 -191
  570. data/lib/factpulse/models/afnor_search_siren_filters.rb +0 -174
  571. data/lib/factpulse/models/afnor_search_siren_filters_administrative_status.rb +0 -178
  572. data/lib/factpulse/models/afnor_search_siren_filters_business_name.rb +0 -198
  573. data/lib/factpulse/models/afnor_search_siren_filters_entity_type.rb +0 -178
  574. data/lib/factpulse/models/afnor_search_siren_filters_siren.rb +0 -209
  575. data/lib/factpulse/models/afnor_search_siren_sorting_inner.rb +0 -179
  576. data/lib/factpulse/models/afnor_search_siret.rb +0 -224
  577. data/lib/factpulse/models/afnor_search_siret_filters.rb +0 -219
  578. data/lib/factpulse/models/afnor_search_siret_filters_address_lines.rb +0 -198
  579. data/lib/factpulse/models/afnor_search_siret_filters_administrative_status.rb +0 -178
  580. data/lib/factpulse/models/afnor_search_siret_filters_country_subdivision.rb +0 -198
  581. data/lib/factpulse/models/afnor_search_siret_filters_facility_type.rb +0 -178
  582. data/lib/factpulse/models/afnor_search_siret_filters_locality.rb +0 -198
  583. data/lib/factpulse/models/afnor_search_siret_filters_name.rb +0 -198
  584. data/lib/factpulse/models/afnor_search_siret_filters_postal_code.rb +0 -209
  585. data/lib/factpulse/models/afnor_search_siret_filters_siret.rb +0 -209
  586. data/lib/factpulse/models/afnor_search_siret_sorting_inner.rb +0 -179
  587. data/lib/factpulse/models/afnor_siren_field.rb +0 -43
  588. data/lib/factpulse/models/afnor_siren_search_post200_response.rb +0 -168
  589. data/lib/factpulse/models/afnor_siret_field.rb +0 -52
  590. data/lib/factpulse/models/afnor_siret_search_post200_response.rb +0 -168
  591. data/lib/factpulse/models/afnor_sorting_order.rb +0 -40
  592. data/lib/factpulse/models/afnor_strict_operator.rb +0 -39
  593. data/lib/factpulse/models/afnor_update_patch_directory_line_body.rb +0 -148
  594. data/lib/factpulse/models/afnor_update_patch_routing_code_body.rb +0 -258
  595. data/lib/factpulse/models/afnor_update_put_routing_code_body.rb +0 -289
  596. data/lib/factpulse/models/afnor_webhook_callback_content.rb +0 -148
  597. data/lib/factpulse/models/aggregated_payment_input.rb +0 -213
  598. data/lib/factpulse/models/aggregated_transaction_input.rb +0 -349
  599. data/lib/factpulse/models/allowance_charge.rb +0 -274
  600. data/lib/factpulse/models/allowance_charge_reason_code.rb +0 -76
  601. data/lib/factpulse/models/allowance_reason_code.rb +0 -45
  602. data/lib/factpulse/models/allowance_total_amount.rb +0 -104
  603. data/lib/factpulse/models/amount.rb +0 -104
  604. data/lib/factpulse/models/amount1.rb +0 -104
  605. data/lib/factpulse/models/amount2.rb +0 -104
  606. data/lib/factpulse/models/amount_due.rb +0 -104
  607. data/lib/factpulse/models/api_profile.rb +0 -43
  608. data/lib/factpulse/models/async_task_status.rb +0 -227
  609. data/lib/factpulse/models/base_amount.rb +0 -104
  610. data/lib/factpulse/models/bounding_box_schema.rb +0 -332
  611. data/lib/factpulse/models/buyercountry.rb +0 -104
  612. data/lib/factpulse/models/celery_status.rb +0 -43
  613. data/lib/factpulse/models/charge_total_amount.rb +0 -104
  614. data/lib/factpulse/models/chorus_pro_destination.rb +0 -194
  615. data/lib/factpulse/models/chorus_pro_result.rb +0 -186
  616. data/lib/factpulse/models/client_activate_response.rb +0 -220
  617. data/lib/factpulse/models/client_create_request.rb +0 -236
  618. data/lib/factpulse/models/client_detail.rb +0 -368
  619. data/lib/factpulse/models/client_list_response.rb +0 -249
  620. data/lib/factpulse/models/client_summary.rb +0 -368
  621. data/lib/factpulse/models/client_update_request.rb +0 -225
  622. data/lib/factpulse/models/contact.rb +0 -179
  623. data/lib/factpulse/models/convert_resume_request.rb +0 -151
  624. data/lib/factpulse/models/convert_success_response.rb +0 -360
  625. data/lib/factpulse/models/convert_validation_failed_response.rb +0 -339
  626. data/lib/factpulse/models/country_code.rb +0 -208
  627. data/lib/factpulse/models/create_aggregated_report_request.rb +0 -320
  628. data/lib/factpulse/models/create_cdar_request.rb +0 -414
  629. data/lib/factpulse/models/create_e_reporting_request.rb +0 -347
  630. data/lib/factpulse/models/currency.rb +0 -104
  631. data/lib/factpulse/models/currency_code.rb +0 -91
  632. data/lib/factpulse/models/delivery_party.rb +0 -179
  633. data/lib/factpulse/models/doc_type.rb +0 -42
  634. data/lib/factpulse/models/document_type_info.rb +0 -220
  635. data/lib/factpulse/models/e_reporting_flow_type.rb +0 -42
  636. data/lib/factpulse/models/e_reporting_validation_error.rb +0 -203
  637. data/lib/factpulse/models/electronic_address.rb +0 -198
  638. data/lib/factpulse/models/encaisseamount.rb +0 -104
  639. data/lib/factpulse/models/encaisseamount1.rb +0 -103
  640. data/lib/factpulse/models/encaissee_request.rb +0 -347
  641. data/lib/factpulse/models/enriched_invoice_info.rb +0 -354
  642. data/lib/factpulse/models/extraction_info.rb +0 -217
  643. data/lib/factpulse/models/factur_x_invoice.rb +0 -580
  644. data/lib/factpulse/models/factur_xpdf_info.rb +0 -205
  645. data/lib/factpulse/models/facture_electronique_rest_api_schemas_ereporting_invoice_type_code.rb +0 -43
  646. data/lib/factpulse/models/facture_electronique_rest_api_schemas_processing_chorus_pro_credentials.rb +0 -191
  647. data/lib/factpulse/models/facture_electronique_rest_api_schemas_validation_validation_error_response.rb +0 -168
  648. data/lib/factpulse/models/field_status.rb +0 -43
  649. data/lib/factpulse/models/file_info.rb +0 -161
  650. data/lib/factpulse/models/files_info.rb +0 -159
  651. data/lib/factpulse/models/flow_direction.rb +0 -40
  652. data/lib/factpulse/models/flow_profile.rb +0 -41
  653. data/lib/factpulse/models/flow_summary.rb +0 -253
  654. data/lib/factpulse/models/flow_syntax.rb +0 -43
  655. data/lib/factpulse/models/flow_type.rb +0 -51
  656. data/lib/factpulse/models/generate_aggregated_report_response.rb +0 -330
  657. data/lib/factpulse/models/generate_cdar_response.rb +0 -273
  658. data/lib/factpulse/models/generate_e_reporting_response.rb +0 -274
  659. data/lib/factpulse/models/get_chorus_pro_id_request.rb +0 -188
  660. data/lib/factpulse/models/get_chorus_pro_id_response.rb +0 -230
  661. data/lib/factpulse/models/get_invoice_request.rb +0 -176
  662. data/lib/factpulse/models/get_invoice_response.rb +0 -263
  663. data/lib/factpulse/models/get_structure_request.rb +0 -188
  664. data/lib/factpulse/models/get_structure_response.rb +0 -263
  665. data/lib/factpulse/models/global_allowance_amount.rb +0 -104
  666. data/lib/factpulse/models/gross_unit_price.rb +0 -104
  667. data/lib/factpulse/models/incoming_invoice.rb +0 -489
  668. data/lib/factpulse/models/incoming_supplier.rb +0 -236
  669. data/lib/factpulse/models/invoice_format.rb +0 -41
  670. data/lib/factpulse/models/invoice_input.rb +0 -439
  671. data/lib/factpulse/models/invoice_line.rb +0 -593
  672. data/lib/factpulse/models/invoice_line_allowance_amount.rb +0 -104
  673. data/lib/factpulse/models/invoice_note.rb +0 -176
  674. data/lib/factpulse/models/invoice_payment_input.rb +0 -267
  675. data/lib/factpulse/models/invoice_references.rb +0 -393
  676. data/lib/factpulse/models/invoice_status.rb +0 -203
  677. data/lib/factpulse/models/invoice_totals.rb +0 -312
  678. data/lib/factpulse/models/invoice_totals_prepayment.rb +0 -104
  679. data/lib/factpulse/models/invoice_type_code.rb +0 -54
  680. data/lib/factpulse/models/invoice_type_code_output.rb +0 -54
  681. data/lib/factpulse/models/invoicing_framework.rb +0 -218
  682. data/lib/factpulse/models/invoicing_framework_code.rb +0 -42
  683. data/lib/factpulse/models/issuer_role_code.rb +0 -40
  684. data/lib/factpulse/models/key_rotation_request.rb +0 -211
  685. data/lib/factpulse/models/key_rotation_response.rb +0 -232
  686. data/lib/factpulse/models/line_net_amount.rb +0 -104
  687. data/lib/factpulse/models/line_sub_type.rb +0 -41
  688. data/lib/factpulse/models/line_total_amount.rb +0 -104
  689. data/lib/factpulse/models/location_inner.rb +0 -103
  690. data/lib/factpulse/models/mandatory_note_schema.rb +0 -265
  691. data/lib/factpulse/models/manual_rate.rb +0 -104
  692. data/lib/factpulse/models/manual_vat_rate.rb +0 -104
  693. data/lib/factpulse/models/missing_field.rb +0 -269
  694. data/lib/factpulse/models/operation_nature.rb +0 -52
  695. data/lib/factpulse/models/output_format.rb +0 -40
  696. data/lib/factpulse/models/page_dimensions_schema.rb +0 -193
  697. data/lib/factpulse/models/payee.rb +0 -281
  698. data/lib/factpulse/models/payment_amount_by_rate.rb +0 -191
  699. data/lib/factpulse/models/payment_card.rb +0 -159
  700. data/lib/factpulse/models/payment_means.rb +0 -44
  701. data/lib/factpulse/models/pdf_validation_result_api.rb +0 -523
  702. data/lib/factpulse/models/pdp_config_response.rb +0 -306
  703. data/lib/factpulse/models/pdp_config_update_request.rb +0 -315
  704. data/lib/factpulse/models/pdp_credentials.rb +0 -257
  705. data/lib/factpulse/models/percentage.rb +0 -104
  706. data/lib/factpulse/models/postal_address.rb +0 -209
  707. data/lib/factpulse/models/price_allowance_amount.rb +0 -104
  708. data/lib/factpulse/models/price_basis_quantity.rb +0 -104
  709. data/lib/factpulse/models/processing_options.rb +0 -207
  710. data/lib/factpulse/models/processing_rule.rb +0 -44
  711. data/lib/factpulse/models/product_characteristic.rb +0 -193
  712. data/lib/factpulse/models/product_classification.rb +0 -186
  713. data/lib/factpulse/models/quantity.rb +0 -104
  714. data/lib/factpulse/models/rate.rb +0 -104
  715. data/lib/factpulse/models/rate1.rb +0 -104
  716. data/lib/factpulse/models/reason_code_info.rb +0 -220
  717. data/lib/factpulse/models/reason_codes_response.rb +0 -207
  718. data/lib/factpulse/models/recipient.rb +0 -231
  719. data/lib/factpulse/models/recipient_input.rb +0 -191
  720. data/lib/factpulse/models/refusee_request.rb +0 -346
  721. data/lib/factpulse/models/report_issuer.rb +0 -236
  722. data/lib/factpulse/models/report_period.rb +0 -193
  723. data/lib/factpulse/models/report_sender.rb +0 -221
  724. data/lib/factpulse/models/rounding_amount.rb +0 -104
  725. data/lib/factpulse/models/schematron_validation_error.rb +0 -294
  726. data/lib/factpulse/models/search_flow_request.rb +0 -306
  727. data/lib/factpulse/models/search_flow_response.rb +0 -249
  728. data/lib/factpulse/models/search_services_response.rb +0 -217
  729. data/lib/factpulse/models/search_structure_request.rb +0 -191
  730. data/lib/factpulse/models/search_structure_response.rb +0 -216
  731. data/lib/factpulse/models/secret_status.rb +0 -213
  732. data/lib/factpulse/models/sellercountry.rb +0 -104
  733. data/lib/factpulse/models/signature_info_api.rb +0 -216
  734. data/lib/factpulse/models/signature_parameters.rb +0 -235
  735. data/lib/factpulse/models/simplified_cdar_response.rb +0 -274
  736. data/lib/factpulse/models/simplified_invoice_data.rb +0 -404
  737. data/lib/factpulse/models/status_code_info.rb +0 -220
  738. data/lib/factpulse/models/status_codes_response.rb +0 -207
  739. data/lib/factpulse/models/structure_parameters.rb +0 -175
  740. data/lib/factpulse/models/structure_service.rb +0 -247
  741. data/lib/factpulse/models/submission_mode.rb +0 -41
  742. data/lib/factpulse/models/submit_aggregated_report_request.rb +0 -216
  743. data/lib/factpulse/models/submit_cdar_request.rb +0 -466
  744. data/lib/factpulse/models/submit_cdar_response.rb +0 -213
  745. data/lib/factpulse/models/submit_cdarxml_request.rb +0 -228
  746. data/lib/factpulse/models/submit_complete_invoice_request.rb +0 -239
  747. data/lib/factpulse/models/submit_complete_invoice_response.rb +0 -355
  748. data/lib/factpulse/models/submit_e_reporting_request.rb +0 -216
  749. data/lib/factpulse/models/submit_e_reporting_response.rb +0 -306
  750. data/lib/factpulse/models/submit_flow_request.rb +0 -238
  751. data/lib/factpulse/models/submit_flow_response.rb +0 -294
  752. data/lib/factpulse/models/submit_gross_amount.rb +0 -104
  753. data/lib/factpulse/models/submit_invoice_request.rb +0 -388
  754. data/lib/factpulse/models/submit_invoice_response.rb +0 -213
  755. data/lib/factpulse/models/submit_net_amount.rb +0 -104
  756. data/lib/factpulse/models/submit_vat_amount.rb +0 -104
  757. data/lib/factpulse/models/supplementary_attachment.rb +0 -274
  758. data/lib/factpulse/models/supplier.rb +0 -337
  759. data/lib/factpulse/models/task_response.rb +0 -166
  760. data/lib/factpulse/models/tax_breakdown_input.rb +0 -217
  761. data/lib/factpulse/models/tax_due_date_type.rb +0 -44
  762. data/lib/factpulse/models/tax_representative.rb +0 -220
  763. data/lib/factpulse/models/taxable_amount.rb +0 -104
  764. data/lib/factpulse/models/taxableamount.rb +0 -104
  765. data/lib/factpulse/models/taxamount.rb +0 -104
  766. data/lib/factpulse/models/taxamount1.rb +0 -104
  767. data/lib/factpulse/models/taxamount2.rb +0 -104
  768. data/lib/factpulse/models/taxexclusiveamount.rb +0 -104
  769. data/lib/factpulse/models/taxexclusiveamount1.rb +0 -104
  770. data/lib/factpulse/models/total_gross_amount.rb +0 -104
  771. data/lib/factpulse/models/total_net_amount.rb +0 -104
  772. data/lib/factpulse/models/total_vat_amount.rb +0 -104
  773. data/lib/factpulse/models/transaction_category.rb +0 -42
  774. data/lib/factpulse/models/transmission_type_code.rb +0 -40
  775. data/lib/factpulse/models/unit_net_price.rb +0 -104
  776. data/lib/factpulse/models/unit_of_measure.rb +0 -44
  777. data/lib/factpulse/models/validate_cdar_request.rb +0 -219
  778. data/lib/factpulse/models/validate_cdar_response.rb +0 -190
  779. data/lib/factpulse/models/validate_e_reporting_request.rb +0 -166
  780. data/lib/factpulse/models/validate_e_reporting_response.rb +0 -271
  781. data/lib/factpulse/models/validation_error_response.rb +0 -215
  782. data/lib/factpulse/models/validation_info.rb +0 -255
  783. data/lib/factpulse/models/validation_success_response.rb +0 -166
  784. data/lib/factpulse/models/vat_accounting_code.rb +0 -42
  785. data/lib/factpulse/models/vat_amount.rb +0 -104
  786. data/lib/factpulse/models/vat_category.rb +0 -47
  787. data/lib/factpulse/models/vat_line.rb +0 -272
  788. data/lib/factpulse/models/vat_point_date_code.rb +0 -41
  789. data/lib/factpulse/models/vat_rate.rb +0 -104
  790. data/lib/factpulse/models/verification_success_response.rb +0 -343
  791. data/lib/factpulse/models/verified_field_schema.rb +0 -334
  792. data/lib/factpulse/models/webhook_secret_delete_response.rb +0 -193
  793. data/lib/factpulse/models/webhook_secret_generate_response.rb +0 -247
  794. data/lib/factpulse/models/webhook_secret_status_response.rb +0 -176
@@ -0,0 +1,247 @@
1
+ =begin
2
+ #API REST FactPulse
3
+
4
+ # API REST pour la facturation électronique en France : Factur-X, AFNOR PDP/PA, signatures électroniques. ## 🎯 Fonctionnalités principales ### 📄 Génération de factures Factur-X - **Formats** : XML seul ou PDF/A-3 avec XML embarqué - **Profils** : MINIMUM, BASIC, EN16931, EXTENDED - **Normes** : EN 16931 (directive UE 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT) - **🆕 Format simplifié** : Génération à partir de SIRET + auto-enrichissement (API Chorus Pro + Recherche Entreprises) ### ✅ Validation et conformité - **Validation XML** : Schematron (45 à 210+ règles selon profil) - **Validation PDF** : PDF/A-3, métadonnées XMP Factur-X, signatures électroniques - **VeraPDF** : Validation stricte PDF/A (146+ règles ISO 19005-3) - **Traitement asynchrone** : Support Celery pour validations lourdes (VeraPDF) ### 📡 Intégration AFNOR PDP/PA (XP Z12-013) - **Soumission de flux** : Envoi de factures vers Plateformes de Dématérialisation Partenaires - **Recherche de flux** : Consultation des factures soumises - **Téléchargement** : Récupération des PDF/A-3 avec XML - **Directory Service** : Recherche d'entreprises (SIREN/SIRET) - **Multi-client** : Support de plusieurs configs PDP par utilisateur (stored credentials ou zero-storage) ### ✍️ Signature électronique PDF - **Standards** : PAdES-B-B, PAdES-B-T (horodatage RFC 3161), PAdES-B-LT (archivage long terme) - **Niveaux eIDAS** : SES (auto-signé), AdES (CA commerciale), QES (PSCO) - **Validation** : Vérification intégrité cryptographique et certificats - **Génération de certificats** : Certificats X.509 auto-signés pour tests ### 🔄 Traitement asynchrone - **Celery** : Génération, validation et signature asynchrones - **Polling** : Suivi d'état via `/taches/{id_tache}/statut` - **Pas de timeout** : Idéal pour gros fichiers ou validations lourdes ## 🔒 Authentification Toutes les requêtes nécessitent un **token JWT** dans le header Authorization : ``` Authorization: Bearer YOUR_JWT_TOKEN ``` ### Comment obtenir un token JWT ? #### 🔑 Méthode 1 : API `/api/token/` (Recommandée) **URL :** `https://www.factpulse.fr/api/token/` Cette méthode est **recommandée** pour l'intégration dans vos applications et workflows CI/CD. **Prérequis :** Avoir défini un mot de passe sur votre compte **Pour les utilisateurs inscrits via email/password :** - Vous avez déjà un mot de passe, utilisez-le directement **Pour les utilisateurs inscrits via OAuth (Google/GitHub) :** - Vous devez d'abord définir un mot de passe sur : https://www.factpulse.fr/accounts/password/set/ - Une fois le mot de passe créé, vous pourrez utiliser l'API **Exemple de requête :** ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"votre_email@example.com\", \"password\": \"votre_mot_de_passe\" }' ``` **Paramètre optionnel `client_uid` :** Pour sélectionner les credentials d'un client spécifique (PA/PDP, Chorus Pro, certificats de signature), ajoutez `client_uid` : ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"votre_email@example.com\", \"password\": \"votre_mot_de_passe\", \"client_uid\": \"550e8400-e29b-41d4-a716-446655440000\" }' ``` Le `client_uid` sera inclus dans le JWT et permettra à l'API d'utiliser automatiquement : - Les credentials AFNOR/PDP configurés pour ce client - Les credentials Chorus Pro configurés pour ce client - Les certificats de signature électronique configurés pour ce client **Réponse :** ```json { \"access\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\", // Token d'accès (validité: 30 min) \"refresh\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\" // Token de rafraîchissement (validité: 7 jours) } ``` **Avantages :** - ✅ Automatisation complète (CI/CD, scripts) - ✅ Gestion programmatique des tokens - ✅ Support du refresh token pour renouveler automatiquement l'accès - ✅ Intégration facile dans n'importe quel langage/outil #### 🖥️ Méthode 2 : Génération via Dashboard (Alternative) **URL :** https://www.factpulse.fr/dashboard/ Cette méthode convient pour des tests rapides ou une utilisation occasionnelle via l'interface graphique. **Fonctionnement :** - Connectez-vous au dashboard - Utilisez les boutons \"Generate Test Token\" ou \"Generate Production Token\" - Fonctionne pour **tous** les utilisateurs (OAuth et email/password), sans nécessiter de mot de passe **Types de tokens :** - **Token Test** : Validité 24h, quota 1000 appels/jour (gratuit) - **Token Production** : Validité 7 jours, quota selon votre forfait **Avantages :** - ✅ Rapide pour tester l'API - ✅ Aucun mot de passe requis - ✅ Interface visuelle simple **Inconvénients :** - ❌ Nécessite une action manuelle - ❌ Pas de refresh token - ❌ Moins adapté pour l'automatisation ### 📚 Documentation complète Pour plus d'informations sur l'authentification et l'utilisation de l'API : https://www.factpulse.fr/documentation-api/
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.18.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FactPulse
17
+ # Service d'une structure.
18
+ class ServiceStructure < ApiModelBase
19
+ # ID du service
20
+ attr_accessor :id_service
21
+
22
+ # Code du service
23
+ attr_accessor :code_service
24
+
25
+ # Libellé du service
26
+ attr_accessor :libelle_service
27
+
28
+ # Service actif
29
+ attr_accessor :est_actif
30
+
31
+ # Attribute mapping from ruby-style variable name to JSON key.
32
+ def self.attribute_map
33
+ {
34
+ :'id_service' => :'id_service',
35
+ :'code_service' => :'code_service',
36
+ :'libelle_service' => :'libelle_service',
37
+ :'est_actif' => :'est_actif'
38
+ }
39
+ end
40
+
41
+ # Returns attribute mapping this model knows about
42
+ def self.acceptable_attribute_map
43
+ attribute_map
44
+ end
45
+
46
+ # Returns all the JSON keys this model knows about
47
+ def self.acceptable_attributes
48
+ acceptable_attribute_map.values
49
+ end
50
+
51
+ # Attribute type mapping.
52
+ def self.openapi_types
53
+ {
54
+ :'id_service' => :'Integer',
55
+ :'code_service' => :'String',
56
+ :'libelle_service' => :'String',
57
+ :'est_actif' => :'Boolean'
58
+ }
59
+ end
60
+
61
+ # List of attributes with nullable: true
62
+ def self.openapi_nullable
63
+ Set.new([
64
+ ])
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ def initialize(attributes = {})
70
+ if (!attributes.is_a?(Hash))
71
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FactPulse::ServiceStructure` initialize method"
72
+ end
73
+
74
+ # check to see if the attribute exists and convert string to symbol for hash key
75
+ acceptable_attribute_map = self.class.acceptable_attribute_map
76
+ attributes = attributes.each_with_object({}) { |(k, v), h|
77
+ if (!acceptable_attribute_map.key?(k.to_sym))
78
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FactPulse::ServiceStructure`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
79
+ end
80
+ h[k.to_sym] = v
81
+ }
82
+
83
+ if attributes.key?(:'id_service')
84
+ self.id_service = attributes[:'id_service']
85
+ else
86
+ self.id_service = nil
87
+ end
88
+
89
+ if attributes.key?(:'code_service')
90
+ self.code_service = attributes[:'code_service']
91
+ else
92
+ self.code_service = nil
93
+ end
94
+
95
+ if attributes.key?(:'libelle_service')
96
+ self.libelle_service = attributes[:'libelle_service']
97
+ else
98
+ self.libelle_service = nil
99
+ end
100
+
101
+ if attributes.key?(:'est_actif')
102
+ self.est_actif = attributes[:'est_actif']
103
+ else
104
+ self.est_actif = nil
105
+ end
106
+ end
107
+
108
+ # Show invalid properties with the reasons. Usually used together with valid?
109
+ # @return Array for valid properties with the reasons
110
+ def list_invalid_properties
111
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
112
+ invalid_properties = Array.new
113
+ if @id_service.nil?
114
+ invalid_properties.push('invalid value for "id_service", id_service cannot be nil.')
115
+ end
116
+
117
+ if @code_service.nil?
118
+ invalid_properties.push('invalid value for "code_service", code_service cannot be nil.')
119
+ end
120
+
121
+ if @libelle_service.nil?
122
+ invalid_properties.push('invalid value for "libelle_service", libelle_service cannot be nil.')
123
+ end
124
+
125
+ if @est_actif.nil?
126
+ invalid_properties.push('invalid value for "est_actif", est_actif cannot be nil.')
127
+ end
128
+
129
+ invalid_properties
130
+ end
131
+
132
+ # Check to see if the all the properties in the model are valid
133
+ # @return true if the model is valid
134
+ def valid?
135
+ warn '[DEPRECATED] the `valid?` method is obsolete'
136
+ return false if @id_service.nil?
137
+ return false if @code_service.nil?
138
+ return false if @libelle_service.nil?
139
+ return false if @est_actif.nil?
140
+ true
141
+ end
142
+
143
+ # Custom attribute writer method with validation
144
+ # @param [Object] id_service Value to be assigned
145
+ def id_service=(id_service)
146
+ if id_service.nil?
147
+ fail ArgumentError, 'id_service cannot be nil'
148
+ end
149
+
150
+ @id_service = id_service
151
+ end
152
+
153
+ # Custom attribute writer method with validation
154
+ # @param [Object] code_service Value to be assigned
155
+ def code_service=(code_service)
156
+ if code_service.nil?
157
+ fail ArgumentError, 'code_service cannot be nil'
158
+ end
159
+
160
+ @code_service = code_service
161
+ end
162
+
163
+ # Custom attribute writer method with validation
164
+ # @param [Object] libelle_service Value to be assigned
165
+ def libelle_service=(libelle_service)
166
+ if libelle_service.nil?
167
+ fail ArgumentError, 'libelle_service cannot be nil'
168
+ end
169
+
170
+ @libelle_service = libelle_service
171
+ end
172
+
173
+ # Custom attribute writer method with validation
174
+ # @param [Object] est_actif Value to be assigned
175
+ def est_actif=(est_actif)
176
+ if est_actif.nil?
177
+ fail ArgumentError, 'est_actif cannot be nil'
178
+ end
179
+
180
+ @est_actif = est_actif
181
+ end
182
+
183
+ # Checks equality by comparing each attribute.
184
+ # @param [Object] Object to be compared
185
+ def ==(o)
186
+ return true if self.equal?(o)
187
+ self.class == o.class &&
188
+ id_service == o.id_service &&
189
+ code_service == o.code_service &&
190
+ libelle_service == o.libelle_service &&
191
+ est_actif == o.est_actif
192
+ end
193
+
194
+ # @see the `==` method
195
+ # @param [Object] Object to be compared
196
+ def eql?(o)
197
+ self == o
198
+ end
199
+
200
+ # Calculates hash code according to all attributes.
201
+ # @return [Integer] Hash code
202
+ def hash
203
+ [id_service, code_service, libelle_service, est_actif].hash
204
+ end
205
+
206
+ # Builds the object from hash
207
+ # @param [Hash] attributes Model attributes in the form of hash
208
+ # @return [Object] Returns the model itself
209
+ def self.build_from_hash(attributes)
210
+ return nil unless attributes.is_a?(Hash)
211
+ attributes = attributes.transform_keys(&:to_sym)
212
+ transformed_hash = {}
213
+ openapi_types.each_pair do |key, type|
214
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
215
+ transformed_hash["#{key}"] = nil
216
+ elsif type =~ /\AArray<(.*)>/i
217
+ # check to ensure the input is an array given that the attribute
218
+ # is documented as an array but the input is not
219
+ if attributes[attribute_map[key]].is_a?(Array)
220
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
221
+ end
222
+ elsif !attributes[attribute_map[key]].nil?
223
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
224
+ end
225
+ end
226
+ new(transformed_hash)
227
+ end
228
+
229
+ # Returns the object in the form of hash
230
+ # @return [Hash] Returns the object in the form of hash
231
+ def to_hash
232
+ hash = {}
233
+ self.class.attribute_map.each_pair do |attr, param|
234
+ value = self.send(attr)
235
+ if value.nil?
236
+ is_nullable = self.class.openapi_nullable.include?(attr)
237
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
238
+ end
239
+
240
+ hash[param] = _to_hash(value)
241
+ end
242
+ hash
243
+ end
244
+
245
+ end
246
+
247
+ end
@@ -1,12 +1,12 @@
1
1
  =begin
2
- #FactPulse REST API
2
+ #API REST FactPulse
3
3
 
4
- # REST API for electronic invoicing in France: Factur-X, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄 Factur-X - Generation - **Formats**: XML only or PDF/A-3 with embedded XML - **Profiles**: MINIMUM, BASIC, EN16931, EXTENDED - **Standards**: EN 16931 (EU directive 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT) - **🆕 Simplified Format**: Generation from SIRET + auto-enrichment (Chorus Pro API + Business Search) ### ✅ Factur-X - Validation - **XML Validation**: Schematron (45 to 210+ rules depending on profile) - **PDF Validation**: PDF/A-3, Factur-X XMP metadata - **VeraPDF**: Strict PDF/A validation (146+ ISO 19005-3 rules) ### ✍️ Electronic Signature - **Standards**: PAdES-B-B, PAdES-B-T (RFC 3161 timestamping), PAdES-B-LT (long-term archival) - **eIDAS Levels**: SES (self-signed), AdES (commercial CA), QES (QTSP) - **Validation**: Cryptographic integrity and certificate verification ### 📋 Flux 6 - Invoice Lifecycle (CDAR) - **CDAR Messages**: Acknowledgements, invoice statuses - **PPF Statuses**: REFUSED (210), PAID (212) ### 📊 Flux 10 - E-Reporting - **Tax Declarations**: International B2B, B2C - **Flow Types**: 10.1 (B2B transactions), 10.2 (B2B payments), 10.3 (B2C transactions), 10.4 (B2C payments) ### 📡 AFNOR PDP/PA (XP Z12-013) - **Flow Service**: Submit and search flows to PDPs - **Directory Service**: Company search (SIREN/SIRET) - **Multi-client**: Support for multiple PDP configs per user ### 🏛️ Chorus Pro - **Public Sector Invoicing**: Complete API for Chorus Pro ### ⏳ Async Tasks - **Celery**: Asynchronous generation, validation and signing - **Polling**: Status tracking via `/tasks/{task_id}/status` - **Webhooks**: Automatic notifications when tasks complete ## 🔒 Authentication All requests require a **JWT token** in the Authorization header: ``` Authorization: Bearer YOUR_JWT_TOKEN ``` ### How to obtain a JWT token? #### 🔑 Method 1: `/api/token/` API (Recommended) **URL:** `https://factpulse.fr/api/token/` This method is **recommended** for integration in your applications and CI/CD workflows. **Prerequisites:** Having set a password on your account **For users registered via email/password:** - You already have a password, use it directly **For users registered via OAuth (Google/GitHub):** - You must first set a password at: https://factpulse.fr/accounts/password/set/ - Once the password is created, you can use the API **Request example:** ```bash curl -X POST https://factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"your_email@example.com\", \"password\": \"your_password\" }' ``` **Optional `client_uid` parameter:** To select credentials for a specific client (PA/PDP, Chorus Pro, signing certificates), add `client_uid`: ```bash curl -X POST https://factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"your_email@example.com\", \"password\": \"your_password\", \"client_uid\": \"550e8400-e29b-41d4-a716-446655440000\" }' ``` The `client_uid` will be included in the JWT and allow the API to automatically use: - AFNOR/PDP credentials configured for this client - Chorus Pro credentials configured for this client - Electronic signature certificates configured for this client **Response:** ```json { \"access\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\", // Access token (validity: 30 min) \"refresh\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\" // Refresh token (validity: 7 days) } ``` **Advantages:** - ✅ Full automation (CI/CD, scripts) - ✅ Programmatic token management - ✅ Refresh token support for automatic access renewal - ✅ Easy integration in any language/tool #### 🖥️ Method 2: Dashboard Generation (Alternative) **URL:** https://factpulse.fr/api/dashboard/ This method is suitable for quick tests or occasional use via the graphical interface. **How it works:** - Log in to the dashboard - Use the \"Generate Test Token\" or \"Generate Production Token\" buttons - Works for **all** users (OAuth and email/password), without requiring a password **Token types:** - **Test Token**: 24h validity, 1000 calls/day quota (free) - **Production Token**: 7 days validity, quota based on your plan **Advantages:** - ✅ Quick for API testing - ✅ No password required - ✅ Simple visual interface **Disadvantages:** - ❌ Requires manual action - ❌ No refresh token - ❌ Less suited for automation ### 📚 Full Documentation For more information on authentication and API usage: https://factpulse.fr/documentation-api/
4
+ # API REST pour la facturation électronique en France : Factur-X, AFNOR PDP/PA, signatures électroniques. ## 🎯 Fonctionnalités principales ### 📄 Génération de factures Factur-X - **Formats** : XML seul ou PDF/A-3 avec XML embarqué - **Profils** : MINIMUM, BASIC, EN16931, EXTENDED - **Normes** : EN 16931 (directive UE 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT) - **🆕 Format simplifié** : Génération à partir de SIRET + auto-enrichissement (API Chorus Pro + Recherche Entreprises) ### ✅ Validation et conformité - **Validation XML** : Schematron (45 à 210+ règles selon profil) - **Validation PDF** : PDF/A-3, métadonnées XMP Factur-X, signatures électroniques - **VeraPDF** : Validation stricte PDF/A (146+ règles ISO 19005-3) - **Traitement asynchrone** : Support Celery pour validations lourdes (VeraPDF) ### 📡 Intégration AFNOR PDP/PA (XP Z12-013) - **Soumission de flux** : Envoi de factures vers Plateformes de Dématérialisation Partenaires - **Recherche de flux** : Consultation des factures soumises - **Téléchargement** : Récupération des PDF/A-3 avec XML - **Directory Service** : Recherche d'entreprises (SIREN/SIRET) - **Multi-client** : Support de plusieurs configs PDP par utilisateur (stored credentials ou zero-storage) ### ✍️ Signature électronique PDF - **Standards** : PAdES-B-B, PAdES-B-T (horodatage RFC 3161), PAdES-B-LT (archivage long terme) - **Niveaux eIDAS** : SES (auto-signé), AdES (CA commerciale), QES (PSCO) - **Validation** : Vérification intégrité cryptographique et certificats - **Génération de certificats** : Certificats X.509 auto-signés pour tests ### 🔄 Traitement asynchrone - **Celery** : Génération, validation et signature asynchrones - **Polling** : Suivi d'état via `/taches/{id_tache}/statut` - **Pas de timeout** : Idéal pour gros fichiers ou validations lourdes ## 🔒 Authentification Toutes les requêtes nécessitent un **token JWT** dans le header Authorization : ``` Authorization: Bearer YOUR_JWT_TOKEN ``` ### Comment obtenir un token JWT ? #### 🔑 Méthode 1 : API `/api/token/` (Recommandée) **URL :** `https://www.factpulse.fr/api/token/` Cette méthode est **recommandée** pour l'intégration dans vos applications et workflows CI/CD. **Prérequis :** Avoir défini un mot de passe sur votre compte **Pour les utilisateurs inscrits via email/password :** - Vous avez déjà un mot de passe, utilisez-le directement **Pour les utilisateurs inscrits via OAuth (Google/GitHub) :** - Vous devez d'abord définir un mot de passe sur : https://www.factpulse.fr/accounts/password/set/ - Une fois le mot de passe créé, vous pourrez utiliser l'API **Exemple de requête :** ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"votre_email@example.com\", \"password\": \"votre_mot_de_passe\" }' ``` **Paramètre optionnel `client_uid` :** Pour sélectionner les credentials d'un client spécifique (PA/PDP, Chorus Pro, certificats de signature), ajoutez `client_uid` : ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"votre_email@example.com\", \"password\": \"votre_mot_de_passe\", \"client_uid\": \"550e8400-e29b-41d4-a716-446655440000\" }' ``` Le `client_uid` sera inclus dans le JWT et permettra à l'API d'utiliser automatiquement : - Les credentials AFNOR/PDP configurés pour ce client - Les credentials Chorus Pro configurés pour ce client - Les certificats de signature électronique configurés pour ce client **Réponse :** ```json { \"access\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\", // Token d'accès (validité: 30 min) \"refresh\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\" // Token de rafraîchissement (validité: 7 jours) } ``` **Avantages :** - ✅ Automatisation complète (CI/CD, scripts) - ✅ Gestion programmatique des tokens - ✅ Support du refresh token pour renouveler automatiquement l'accès - ✅ Intégration facile dans n'importe quel langage/outil #### 🖥️ Méthode 2 : Génération via Dashboard (Alternative) **URL :** https://www.factpulse.fr/dashboard/ Cette méthode convient pour des tests rapides ou une utilisation occasionnelle via l'interface graphique. **Fonctionnement :** - Connectez-vous au dashboard - Utilisez les boutons \"Generate Test Token\" ou \"Generate Production Token\" - Fonctionne pour **tous** les utilisateurs (OAuth et email/password), sans nécessiter de mot de passe **Types de tokens :** - **Token Test** : Validité 24h, quota 1000 appels/jour (gratuit) - **Token Production** : Validité 7 jours, quota selon votre forfait **Avantages :** - ✅ Rapide pour tester l'API - ✅ Aucun mot de passe requis - ✅ Interface visuelle simple **Inconvénients :** - ❌ Nécessite une action manuelle - ❌ Pas de refresh token - ❌ Moins adapté pour l'automatisation ### 📚 Documentation complète Pour plus d'informations sur l'authentification et l'utilisation de l'API : https://www.factpulse.fr/documentation-api/
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
- Contact: contact@factpulse.fr
7
+
8
8
  Generated by: https://openapi-generator.tech
9
- Generator version: 7.20.0-SNAPSHOT
9
+ Generator version: 7.18.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -14,10 +14,10 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module FactPulse
17
- # Information about the electronic signature.
17
+ # Informations sur la signature électronique.
18
18
  class SignatureInfo < ApiModelBase
19
- # PDF was signed
20
- attr_accessor :signed
19
+ # Le PDF a été signé
20
+ attr_accessor :signe
21
21
 
22
22
  attr_accessor :cn
23
23
 
@@ -26,7 +26,7 @@ module FactPulse
26
26
  # Attribute mapping from ruby-style variable name to JSON key.
27
27
  def self.attribute_map
28
28
  {
29
- :'signed' => :'signed',
29
+ :'signe' => :'signe',
30
30
  :'cn' => :'cn',
31
31
  :'expiration' => :'expiration'
32
32
  }
@@ -45,7 +45,7 @@ module FactPulse
45
45
  # Attribute type mapping.
46
46
  def self.openapi_types
47
47
  {
48
- :'signed' => :'Boolean',
48
+ :'signe' => :'Boolean',
49
49
  :'cn' => :'String',
50
50
  :'expiration' => :'String'
51
51
  }
@@ -75,10 +75,10 @@ module FactPulse
75
75
  h[k.to_sym] = v
76
76
  }
77
77
 
78
- if attributes.key?(:'signed')
79
- self.signed = attributes[:'signed']
78
+ if attributes.key?(:'signe')
79
+ self.signe = attributes[:'signe']
80
80
  else
81
- self.signed = nil
81
+ self.signe = nil
82
82
  end
83
83
 
84
84
  if attributes.key?(:'cn')
@@ -95,8 +95,8 @@ module FactPulse
95
95
  def list_invalid_properties
96
96
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
97
97
  invalid_properties = Array.new
98
- if @signed.nil?
99
- invalid_properties.push('invalid value for "signed", signed cannot be nil.')
98
+ if @signe.nil?
99
+ invalid_properties.push('invalid value for "signe", signe cannot be nil.')
100
100
  end
101
101
 
102
102
  invalid_properties
@@ -106,18 +106,18 @@ module FactPulse
106
106
  # @return true if the model is valid
107
107
  def valid?
108
108
  warn '[DEPRECATED] the `valid?` method is obsolete'
109
- return false if @signed.nil?
109
+ return false if @signe.nil?
110
110
  true
111
111
  end
112
112
 
113
113
  # Custom attribute writer method with validation
114
- # @param [Object] signed Value to be assigned
115
- def signed=(signed)
116
- if signed.nil?
117
- fail ArgumentError, 'signed cannot be nil'
114
+ # @param [Object] signe Value to be assigned
115
+ def signe=(signe)
116
+ if signe.nil?
117
+ fail ArgumentError, 'signe cannot be nil'
118
118
  end
119
119
 
120
- @signed = signed
120
+ @signe = signe
121
121
  end
122
122
 
123
123
  # Checks equality by comparing each attribute.
@@ -125,7 +125,7 @@ module FactPulse
125
125
  def ==(o)
126
126
  return true if self.equal?(o)
127
127
  self.class == o.class &&
128
- signed == o.signed &&
128
+ signe == o.signe &&
129
129
  cn == o.cn &&
130
130
  expiration == o.expiration
131
131
  end
@@ -139,7 +139,7 @@ module FactPulse
139
139
  # Calculates hash code according to all attributes.
140
140
  # @return [Integer] Hash code
141
141
  def hash
142
- [signed, cn, expiration].hash
142
+ [signe, cn, expiration].hash
143
143
  end
144
144
 
145
145
  # Builds the object from hash
@@ -0,0 +1,239 @@
1
+ =begin
2
+ #API REST FactPulse
3
+
4
+ # API REST pour la facturation électronique en France : Factur-X, AFNOR PDP/PA, signatures électroniques. ## 🎯 Fonctionnalités principales ### 📄 Génération de factures Factur-X - **Formats** : XML seul ou PDF/A-3 avec XML embarqué - **Profils** : MINIMUM, BASIC, EN16931, EXTENDED - **Normes** : EN 16931 (directive UE 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT) - **🆕 Format simplifié** : Génération à partir de SIRET + auto-enrichissement (API Chorus Pro + Recherche Entreprises) ### ✅ Validation et conformité - **Validation XML** : Schematron (45 à 210+ règles selon profil) - **Validation PDF** : PDF/A-3, métadonnées XMP Factur-X, signatures électroniques - **VeraPDF** : Validation stricte PDF/A (146+ règles ISO 19005-3) - **Traitement asynchrone** : Support Celery pour validations lourdes (VeraPDF) ### 📡 Intégration AFNOR PDP/PA (XP Z12-013) - **Soumission de flux** : Envoi de factures vers Plateformes de Dématérialisation Partenaires - **Recherche de flux** : Consultation des factures soumises - **Téléchargement** : Récupération des PDF/A-3 avec XML - **Directory Service** : Recherche d'entreprises (SIREN/SIRET) - **Multi-client** : Support de plusieurs configs PDP par utilisateur (stored credentials ou zero-storage) ### ✍️ Signature électronique PDF - **Standards** : PAdES-B-B, PAdES-B-T (horodatage RFC 3161), PAdES-B-LT (archivage long terme) - **Niveaux eIDAS** : SES (auto-signé), AdES (CA commerciale), QES (PSCO) - **Validation** : Vérification intégrité cryptographique et certificats - **Génération de certificats** : Certificats X.509 auto-signés pour tests ### 🔄 Traitement asynchrone - **Celery** : Génération, validation et signature asynchrones - **Polling** : Suivi d'état via `/taches/{id_tache}/statut` - **Pas de timeout** : Idéal pour gros fichiers ou validations lourdes ## 🔒 Authentification Toutes les requêtes nécessitent un **token JWT** dans le header Authorization : ``` Authorization: Bearer YOUR_JWT_TOKEN ``` ### Comment obtenir un token JWT ? #### 🔑 Méthode 1 : API `/api/token/` (Recommandée) **URL :** `https://www.factpulse.fr/api/token/` Cette méthode est **recommandée** pour l'intégration dans vos applications et workflows CI/CD. **Prérequis :** Avoir défini un mot de passe sur votre compte **Pour les utilisateurs inscrits via email/password :** - Vous avez déjà un mot de passe, utilisez-le directement **Pour les utilisateurs inscrits via OAuth (Google/GitHub) :** - Vous devez d'abord définir un mot de passe sur : https://www.factpulse.fr/accounts/password/set/ - Une fois le mot de passe créé, vous pourrez utiliser l'API **Exemple de requête :** ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"votre_email@example.com\", \"password\": \"votre_mot_de_passe\" }' ``` **Paramètre optionnel `client_uid` :** Pour sélectionner les credentials d'un client spécifique (PA/PDP, Chorus Pro, certificats de signature), ajoutez `client_uid` : ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d '{ \"username\": \"votre_email@example.com\", \"password\": \"votre_mot_de_passe\", \"client_uid\": \"550e8400-e29b-41d4-a716-446655440000\" }' ``` Le `client_uid` sera inclus dans le JWT et permettra à l'API d'utiliser automatiquement : - Les credentials AFNOR/PDP configurés pour ce client - Les credentials Chorus Pro configurés pour ce client - Les certificats de signature électronique configurés pour ce client **Réponse :** ```json { \"access\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\", // Token d'accès (validité: 30 min) \"refresh\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\" // Token de rafraîchissement (validité: 7 jours) } ``` **Avantages :** - ✅ Automatisation complète (CI/CD, scripts) - ✅ Gestion programmatique des tokens - ✅ Support du refresh token pour renouveler automatiquement l'accès - ✅ Intégration facile dans n'importe quel langage/outil #### 🖥️ Méthode 2 : Génération via Dashboard (Alternative) **URL :** https://www.factpulse.fr/dashboard/ Cette méthode convient pour des tests rapides ou une utilisation occasionnelle via l'interface graphique. **Fonctionnement :** - Connectez-vous au dashboard - Utilisez les boutons \"Generate Test Token\" ou \"Generate Production Token\" - Fonctionne pour **tous** les utilisateurs (OAuth et email/password), sans nécessiter de mot de passe **Types de tokens :** - **Token Test** : Validité 24h, quota 1000 appels/jour (gratuit) - **Token Production** : Validité 7 jours, quota selon votre forfait **Avantages :** - ✅ Rapide pour tester l'API - ✅ Aucun mot de passe requis - ✅ Interface visuelle simple **Inconvénients :** - ❌ Nécessite une action manuelle - ❌ Pas de refresh token - ❌ Moins adapté pour l'automatisation ### 📚 Documentation complète Pour plus d'informations sur l'authentification et l'utilisation de l'API : https://www.factpulse.fr/documentation-api/
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.18.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module FactPulse
17
+ # Requête pour soumettre une facture complète (génération + soumission). Workflow : 1. Auto-enrichissement (optionnel) 2. Génération PDF Factur-X 3. Signature (optionnelle) 4. Soumission vers la destination
18
+ class SoumettreFactureCompleteRequest < ApiModelBase
19
+ # Données de la facture au format simplifié (voir exemples)
20
+ attr_accessor :donnees_facture
21
+
22
+ # PDF source encodé en base64 (sera transformé en Factur-X)
23
+ attr_accessor :pdf_source
24
+
25
+ attr_accessor :destination
26
+
27
+ attr_accessor :signature
28
+
29
+ # Options de traitement
30
+ attr_accessor :options
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ def self.attribute_map
34
+ {
35
+ :'donnees_facture' => :'donnees_facture',
36
+ :'pdf_source' => :'pdf_source',
37
+ :'destination' => :'destination',
38
+ :'signature' => :'signature',
39
+ :'options' => :'options'
40
+ }
41
+ end
42
+
43
+ # Returns attribute mapping this model knows about
44
+ def self.acceptable_attribute_map
45
+ attribute_map
46
+ end
47
+
48
+ # Returns all the JSON keys this model knows about
49
+ def self.acceptable_attributes
50
+ acceptable_attribute_map.values
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ def self.openapi_types
55
+ {
56
+ :'donnees_facture' => :'DonneesFactureSimplifiees',
57
+ :'pdf_source' => :'String',
58
+ :'destination' => :'Destination',
59
+ :'signature' => :'ParametresSignature',
60
+ :'options' => :'OptionsProcessing'
61
+ }
62
+ end
63
+
64
+ # List of attributes with nullable: true
65
+ def self.openapi_nullable
66
+ Set.new([
67
+ :'signature',
68
+ ])
69
+ end
70
+
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ if (!attributes.is_a?(Hash))
75
+ fail ArgumentError, "The input argument (attributes) must be a hash in `FactPulse::SoumettreFactureCompleteRequest` initialize method"
76
+ end
77
+
78
+ # check to see if the attribute exists and convert string to symbol for hash key
79
+ acceptable_attribute_map = self.class.acceptable_attribute_map
80
+ attributes = attributes.each_with_object({}) { |(k, v), h|
81
+ if (!acceptable_attribute_map.key?(k.to_sym))
82
+ fail ArgumentError, "`#{k}` is not a valid attribute in `FactPulse::SoumettreFactureCompleteRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
83
+ end
84
+ h[k.to_sym] = v
85
+ }
86
+
87
+ if attributes.key?(:'donnees_facture')
88
+ self.donnees_facture = attributes[:'donnees_facture']
89
+ else
90
+ self.donnees_facture = nil
91
+ end
92
+
93
+ if attributes.key?(:'pdf_source')
94
+ self.pdf_source = attributes[:'pdf_source']
95
+ else
96
+ self.pdf_source = nil
97
+ end
98
+
99
+ if attributes.key?(:'destination')
100
+ self.destination = attributes[:'destination']
101
+ else
102
+ self.destination = nil
103
+ end
104
+
105
+ if attributes.key?(:'signature')
106
+ self.signature = attributes[:'signature']
107
+ end
108
+
109
+ if attributes.key?(:'options')
110
+ self.options = attributes[:'options']
111
+ end
112
+ end
113
+
114
+ # Show invalid properties with the reasons. Usually used together with valid?
115
+ # @return Array for valid properties with the reasons
116
+ def list_invalid_properties
117
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
118
+ invalid_properties = Array.new
119
+ if @donnees_facture.nil?
120
+ invalid_properties.push('invalid value for "donnees_facture", donnees_facture cannot be nil.')
121
+ end
122
+
123
+ if @pdf_source.nil?
124
+ invalid_properties.push('invalid value for "pdf_source", pdf_source cannot be nil.')
125
+ end
126
+
127
+ if @destination.nil?
128
+ invalid_properties.push('invalid value for "destination", destination cannot be nil.')
129
+ end
130
+
131
+ invalid_properties
132
+ end
133
+
134
+ # Check to see if the all the properties in the model are valid
135
+ # @return true if the model is valid
136
+ def valid?
137
+ warn '[DEPRECATED] the `valid?` method is obsolete'
138
+ return false if @donnees_facture.nil?
139
+ return false if @pdf_source.nil?
140
+ return false if @destination.nil?
141
+ true
142
+ end
143
+
144
+ # Custom attribute writer method with validation
145
+ # @param [Object] donnees_facture Value to be assigned
146
+ def donnees_facture=(donnees_facture)
147
+ if donnees_facture.nil?
148
+ fail ArgumentError, 'donnees_facture cannot be nil'
149
+ end
150
+
151
+ @donnees_facture = donnees_facture
152
+ end
153
+
154
+ # Custom attribute writer method with validation
155
+ # @param [Object] pdf_source Value to be assigned
156
+ def pdf_source=(pdf_source)
157
+ if pdf_source.nil?
158
+ fail ArgumentError, 'pdf_source cannot be nil'
159
+ end
160
+
161
+ @pdf_source = pdf_source
162
+ end
163
+
164
+ # Custom attribute writer method with validation
165
+ # @param [Object] destination Value to be assigned
166
+ def destination=(destination)
167
+ if destination.nil?
168
+ fail ArgumentError, 'destination cannot be nil'
169
+ end
170
+
171
+ @destination = destination
172
+ end
173
+
174
+ # Checks equality by comparing each attribute.
175
+ # @param [Object] Object to be compared
176
+ def ==(o)
177
+ return true if self.equal?(o)
178
+ self.class == o.class &&
179
+ donnees_facture == o.donnees_facture &&
180
+ pdf_source == o.pdf_source &&
181
+ destination == o.destination &&
182
+ signature == o.signature &&
183
+ options == o.options
184
+ end
185
+
186
+ # @see the `==` method
187
+ # @param [Object] Object to be compared
188
+ def eql?(o)
189
+ self == o
190
+ end
191
+
192
+ # Calculates hash code according to all attributes.
193
+ # @return [Integer] Hash code
194
+ def hash
195
+ [donnees_facture, pdf_source, destination, signature, options].hash
196
+ end
197
+
198
+ # Builds the object from hash
199
+ # @param [Hash] attributes Model attributes in the form of hash
200
+ # @return [Object] Returns the model itself
201
+ def self.build_from_hash(attributes)
202
+ return nil unless attributes.is_a?(Hash)
203
+ attributes = attributes.transform_keys(&:to_sym)
204
+ transformed_hash = {}
205
+ openapi_types.each_pair do |key, type|
206
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
207
+ transformed_hash["#{key}"] = nil
208
+ elsif type =~ /\AArray<(.*)>/i
209
+ # check to ensure the input is an array given that the attribute
210
+ # is documented as an array but the input is not
211
+ if attributes[attribute_map[key]].is_a?(Array)
212
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
213
+ end
214
+ elsif !attributes[attribute_map[key]].nil?
215
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
216
+ end
217
+ end
218
+ new(transformed_hash)
219
+ end
220
+
221
+ # Returns the object in the form of hash
222
+ # @return [Hash] Returns the object in the form of hash
223
+ def to_hash
224
+ hash = {}
225
+ self.class.attribute_map.each_pair do |attr, param|
226
+ value = self.send(attr)
227
+ if value.nil?
228
+ is_nullable = self.class.openapi_nullable.include?(attr)
229
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
230
+ end
231
+
232
+ hash[param] = _to_hash(value)
233
+ end
234
+ hash
235
+ end
236
+
237
+ end
238
+
239
+ end