factpulse 4.0.3 → 4.3.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -5
- data/Gemfile.lock +3 -3
- data/docs/AFNORBasicAuthentication.md +20 -0
- data/docs/AFNORCallbackAuthentication.md +49 -0
- data/docs/AFNORCallbackHeader.md +20 -0
- data/docs/AFNORCallbackParameters.md +24 -0
- data/docs/AFNORCallbackSignature.md +20 -0
- data/docs/{AFNORFacilityNature.md → AFNORContainsOrStrictOperator.md} +2 -2
- data/docs/AFNORCoreFlowInfo.md +26 -0
- data/docs/{AFNORDirectoryLinePayloadHistoryLegalUnitFacilityRoutingCode.md → AFNORDirectoryLinePayloadLegalUnitFacilityRoutingCode.md} +5 -5
- data/docs/AFNORDirectoryLinePayloadStatusLegalUnitFacilityRoutingCode.md +34 -0
- data/docs/AFNORDirectoryLineSearchPost200Response.md +1 -1
- data/docs/{AFNORDiffusionStatus.md → AFNORDirectoryLineStatus.md} +2 -2
- data/docs/AFNORError.md +4 -4
- data/docs/AFNORErrorDetail.md +26 -0
- data/docs/AFNORFacilityPayloadHistory.md +3 -3
- data/docs/AFNORFacilityPayloadIncluded.md +0 -2
- data/docs/AFNORFlow.md +16 -14
- data/docs/AFNORFlowExtension.md +26 -0
- data/docs/AFNORFlowInfo.md +3 -3
- data/docs/AFNORFlowInfoExtension.md +18 -0
- data/docs/AFNORFullFlowInfo.md +8 -8
- data/docs/AFNORFullFlowInfoExtension.md +20 -0
- data/docs/AFNORLegalUnitPayloadHistory.md +3 -1
- data/docs/AFNOROAuth2Authentication.md +22 -0
- data/docs/AFNORPDPPADirectoryServiceApi.md +4 -648
- data/docs/AFNORPDPPAFlowServiceApi.md +320 -1
- data/docs/AFNORRoutingCodeSearch.md +1 -1
- data/docs/AFNORRoutingCodeSearchFiltersRoutingCodeName.md +1 -1
- data/docs/AFNORRoutingCodeSearchFiltersRoutingIdentifier.md +1 -1
- data/docs/AFNORSearchDirectoryLine.md +2 -2
- data/docs/AFNORSearchDirectoryLineFiltersAddressingIdentifier.md +1 -1
- data/docs/AFNORSearchDirectoryLineFiltersAddressingSuffix.md +1 -1
- data/docs/AFNORSearchFlowFilters.md +1 -1
- data/docs/AFNORSearchSiren.md +1 -1
- data/docs/AFNORSearchSirenFiltersBusinessName.md +1 -1
- data/docs/AFNORSearchSirenFiltersSiren.md +1 -1
- data/docs/AFNORSearchSiret.md +2 -2
- data/docs/AFNORSearchSiretFiltersCountrySubdivision.md +1 -1
- data/docs/AFNORSearchSiretFiltersFacilityType.md +1 -1
- data/docs/AFNORSearchSiretFiltersLocality.md +1 -1
- data/docs/AFNORSearchSiretFiltersName.md +1 -1
- data/docs/AFNORSearchSiretFiltersPostalCode.md +1 -1
- data/docs/AFNORSearchSiretFiltersSiret.md +1 -1
- data/docs/AFNORSirenInstructions.md +18 -0
- data/docs/AFNORSiretInstructions.md +18 -0
- data/docs/{AFNORPlatformStatus.md → AFNORStrictOrStartWithOperator.md} +2 -2
- data/docs/AFNORWebhook.md +22 -0
- data/docs/AFNORWebhookIdParam.md +18 -0
- data/docs/AFNORWebhookMetadata.md +24 -0
- data/docs/AFNORWebhookParams.md +20 -0
- data/docs/AFNORWebhookPatchPayload.md +22 -0
- data/docs/AsyncTasksApi.md +225 -0
- data/docs/ChorusProCredentials.md +8 -8
- data/docs/ChorusProDestination.md +1 -1
- data/docs/ClientManagementApi.md +20 -20
- data/docs/ConversionErrorResult.md +30 -0
- data/docs/ConversionExtractionInfo.md +20 -0
- data/docs/ConversionPendingInputResult.md +30 -0
- data/docs/ConversionSuccessTaskResult.md +36 -0
- data/docs/ConversionTaskStatus.md +22 -0
- data/docs/ConversionTaskStatusResult.md +85 -0
- data/docs/ConversionValidationFailedResult.md +34 -0
- data/docs/DownloadsApi.md +4 -4
- data/docs/FacturXConversionApi.md +75 -0
- data/docs/FacturXInvoice.md +1 -1
- data/docs/FacturXPDFXMLVerificationApi.md +75 -0
- data/docs/FacturXValidationApi.md +0 -81
- data/docs/FactureElectroniqueRestApiSchemasCdarValidationErrorResponse.md +24 -0
- data/docs/FactureElectroniqueRestApiSchemasProcessingChorusProCredentials.md +26 -0
- data/docs/Flux6InvoiceLifecycleCDARApi.md +82 -0
- data/docs/GenerationSuccessResult.md +24 -0
- data/docs/GenerationTaskStatus.md +22 -0
- data/docs/GenerationTaskStatusResult.md +79 -0
- data/docs/GetChorusProIdRequest.md +1 -1
- data/docs/GetInvoiceRequest.md +1 -1
- data/docs/GetStructureRequest.md +1 -1
- data/docs/HealthApi.md +0 -124
- data/docs/{FacturXGenerationApi.md → InvoiceGenerationApi.md} +21 -21
- data/docs/InvoiceLifecycle.md +24 -0
- data/docs/InvoicingFramework.md +1 -1
- data/docs/LifecycleEvent.md +38 -0
- data/docs/LifecycleResponse.md +22 -0
- data/docs/ParseApi.md +161 -0
- data/docs/ParseFacturXResponse.md +26 -0
- data/docs/ReferencesApi.md +74 -0
- data/docs/SearchStructureRequest.md +1 -1
- data/docs/SignatureSuccessResult.md +34 -0
- data/docs/SignatureTaskStatus.md +22 -0
- data/docs/SignatureTaskStatusResult.md +79 -0
- data/docs/SubmitCompleteInvoiceResponse.md +3 -1
- data/docs/SubmitInvoiceRequest.md +1 -1
- data/docs/Supplier.md +1 -1
- data/docs/TaskErrorResult.md +26 -0
- data/docs/VATEXCodeInfo.md +24 -0
- data/docs/VATEXCodesResponse.md +22 -0
- data/docs/ValidateCDARResponse.md +2 -2
- data/docs/ValidationApi.md +88 -0
- data/docs/ValidationErrorResponse.md +2 -8
- data/docs/ValidationSuccessTaskResult.md +20 -0
- data/docs/ValidationTaskStatus.md +22 -0
- data/docs/ValidationTaskStatusResult.md +79 -0
- data/docs/VerificationSuccessTaskResult.md +20 -0
- data/docs/VerificationTypedTaskStatus.md +22 -0
- data/docs/VerificationTypedTaskStatusResult.md +79 -0
- data/factpulse.gemspec +3 -3
- data/lib/factpulse/api/afnorpdppa_api.rb +2 -2
- data/lib/factpulse/api/afnorpdppa_directory_service_api.rb +5 -623
- data/lib/factpulse/api/afnorpdppa_flow_service_api.rb +305 -2
- data/lib/factpulse/api/async_tasks_api.rb +191 -2
- data/lib/factpulse/api/chorus_pro_api.rb +2 -2
- data/lib/factpulse/api/client_management_api.rb +22 -22
- data/lib/factpulse/api/downloads_api.rb +6 -6
- data/lib/factpulse/api/electronic_signature_api.rb +2 -2
- data/lib/factpulse/api/factur_x_conversion_api.rb +65 -2
- data/lib/factpulse/api/factur_x_validation_api.rb +2 -77
- data/lib/factpulse/api/factur_xpdfxml_verification_api.rb +65 -2
- data/lib/factpulse/api/flux10_e_reporting_api.rb +2 -2
- data/lib/factpulse/api/flux6_invoice_lifecycle_cdar_api.rb +85 -2
- data/lib/factpulse/api/health_api.rb +2 -116
- data/lib/factpulse/api/{factur_x_generation_api.rb → invoice_generation_api.rb} +23 -23
- data/lib/factpulse/api/parse_api.rb +163 -0
- data/lib/factpulse/api/references_api.rb +82 -0
- data/lib/factpulse/api/validation_api.rb +97 -0
- data/lib/factpulse/api_client.rb +2 -2
- data/lib/factpulse/api_error.rb +2 -2
- data/lib/factpulse/api_model_base.rb +2 -2
- data/lib/factpulse/configuration.rb +2 -2
- data/lib/factpulse/models/acknowledgment_status.rb +2 -2
- data/lib/factpulse/models/action_code_info.rb +2 -2
- data/lib/factpulse/models/action_codes_response.rb +2 -2
- data/lib/factpulse/models/additional_document.rb +2 -2
- data/lib/factpulse/models/afnor_acknowledgement.rb +2 -2
- data/lib/factpulse/models/afnor_acknowledgement_detail.rb +2 -2
- data/lib/factpulse/models/afnor_address_read.rb +2 -2
- data/lib/factpulse/models/afnor_algorithm.rb +6 -5
- data/lib/factpulse/models/afnor_basic_authentication.rb +190 -0
- data/lib/factpulse/models/afnor_callback_authentication.rb +105 -0
- data/lib/factpulse/models/afnor_callback_header.rb +190 -0
- data/lib/factpulse/models/afnor_callback_parameters.rb +193 -0
- data/lib/factpulse/models/afnor_callback_signature.rb +213 -0
- data/lib/factpulse/models/afnor_contains_operator.rb +2 -2
- data/lib/factpulse/models/afnor_contains_or_strict_operator.rb +40 -0
- data/lib/factpulse/models/afnor_core_flow_info.rb +270 -0
- data/lib/factpulse/models/afnor_credentials.rb +2 -2
- data/lib/factpulse/models/afnor_destination.rb +2 -2
- data/lib/factpulse/models/afnor_directory_line_field.rb +3 -4
- data/lib/factpulse/models/afnor_directory_line_payload_history_legal_unit_facility_routing_code_routing_code.rb +2 -2
- data/lib/factpulse/models/{afnor_directory_line_payload_history_legal_unit_facility_routing_code.rb → afnor_directory_line_payload_legal_unit_facility_routing_code.rb} +38 -16
- data/lib/factpulse/models/afnor_directory_line_payload_status_legal_unit_facility_routing_code.rb +343 -0
- data/lib/factpulse/models/afnor_directory_line_search_post200_response.rb +3 -3
- data/lib/factpulse/models/afnor_directory_line_status.rb +41 -0
- data/lib/factpulse/models/afnor_entity_type.rb +2 -2
- data/lib/factpulse/models/afnor_error.rb +32 -41
- data/lib/factpulse/models/afnor_error_detail.rb +237 -0
- data/lib/factpulse/models/afnor_facility_administrative_status.rb +2 -2
- data/lib/factpulse/models/afnor_facility_payload_history.rb +13 -13
- data/lib/factpulse/models/afnor_facility_payload_history_ule_b2g_additional_data.rb +2 -2
- data/lib/factpulse/models/afnor_facility_payload_included.rb +3 -12
- data/lib/factpulse/models/afnor_facility_type.rb +2 -2
- data/lib/factpulse/models/afnor_flow.rb +220 -59
- data/lib/factpulse/models/afnor_flow_ack_status.rb +2 -2
- data/lib/factpulse/models/afnor_flow_direction.rb +2 -2
- data/lib/factpulse/models/afnor_flow_extension.rb +295 -0
- data/lib/factpulse/models/afnor_flow_info.rb +22 -6
- data/lib/factpulse/models/afnor_flow_info_extension.rb +170 -0
- data/lib/factpulse/models/afnor_flow_profile.rb +2 -2
- data/lib/factpulse/models/afnor_flow_syntax.rb +2 -2
- data/lib/factpulse/models/afnor_flow_type.rb +2 -2
- data/lib/factpulse/models/afnor_full_flow_info.rb +81 -48
- data/lib/factpulse/models/afnor_full_flow_info_extension.rb +202 -0
- data/lib/factpulse/models/afnor_health_check_response.rb +2 -2
- data/lib/factpulse/models/afnor_legal_unit_administrative_status.rb +2 -2
- data/lib/factpulse/models/afnor_legal_unit_payload_history.rb +15 -6
- data/lib/factpulse/models/afnor_legal_unit_payload_included.rb +2 -2
- data/lib/factpulse/models/afnor_processing_rule.rb +6 -3
- data/lib/factpulse/models/afnor_reason_code.rb +2 -2
- data/lib/factpulse/models/afnor_reason_code_enum.rb +2 -2
- data/lib/factpulse/models/afnor_recipient_platform_type.rb +2 -2
- data/lib/factpulse/models/afnor_result.rb +2 -2
- data/lib/factpulse/models/afnor_routing_code_administrative_status.rb +2 -2
- data/lib/factpulse/models/afnor_routing_code_field.rb +3 -4
- data/lib/factpulse/models/afnor_routing_code_payload_history_legal_unit_facility.rb +2 -2
- data/lib/factpulse/models/afnor_routing_code_search.rb +2 -2
- data/lib/factpulse/models/afnor_routing_code_search_filters.rb +2 -2
- data/lib/factpulse/models/afnor_routing_code_search_filters_administrative_status.rb +2 -2
- data/lib/factpulse/models/afnor_routing_code_search_filters_routing_code_name.rb +3 -3
- data/lib/factpulse/models/afnor_routing_code_search_filters_routing_identifier.rb +3 -3
- data/lib/factpulse/models/afnor_routing_code_search_post200_response.rb +2 -2
- data/lib/factpulse/models/afnor_routing_code_search_sorting_inner.rb +2 -2
- data/lib/factpulse/models/afnor_search_directory_line.rb +2 -2
- data/lib/factpulse/models/afnor_search_directory_line_filters.rb +2 -2
- data/lib/factpulse/models/afnor_search_directory_line_filters_addressing_identifier.rb +3 -3
- data/lib/factpulse/models/afnor_search_directory_line_filters_addressing_suffix.rb +3 -3
- data/lib/factpulse/models/afnor_search_directory_line_sorting_inner.rb +2 -2
- data/lib/factpulse/models/afnor_search_flow_content.rb +2 -2
- data/lib/factpulse/models/afnor_search_flow_filters.rb +3 -2
- data/lib/factpulse/models/afnor_search_flow_params.rb +2 -2
- data/lib/factpulse/models/afnor_search_siren.rb +2 -2
- data/lib/factpulse/models/afnor_search_siren_filters.rb +2 -2
- data/lib/factpulse/models/afnor_search_siren_filters_administrative_status.rb +2 -2
- data/lib/factpulse/models/afnor_search_siren_filters_business_name.rb +3 -3
- data/lib/factpulse/models/afnor_search_siren_filters_entity_type.rb +2 -2
- data/lib/factpulse/models/afnor_search_siren_filters_siren.rb +3 -3
- data/lib/factpulse/models/afnor_search_siren_sorting_inner.rb +2 -2
- data/lib/factpulse/models/afnor_search_siret.rb +2 -2
- data/lib/factpulse/models/afnor_search_siret_filters.rb +2 -2
- data/lib/factpulse/models/afnor_search_siret_filters_address_lines.rb +2 -2
- data/lib/factpulse/models/afnor_search_siret_filters_administrative_status.rb +2 -2
- data/lib/factpulse/models/afnor_search_siret_filters_country_subdivision.rb +3 -3
- data/lib/factpulse/models/afnor_search_siret_filters_facility_type.rb +3 -3
- data/lib/factpulse/models/afnor_search_siret_filters_locality.rb +3 -3
- data/lib/factpulse/models/afnor_search_siret_filters_name.rb +3 -3
- data/lib/factpulse/models/afnor_search_siret_filters_postal_code.rb +3 -3
- data/lib/factpulse/models/afnor_search_siret_filters_siret.rb +3 -3
- data/lib/factpulse/models/afnor_search_siret_sorting_inner.rb +2 -2
- data/lib/factpulse/models/afnor_siren_field.rb +4 -4
- data/lib/factpulse/models/afnor_siren_instructions.rb +149 -0
- data/lib/factpulse/models/afnor_siren_search_post200_response.rb +2 -2
- data/lib/factpulse/models/afnor_siret_field.rb +5 -6
- data/lib/factpulse/models/afnor_siret_instructions.rb +149 -0
- data/lib/factpulse/models/afnor_siret_search_post200_response.rb +2 -2
- data/lib/factpulse/models/afnor_sorting_order.rb +2 -2
- data/lib/factpulse/models/afnor_strict_operator.rb +2 -2
- data/lib/factpulse/models/afnor_strict_or_start_with_operator.rb +40 -0
- data/lib/factpulse/models/afnor_webhook.rb +207 -0
- data/lib/factpulse/models/afnor_webhook_id_param.rb +147 -0
- data/lib/factpulse/models/afnor_webhook_metadata.rb +230 -0
- data/lib/factpulse/models/afnor_webhook_params.rb +190 -0
- data/lib/factpulse/models/afnor_webhook_patch_payload.rb +167 -0
- data/lib/factpulse/models/afnoro_auth2_authentication.rb +216 -0
- data/lib/factpulse/models/aggregated_payment_input.rb +2 -2
- data/lib/factpulse/models/aggregated_transaction_input.rb +2 -2
- data/lib/factpulse/models/allowance_charge.rb +2 -2
- data/lib/factpulse/models/allowance_charge_reason_code.rb +2 -2
- data/lib/factpulse/models/allowance_reason_code.rb +2 -2
- data/lib/factpulse/models/allowance_total_amount.rb +2 -2
- data/lib/factpulse/models/amount.rb +2 -2
- data/lib/factpulse/models/amount1.rb +2 -2
- data/lib/factpulse/models/amount2.rb +2 -2
- data/lib/factpulse/models/amount_due.rb +2 -2
- data/lib/factpulse/models/api_error.rb +2 -2
- data/lib/factpulse/models/api_profile.rb +2 -2
- data/lib/factpulse/models/async_task_status.rb +2 -2
- data/lib/factpulse/models/base_amount.rb +2 -2
- data/lib/factpulse/models/bounding_box_schema.rb +2 -2
- data/lib/factpulse/models/buyercountry.rb +2 -2
- data/lib/factpulse/models/celery_status.rb +2 -2
- data/lib/factpulse/models/certificate_info_response.rb +2 -2
- data/lib/factpulse/models/charge_total_amount.rb +2 -2
- data/lib/factpulse/models/chorus_pro_credentials.rb +96 -28
- data/lib/factpulse/models/chorus_pro_destination.rb +3 -3
- data/lib/factpulse/models/chorus_pro_result.rb +2 -2
- data/lib/factpulse/models/client_activate_response.rb +2 -2
- data/lib/factpulse/models/client_create_request.rb +2 -2
- data/lib/factpulse/models/client_detail.rb +2 -2
- data/lib/factpulse/models/client_list_response.rb +2 -2
- data/lib/factpulse/models/client_summary.rb +2 -2
- data/lib/factpulse/models/client_update_request.rb +2 -2
- data/lib/factpulse/models/contact.rb +2 -2
- data/lib/factpulse/models/conversion_error_result.rb +277 -0
- data/lib/factpulse/models/conversion_extraction_info.rb +176 -0
- data/lib/factpulse/models/conversion_pending_input_result.rb +344 -0
- data/lib/factpulse/models/conversion_success_task_result.rb +355 -0
- data/lib/factpulse/models/conversion_task_status.rb +223 -0
- data/lib/factpulse/models/conversion_task_status_result.rb +59 -0
- data/lib/factpulse/models/conversion_validation_failed_result.rb +348 -0
- data/lib/factpulse/models/convert_resume_request.rb +2 -2
- data/lib/factpulse/models/convert_success_response.rb +2 -2
- data/lib/factpulse/models/convert_validation_failed_response.rb +2 -2
- data/lib/factpulse/models/country_code.rb +2 -2
- data/lib/factpulse/models/create_aggregated_report_request.rb +2 -2
- data/lib/factpulse/models/create_cdar_request.rb +2 -2
- data/lib/factpulse/models/create_e_reporting_request.rb +2 -2
- data/lib/factpulse/models/currency.rb +2 -2
- data/lib/factpulse/models/currency_code.rb +2 -2
- data/lib/factpulse/models/delivery_party.rb +2 -2
- data/lib/factpulse/models/destination.rb +2 -2
- data/lib/factpulse/models/doc_type.rb +2 -2
- data/lib/factpulse/models/document_type_info.rb +2 -2
- data/lib/factpulse/models/e_reporting_flow_type.rb +2 -2
- data/lib/factpulse/models/e_reporting_validation_error.rb +2 -2
- data/lib/factpulse/models/electronic_address.rb +2 -2
- data/lib/factpulse/models/encaisseamount.rb +2 -2
- data/lib/factpulse/models/encaisseamount1.rb +2 -2
- data/lib/factpulse/models/encaissee_request.rb +2 -2
- data/lib/factpulse/models/enriched_invoice_info.rb +2 -2
- data/lib/factpulse/models/error_level.rb +2 -2
- data/lib/factpulse/models/error_source.rb +2 -2
- data/lib/factpulse/models/extraction_info.rb +2 -2
- data/lib/factpulse/models/factur_x_invoice.rb +3 -19
- data/lib/factpulse/models/factur_xpdf_info.rb +2 -2
- data/lib/factpulse/models/facture_electronique_rest_api_schemas_cdar_validation_error_response.rb +215 -0
- data/lib/factpulse/models/facture_electronique_rest_api_schemas_ereporting_invoice_type_code.rb +2 -2
- data/lib/factpulse/models/facture_electronique_rest_api_schemas_processing_chorus_pro_credentials.rb +191 -0
- data/lib/factpulse/models/field_status.rb +2 -2
- data/lib/factpulse/models/file_info.rb +2 -2
- data/lib/factpulse/models/files_info.rb +2 -2
- data/lib/factpulse/models/flow_direction.rb +2 -2
- data/lib/factpulse/models/flow_profile.rb +2 -2
- data/lib/factpulse/models/flow_summary.rb +2 -2
- data/lib/factpulse/models/flow_syntax.rb +2 -2
- data/lib/factpulse/models/flow_type.rb +2 -2
- data/lib/factpulse/models/generate_aggregated_report_response.rb +2 -2
- data/lib/factpulse/models/generate_cdar_response.rb +2 -2
- data/lib/factpulse/models/generate_certificate_request.rb +2 -2
- data/lib/factpulse/models/generate_certificate_response.rb +2 -2
- data/lib/factpulse/models/generate_e_reporting_response.rb +2 -2
- data/lib/factpulse/models/generation_success_result.rb +230 -0
- data/lib/factpulse/models/generation_task_status.rb +223 -0
- data/lib/factpulse/models/generation_task_status_result.rb +55 -0
- data/lib/factpulse/models/get_chorus_pro_id_request.rb +3 -3
- data/lib/factpulse/models/get_chorus_pro_id_response.rb +2 -2
- data/lib/factpulse/models/get_invoice_request.rb +3 -3
- data/lib/factpulse/models/get_invoice_response.rb +2 -2
- data/lib/factpulse/models/get_structure_request.rb +3 -3
- data/lib/factpulse/models/get_structure_response.rb +2 -2
- data/lib/factpulse/models/global_allowance_amount.rb +2 -2
- data/lib/factpulse/models/gross_unit_price.rb +2 -2
- data/lib/factpulse/models/http_validation_error.rb +2 -2
- data/lib/factpulse/models/incoming_invoice.rb +2 -2
- data/lib/factpulse/models/incoming_supplier.rb +2 -2
- data/lib/factpulse/models/invoice_format.rb +2 -2
- data/lib/factpulse/models/invoice_input.rb +2 -2
- data/lib/factpulse/models/invoice_lifecycle.rb +215 -0
- data/lib/factpulse/models/invoice_line.rb +2 -2
- data/lib/factpulse/models/invoice_line_allowance_amount.rb +2 -2
- data/lib/factpulse/models/invoice_note.rb +2 -2
- data/lib/factpulse/models/invoice_payment_input.rb +2 -2
- data/lib/factpulse/models/invoice_references.rb +2 -2
- data/lib/factpulse/models/invoice_status.rb +2 -2
- data/lib/factpulse/models/invoice_totals.rb +2 -2
- data/lib/factpulse/models/invoice_totals_prepayment.rb +2 -2
- data/lib/factpulse/models/invoice_type_code.rb +2 -2
- data/lib/factpulse/models/invoice_type_code_output.rb +2 -2
- data/lib/factpulse/models/invoicing_framework.rb +3 -20
- data/lib/factpulse/models/invoicing_framework_code.rb +2 -2
- data/lib/factpulse/models/issuer_role_code.rb +2 -2
- data/lib/factpulse/models/key_rotation_request.rb +2 -2
- data/lib/factpulse/models/key_rotation_response.rb +2 -2
- data/lib/factpulse/models/lifecycle_event.rb +300 -0
- data/lib/factpulse/models/lifecycle_response.rb +205 -0
- data/lib/factpulse/models/line_net_amount.rb +2 -2
- data/lib/factpulse/models/line_sub_type.rb +2 -2
- data/lib/factpulse/models/line_total_amount.rb +2 -2
- data/lib/factpulse/models/location_inner.rb +2 -2
- data/lib/factpulse/models/mandatory_note_schema.rb +2 -2
- data/lib/factpulse/models/manual_rate.rb +2 -2
- data/lib/factpulse/models/manual_vat_rate.rb +2 -2
- data/lib/factpulse/models/missing_field.rb +2 -2
- data/lib/factpulse/models/operation_nature.rb +2 -2
- data/lib/factpulse/models/output_format.rb +5 -3
- data/lib/factpulse/models/page_dimensions_schema.rb +2 -2
- data/lib/factpulse/models/parse_factur_x_response.rb +249 -0
- data/lib/factpulse/models/payee.rb +2 -2
- data/lib/factpulse/models/payment_amount_by_rate.rb +2 -2
- data/lib/factpulse/models/payment_card.rb +2 -2
- data/lib/factpulse/models/payment_means.rb +2 -2
- data/lib/factpulse/models/pdf_validation_result_api.rb +2 -2
- data/lib/factpulse/models/pdp_config_response.rb +2 -2
- data/lib/factpulse/models/pdp_config_update_request.rb +2 -2
- data/lib/factpulse/models/pdp_credentials.rb +2 -2
- data/lib/factpulse/models/percentage.rb +2 -2
- data/lib/factpulse/models/postal_address.rb +2 -2
- data/lib/factpulse/models/price_allowance_amount.rb +2 -2
- data/lib/factpulse/models/price_basis_quantity.rb +2 -2
- data/lib/factpulse/models/processing_options.rb +2 -2
- data/lib/factpulse/models/processing_rule.rb +6 -3
- data/lib/factpulse/models/product_characteristic.rb +2 -2
- data/lib/factpulse/models/product_classification.rb +2 -2
- data/lib/factpulse/models/quantity.rb +2 -2
- data/lib/factpulse/models/rate.rb +2 -2
- data/lib/factpulse/models/rate1.rb +2 -2
- data/lib/factpulse/models/reason_code_info.rb +2 -2
- data/lib/factpulse/models/reason_codes_response.rb +2 -2
- data/lib/factpulse/models/recipient.rb +2 -2
- data/lib/factpulse/models/recipient_input.rb +2 -2
- data/lib/factpulse/models/refusee_request.rb +2 -2
- data/lib/factpulse/models/report_issuer.rb +2 -2
- data/lib/factpulse/models/report_period.rb +2 -2
- data/lib/factpulse/models/report_sender.rb +2 -2
- data/lib/factpulse/models/rounding_amount.rb +2 -2
- data/lib/factpulse/models/schematron_validation_error.rb +2 -2
- data/lib/factpulse/models/scheme_id.rb +2 -2
- data/lib/factpulse/models/search_flow_request.rb +2 -2
- data/lib/factpulse/models/search_flow_response.rb +2 -2
- data/lib/factpulse/models/search_services_response.rb +2 -2
- data/lib/factpulse/models/search_structure_request.rb +3 -3
- data/lib/factpulse/models/search_structure_response.rb +2 -2
- data/lib/factpulse/models/secret_status.rb +2 -2
- data/lib/factpulse/models/sellercountry.rb +2 -2
- data/lib/factpulse/models/signature_info.rb +2 -2
- data/lib/factpulse/models/signature_info_api.rb +2 -2
- data/lib/factpulse/models/signature_parameters.rb +2 -2
- data/lib/factpulse/models/signature_success_result.rb +394 -0
- data/lib/factpulse/models/signature_task_status.rb +223 -0
- data/lib/factpulse/models/signature_task_status_result.rb +55 -0
- data/lib/factpulse/models/simplified_cdar_response.rb +2 -2
- data/lib/factpulse/models/simplified_invoice_data.rb +2 -2
- data/lib/factpulse/models/status_code_info.rb +2 -2
- data/lib/factpulse/models/status_codes_response.rb +2 -2
- data/lib/factpulse/models/structure_info.rb +2 -2
- data/lib/factpulse/models/structure_parameters.rb +2 -2
- data/lib/factpulse/models/structure_service.rb +2 -2
- data/lib/factpulse/models/submission_mode.rb +2 -2
- data/lib/factpulse/models/submit_aggregated_report_request.rb +2 -2
- data/lib/factpulse/models/submit_cdar_request.rb +2 -2
- data/lib/factpulse/models/submit_cdar_response.rb +2 -2
- data/lib/factpulse/models/submit_cdarxml_request.rb +2 -2
- data/lib/factpulse/models/submit_complete_invoice_request.rb +2 -2
- data/lib/factpulse/models/submit_complete_invoice_response.rb +33 -4
- data/lib/factpulse/models/submit_e_reporting_request.rb +2 -2
- data/lib/factpulse/models/submit_e_reporting_response.rb +2 -2
- data/lib/factpulse/models/submit_flow_request.rb +2 -2
- data/lib/factpulse/models/submit_flow_response.rb +2 -2
- data/lib/factpulse/models/submit_gross_amount.rb +2 -2
- data/lib/factpulse/models/submit_invoice_request.rb +3 -3
- data/lib/factpulse/models/submit_invoice_response.rb +2 -2
- data/lib/factpulse/models/submit_net_amount.rb +2 -2
- data/lib/factpulse/models/submit_vat_amount.rb +2 -2
- data/lib/factpulse/models/supplementary_attachment.rb +2 -2
- data/lib/factpulse/models/supplier.rb +4 -18
- data/lib/factpulse/models/task_error_result.rb +257 -0
- data/lib/factpulse/models/task_response.rb +2 -2
- data/lib/factpulse/models/tax_breakdown_input.rb +2 -2
- data/lib/factpulse/models/tax_due_date_type.rb +2 -2
- data/lib/factpulse/models/tax_representative.rb +2 -2
- data/lib/factpulse/models/taxable_amount.rb +2 -2
- data/lib/factpulse/models/taxableamount.rb +2 -2
- data/lib/factpulse/models/taxamount.rb +2 -2
- data/lib/factpulse/models/taxamount1.rb +2 -2
- data/lib/factpulse/models/taxamount2.rb +2 -2
- data/lib/factpulse/models/taxexclusiveamount.rb +2 -2
- data/lib/factpulse/models/taxexclusiveamount1.rb +2 -2
- data/lib/factpulse/models/total_gross_amount.rb +2 -2
- data/lib/factpulse/models/total_net_amount.rb +2 -2
- data/lib/factpulse/models/total_vat_amount.rb +2 -2
- data/lib/factpulse/models/transaction_category.rb +2 -2
- data/lib/factpulse/models/transmission_type_code.rb +2 -2
- data/lib/factpulse/models/unit_net_price.rb +2 -2
- data/lib/factpulse/models/unit_of_measure.rb +17 -3
- data/lib/factpulse/models/validate_cdar_request.rb +2 -2
- data/lib/factpulse/models/validate_cdar_response.rb +4 -4
- data/lib/factpulse/models/validate_e_reporting_request.rb +2 -2
- data/lib/factpulse/models/validate_e_reporting_response.rb +2 -2
- data/lib/factpulse/models/validation_error.rb +2 -2
- data/lib/factpulse/models/validation_error_detail.rb +2 -2
- data/lib/factpulse/models/validation_error_response.rb +22 -69
- data/lib/factpulse/models/validation_info.rb +2 -2
- data/lib/factpulse/models/validation_success_response.rb +2 -2
- data/lib/factpulse/models/validation_success_task_result.rb +210 -0
- data/lib/factpulse/models/validation_task_status.rb +223 -0
- data/lib/factpulse/models/validation_task_status_result.rb +55 -0
- data/lib/factpulse/models/vat_accounting_code.rb +2 -2
- data/lib/factpulse/models/vat_amount.rb +2 -2
- data/lib/factpulse/models/vat_category.rb +2 -2
- data/lib/factpulse/models/vat_line.rb +2 -2
- data/lib/factpulse/models/vat_point_date_code.rb +2 -2
- data/lib/factpulse/models/vat_rate.rb +2 -2
- data/lib/factpulse/models/vatex_code_info.rb +247 -0
- data/lib/factpulse/models/vatex_codes_response.rb +204 -0
- data/lib/factpulse/models/verification_success_response.rb +2 -2
- data/lib/factpulse/models/verification_success_task_result.rb +210 -0
- data/lib/factpulse/models/verification_typed_task_status.rb +223 -0
- data/lib/factpulse/models/verification_typed_task_status_result.rb +55 -0
- data/lib/factpulse/models/verified_field_schema.rb +2 -2
- data/lib/factpulse/models/webhook_secret_delete_response.rb +2 -2
- data/lib/factpulse/models/webhook_secret_generate_response.rb +2 -2
- data/lib/factpulse/models/webhook_secret_status_response.rb +2 -2
- data/lib/factpulse/version.rb +3 -3
- data/lib/factpulse.rb +57 -24
- metadata +167 -101
- data/docs/AFNORAddressEdit.md +0 -30
- data/docs/AFNORAddressPatch.md +0 -30
- data/docs/AFNORAddressPut.md +0 -30
- data/docs/AFNORCreateDirectoryLineBody.md +0 -20
- data/docs/AFNORCreateDirectoryLineBodyAddressingInformation.md +0 -24
- data/docs/AFNORCreateDirectoryLineBodyPeriod.md +0 -20
- data/docs/AFNORCreateRoutingCodeBody.md +0 -32
- data/docs/AFNORDirectoryLinePayloadHistoryLegalUnitFacilityRoutingCodePlatform.md +0 -20
- data/docs/AFNORDirectoryLinePost201Response.md +0 -22
- data/docs/AFNORLegalUnitPayloadIncludedNoSiren.md +0 -22
- data/docs/AFNORRoutingCodePost201Response.md +0 -22
- data/docs/AFNORUpdatePatchDirectoryLineBody.md +0 -18
- data/docs/AFNORUpdatePatchRoutingCodeBody.md +0 -24
- data/docs/AFNORUpdatePutRoutingCodeBody.md +0 -24
- data/docs/AFNORWebhookCallbackContent.md +0 -18
- data/docs/FactureElectroniqueRestApiSchemasChorusProChorusProCredentials.md +0 -26
- data/docs/FactureElectroniqueRestApiSchemasValidationValidationErrorResponse.md +0 -18
- data/lib/factpulse/models/afnor_address_edit.rb +0 -353
- data/lib/factpulse/models/afnor_address_patch.rb +0 -386
- data/lib/factpulse/models/afnor_address_put.rb +0 -435
- data/lib/factpulse/models/afnor_create_directory_line_body.rb +0 -156
- data/lib/factpulse/models/afnor_create_directory_line_body_addressing_information.rb +0 -294
- data/lib/factpulse/models/afnor_create_directory_line_body_period.rb +0 -175
- data/lib/factpulse/models/afnor_create_routing_code_body.rb +0 -412
- data/lib/factpulse/models/afnor_diffusion_status.rb +0 -40
- data/lib/factpulse/models/afnor_directory_line_payload_history_legal_unit_facility_routing_code_platform.rb +0 -178
- data/lib/factpulse/models/afnor_directory_line_post201_response.rb +0 -187
- data/lib/factpulse/models/afnor_facility_nature.rb +0 -40
- data/lib/factpulse/models/afnor_legal_unit_payload_included_no_siren.rb +0 -207
- data/lib/factpulse/models/afnor_platform_status.rb +0 -40
- data/lib/factpulse/models/afnor_routing_code_post201_response.rb +0 -228
- data/lib/factpulse/models/afnor_update_patch_directory_line_body.rb +0 -148
- data/lib/factpulse/models/afnor_update_patch_routing_code_body.rb +0 -258
- data/lib/factpulse/models/afnor_update_put_routing_code_body.rb +0 -289
- data/lib/factpulse/models/afnor_webhook_callback_content.rb +0 -148
- data/lib/factpulse/models/facture_electronique_rest_api_schemas_chorus_pro_chorus_pro_credentials.rb +0 -259
- data/lib/factpulse/models/facture_electronique_rest_api_schemas_validation_validation_error_response.rb +0 -168
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
=begin
|
|
2
2
|
#FactPulse REST API
|
|
3
3
|
|
|
4
|
-
# REST API for electronic invoicing in France: Factur-X, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄
|
|
4
|
+
# REST API for electronic invoicing in France: Factur-X (CII), UBL 2.1, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄 Invoice Generation - **Formats**: CII XML, UBL 2.1 XML, or Factur-X PDF/A-3 - **Profiles** (CII/PDF): MINIMUM, BASIC, EN16931, EXTENDED - **UBL**: Always EN16931 compliant - **Standards**: EN 16931 (EU directive 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT), UBL 2.1 (OASIS) - **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/
|
|
5
5
|
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
|
7
7
|
Contact: contact@factpulse.fr
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.21.0-SNAPSHOT
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|
|
@@ -16,31 +16,34 @@ require 'time'
|
|
|
16
16
|
module FactPulse
|
|
17
17
|
# The properties of a Flow resource
|
|
18
18
|
class AFNORFlow < ApiModelBase
|
|
19
|
-
# The
|
|
20
|
-
attr_accessor :
|
|
19
|
+
# The tracking id is an external identifier and is used to track the flow by the sender
|
|
20
|
+
attr_accessor :tracking_id
|
|
21
21
|
|
|
22
|
-
#
|
|
23
|
-
attr_accessor :
|
|
22
|
+
# Name of the file
|
|
23
|
+
attr_accessor :name
|
|
24
|
+
|
|
25
|
+
attr_accessor :processing_rule
|
|
26
|
+
|
|
27
|
+
attr_accessor :flow_syntax
|
|
28
|
+
|
|
29
|
+
attr_accessor :flow_profile
|
|
24
30
|
|
|
25
31
|
# Unique identifier supporting UUID but not only, for flexibility purpose
|
|
26
32
|
attr_accessor :flow_id
|
|
27
33
|
|
|
28
|
-
#
|
|
29
|
-
attr_accessor :
|
|
34
|
+
# The flow submission date and time (the date and time when the flow was created on the system) This property should be used by the API consumer as a time reference to avoid clock synchronization issues
|
|
35
|
+
attr_accessor :submitted_at
|
|
30
36
|
|
|
31
|
-
|
|
37
|
+
# The last update date and time of the flow. When the flow is submitted updatedAt is equal to submittedAt. When the flow acknowledgment status is changed updatedAt date and time is updated.
|
|
38
|
+
attr_accessor :updated_at
|
|
32
39
|
|
|
33
|
-
attr_accessor :
|
|
40
|
+
attr_accessor :flow_type
|
|
34
41
|
|
|
35
42
|
# Says whether the processing rule has been computed or the processing rule was an input parameter
|
|
36
43
|
attr_accessor :processing_rule_source
|
|
37
44
|
|
|
38
45
|
attr_accessor :flow_direction
|
|
39
46
|
|
|
40
|
-
attr_accessor :flow_syntax
|
|
41
|
-
|
|
42
|
-
attr_accessor :flow_profile
|
|
43
|
-
|
|
44
47
|
attr_accessor :acknowledgement
|
|
45
48
|
|
|
46
49
|
class EnumAttributeValidator
|
|
@@ -68,16 +71,17 @@ module FactPulse
|
|
|
68
71
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
69
72
|
def self.attribute_map
|
|
70
73
|
{
|
|
74
|
+
:'tracking_id' => :'trackingId',
|
|
75
|
+
:'name' => :'name',
|
|
76
|
+
:'processing_rule' => :'processingRule',
|
|
77
|
+
:'flow_syntax' => :'flowSyntax',
|
|
78
|
+
:'flow_profile' => :'flowProfile',
|
|
79
|
+
:'flow_id' => :'flowId',
|
|
71
80
|
:'submitted_at' => :'submittedAt',
|
|
72
81
|
:'updated_at' => :'updatedAt',
|
|
73
|
-
:'flow_id' => :'flowId',
|
|
74
|
-
:'tracking_id' => :'trackingId',
|
|
75
82
|
:'flow_type' => :'flowType',
|
|
76
|
-
:'processing_rule' => :'processingRule',
|
|
77
83
|
:'processing_rule_source' => :'processingRuleSource',
|
|
78
84
|
:'flow_direction' => :'flowDirection',
|
|
79
|
-
:'flow_syntax' => :'flowSyntax',
|
|
80
|
-
:'flow_profile' => :'flowProfile',
|
|
81
85
|
:'acknowledgement' => :'acknowledgement'
|
|
82
86
|
}
|
|
83
87
|
end
|
|
@@ -95,16 +99,17 @@ module FactPulse
|
|
|
95
99
|
# Attribute type mapping.
|
|
96
100
|
def self.openapi_types
|
|
97
101
|
{
|
|
102
|
+
:'tracking_id' => :'String',
|
|
103
|
+
:'name' => :'String',
|
|
104
|
+
:'processing_rule' => :'AFNORProcessingRule',
|
|
105
|
+
:'flow_syntax' => :'AFNORFlowSyntax',
|
|
106
|
+
:'flow_profile' => :'AFNORFlowProfile',
|
|
107
|
+
:'flow_id' => :'String',
|
|
98
108
|
:'submitted_at' => :'Time',
|
|
99
109
|
:'updated_at' => :'Time',
|
|
100
|
-
:'flow_id' => :'String',
|
|
101
|
-
:'tracking_id' => :'String',
|
|
102
110
|
:'flow_type' => :'AFNORFlowType',
|
|
103
|
-
:'processing_rule' => :'AFNORProcessingRule',
|
|
104
111
|
:'processing_rule_source' => :'String',
|
|
105
112
|
:'flow_direction' => :'AFNORFlowDirection',
|
|
106
|
-
:'flow_syntax' => :'AFNORFlowSyntax',
|
|
107
|
-
:'flow_profile' => :'AFNORFlowProfile',
|
|
108
113
|
:'acknowledgement' => :'AFNORAcknowledgement'
|
|
109
114
|
}
|
|
110
115
|
end
|
|
@@ -115,6 +120,15 @@ module FactPulse
|
|
|
115
120
|
])
|
|
116
121
|
end
|
|
117
122
|
|
|
123
|
+
# List of class defined in allOf (OpenAPI v3)
|
|
124
|
+
def self.openapi_all_of
|
|
125
|
+
[
|
|
126
|
+
:'AFNORCoreFlowInfo',
|
|
127
|
+
:'AFNORFlowExtension',
|
|
128
|
+
:'AFNORFullFlowInfoExtension'
|
|
129
|
+
]
|
|
130
|
+
end
|
|
131
|
+
|
|
118
132
|
# Initializes the object
|
|
119
133
|
# @param [Hash] attributes Model attributes in the form of hash
|
|
120
134
|
def initialize(attributes = {})
|
|
@@ -131,48 +145,70 @@ module FactPulse
|
|
|
131
145
|
h[k.to_sym] = v
|
|
132
146
|
}
|
|
133
147
|
|
|
134
|
-
if attributes.key?(:'
|
|
135
|
-
self.
|
|
148
|
+
if attributes.key?(:'tracking_id')
|
|
149
|
+
self.tracking_id = attributes[:'tracking_id']
|
|
136
150
|
end
|
|
137
151
|
|
|
138
|
-
if attributes.key?(:'
|
|
139
|
-
self.
|
|
152
|
+
if attributes.key?(:'name')
|
|
153
|
+
self.name = attributes[:'name']
|
|
154
|
+
else
|
|
155
|
+
self.name = nil
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
if attributes.key?(:'processing_rule')
|
|
159
|
+
self.processing_rule = attributes[:'processing_rule']
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
if attributes.key?(:'flow_syntax')
|
|
163
|
+
self.flow_syntax = attributes[:'flow_syntax']
|
|
164
|
+
else
|
|
165
|
+
self.flow_syntax = nil
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
if attributes.key?(:'flow_profile')
|
|
169
|
+
self.flow_profile = attributes[:'flow_profile']
|
|
140
170
|
end
|
|
141
171
|
|
|
142
172
|
if attributes.key?(:'flow_id')
|
|
143
173
|
self.flow_id = attributes[:'flow_id']
|
|
174
|
+
else
|
|
175
|
+
self.flow_id = nil
|
|
144
176
|
end
|
|
145
177
|
|
|
146
|
-
if attributes.key?(:'
|
|
147
|
-
self.
|
|
178
|
+
if attributes.key?(:'submitted_at')
|
|
179
|
+
self.submitted_at = attributes[:'submitted_at']
|
|
180
|
+
else
|
|
181
|
+
self.submitted_at = nil
|
|
148
182
|
end
|
|
149
183
|
|
|
150
|
-
if attributes.key?(:'
|
|
151
|
-
self.
|
|
184
|
+
if attributes.key?(:'updated_at')
|
|
185
|
+
self.updated_at = attributes[:'updated_at']
|
|
186
|
+
else
|
|
187
|
+
self.updated_at = nil
|
|
152
188
|
end
|
|
153
189
|
|
|
154
|
-
if attributes.key?(:'
|
|
155
|
-
self.
|
|
190
|
+
if attributes.key?(:'flow_type')
|
|
191
|
+
self.flow_type = attributes[:'flow_type']
|
|
192
|
+
else
|
|
193
|
+
self.flow_type = nil
|
|
156
194
|
end
|
|
157
195
|
|
|
158
196
|
if attributes.key?(:'processing_rule_source')
|
|
159
197
|
self.processing_rule_source = attributes[:'processing_rule_source']
|
|
198
|
+
else
|
|
199
|
+
self.processing_rule_source = nil
|
|
160
200
|
end
|
|
161
201
|
|
|
162
202
|
if attributes.key?(:'flow_direction')
|
|
163
203
|
self.flow_direction = attributes[:'flow_direction']
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
if attributes.key?(:'flow_syntax')
|
|
167
|
-
self.flow_syntax = attributes[:'flow_syntax']
|
|
168
|
-
end
|
|
169
|
-
|
|
170
|
-
if attributes.key?(:'flow_profile')
|
|
171
|
-
self.flow_profile = attributes[:'flow_profile']
|
|
204
|
+
else
|
|
205
|
+
self.flow_direction = nil
|
|
172
206
|
end
|
|
173
207
|
|
|
174
208
|
if attributes.key?(:'acknowledgement')
|
|
175
209
|
self.acknowledgement = attributes[:'acknowledgement']
|
|
210
|
+
else
|
|
211
|
+
self.acknowledgement = nil
|
|
176
212
|
end
|
|
177
213
|
end
|
|
178
214
|
|
|
@@ -181,12 +217,52 @@ module FactPulse
|
|
|
181
217
|
def list_invalid_properties
|
|
182
218
|
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
|
183
219
|
invalid_properties = Array.new
|
|
184
|
-
if !@
|
|
220
|
+
if !@tracking_id.nil? && @tracking_id.to_s.length > 36
|
|
221
|
+
invalid_properties.push('invalid value for "tracking_id", the character length must be smaller than or equal to 36.')
|
|
222
|
+
end
|
|
223
|
+
|
|
224
|
+
if @name.nil?
|
|
225
|
+
invalid_properties.push('invalid value for "name", name cannot be nil.')
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
if @name.to_s.length > 255
|
|
229
|
+
invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 255.')
|
|
230
|
+
end
|
|
231
|
+
|
|
232
|
+
if @flow_syntax.nil?
|
|
233
|
+
invalid_properties.push('invalid value for "flow_syntax", flow_syntax cannot be nil.')
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
if @flow_id.nil?
|
|
237
|
+
invalid_properties.push('invalid value for "flow_id", flow_id cannot be nil.')
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
if @flow_id.to_s.length > 36
|
|
185
241
|
invalid_properties.push('invalid value for "flow_id", the character length must be smaller than or equal to 36.')
|
|
186
242
|
end
|
|
187
243
|
|
|
188
|
-
if
|
|
189
|
-
invalid_properties.push('invalid value for "
|
|
244
|
+
if @submitted_at.nil?
|
|
245
|
+
invalid_properties.push('invalid value for "submitted_at", submitted_at cannot be nil.')
|
|
246
|
+
end
|
|
247
|
+
|
|
248
|
+
if @updated_at.nil?
|
|
249
|
+
invalid_properties.push('invalid value for "updated_at", updated_at cannot be nil.')
|
|
250
|
+
end
|
|
251
|
+
|
|
252
|
+
if @flow_type.nil?
|
|
253
|
+
invalid_properties.push('invalid value for "flow_type", flow_type cannot be nil.')
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
if @processing_rule_source.nil?
|
|
257
|
+
invalid_properties.push('invalid value for "processing_rule_source", processing_rule_source cannot be nil.')
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
if @flow_direction.nil?
|
|
261
|
+
invalid_properties.push('invalid value for "flow_direction", flow_direction cannot be nil.')
|
|
262
|
+
end
|
|
263
|
+
|
|
264
|
+
if @acknowledgement.nil?
|
|
265
|
+
invalid_properties.push('invalid value for "acknowledgement", acknowledgement cannot be nil.')
|
|
190
266
|
end
|
|
191
267
|
|
|
192
268
|
invalid_properties
|
|
@@ -196,13 +272,61 @@ module FactPulse
|
|
|
196
272
|
# @return true if the model is valid
|
|
197
273
|
def valid?
|
|
198
274
|
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
199
|
-
return false if !@flow_id.nil? && @flow_id.to_s.length > 36
|
|
200
275
|
return false if !@tracking_id.nil? && @tracking_id.to_s.length > 36
|
|
276
|
+
return false if @name.nil?
|
|
277
|
+
return false if @name.to_s.length > 255
|
|
278
|
+
return false if @flow_syntax.nil?
|
|
279
|
+
return false if @flow_id.nil?
|
|
280
|
+
return false if @flow_id.to_s.length > 36
|
|
281
|
+
return false if @submitted_at.nil?
|
|
282
|
+
return false if @updated_at.nil?
|
|
283
|
+
return false if @flow_type.nil?
|
|
284
|
+
return false if @processing_rule_source.nil?
|
|
201
285
|
processing_rule_source_validator = EnumAttributeValidator.new('String', ["Input", "Computed"])
|
|
202
286
|
return false unless processing_rule_source_validator.valid?(@processing_rule_source)
|
|
287
|
+
return false if @flow_direction.nil?
|
|
288
|
+
return false if @acknowledgement.nil?
|
|
203
289
|
true
|
|
204
290
|
end
|
|
205
291
|
|
|
292
|
+
# Custom attribute writer method with validation
|
|
293
|
+
# @param [Object] tracking_id Value to be assigned
|
|
294
|
+
def tracking_id=(tracking_id)
|
|
295
|
+
if tracking_id.nil?
|
|
296
|
+
fail ArgumentError, 'tracking_id cannot be nil'
|
|
297
|
+
end
|
|
298
|
+
|
|
299
|
+
if tracking_id.to_s.length > 36
|
|
300
|
+
fail ArgumentError, 'invalid value for "tracking_id", the character length must be smaller than or equal to 36.'
|
|
301
|
+
end
|
|
302
|
+
|
|
303
|
+
@tracking_id = tracking_id
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
# Custom attribute writer method with validation
|
|
307
|
+
# @param [Object] name Value to be assigned
|
|
308
|
+
def name=(name)
|
|
309
|
+
if name.nil?
|
|
310
|
+
fail ArgumentError, 'name cannot be nil'
|
|
311
|
+
end
|
|
312
|
+
|
|
313
|
+
if name.to_s.length > 255
|
|
314
|
+
fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 255.'
|
|
315
|
+
end
|
|
316
|
+
|
|
317
|
+
@name = name
|
|
318
|
+
end
|
|
319
|
+
|
|
320
|
+
# Custom attribute writer method with validation
|
|
321
|
+
# @param [Object] flow_syntax Value to be assigned
|
|
322
|
+
def flow_syntax=(flow_syntax)
|
|
323
|
+
if flow_syntax.nil?
|
|
324
|
+
fail ArgumentError, 'flow_syntax cannot be nil'
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
@flow_syntax = flow_syntax
|
|
328
|
+
end
|
|
329
|
+
|
|
206
330
|
# Custom attribute writer method with validation
|
|
207
331
|
# @param [Object] flow_id Value to be assigned
|
|
208
332
|
def flow_id=(flow_id)
|
|
@@ -218,17 +342,33 @@ module FactPulse
|
|
|
218
342
|
end
|
|
219
343
|
|
|
220
344
|
# Custom attribute writer method with validation
|
|
221
|
-
# @param [Object]
|
|
222
|
-
def
|
|
223
|
-
if
|
|
224
|
-
fail ArgumentError, '
|
|
345
|
+
# @param [Object] submitted_at Value to be assigned
|
|
346
|
+
def submitted_at=(submitted_at)
|
|
347
|
+
if submitted_at.nil?
|
|
348
|
+
fail ArgumentError, 'submitted_at cannot be nil'
|
|
225
349
|
end
|
|
226
350
|
|
|
227
|
-
|
|
228
|
-
|
|
351
|
+
@submitted_at = submitted_at
|
|
352
|
+
end
|
|
353
|
+
|
|
354
|
+
# Custom attribute writer method with validation
|
|
355
|
+
# @param [Object] updated_at Value to be assigned
|
|
356
|
+
def updated_at=(updated_at)
|
|
357
|
+
if updated_at.nil?
|
|
358
|
+
fail ArgumentError, 'updated_at cannot be nil'
|
|
229
359
|
end
|
|
230
360
|
|
|
231
|
-
@
|
|
361
|
+
@updated_at = updated_at
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
# Custom attribute writer method with validation
|
|
365
|
+
# @param [Object] flow_type Value to be assigned
|
|
366
|
+
def flow_type=(flow_type)
|
|
367
|
+
if flow_type.nil?
|
|
368
|
+
fail ArgumentError, 'flow_type cannot be nil'
|
|
369
|
+
end
|
|
370
|
+
|
|
371
|
+
@flow_type = flow_type
|
|
232
372
|
end
|
|
233
373
|
|
|
234
374
|
# Custom attribute writer method checking allowed values (enum).
|
|
@@ -241,21 +381,42 @@ module FactPulse
|
|
|
241
381
|
@processing_rule_source = processing_rule_source
|
|
242
382
|
end
|
|
243
383
|
|
|
384
|
+
# Custom attribute writer method with validation
|
|
385
|
+
# @param [Object] flow_direction Value to be assigned
|
|
386
|
+
def flow_direction=(flow_direction)
|
|
387
|
+
if flow_direction.nil?
|
|
388
|
+
fail ArgumentError, 'flow_direction cannot be nil'
|
|
389
|
+
end
|
|
390
|
+
|
|
391
|
+
@flow_direction = flow_direction
|
|
392
|
+
end
|
|
393
|
+
|
|
394
|
+
# Custom attribute writer method with validation
|
|
395
|
+
# @param [Object] acknowledgement Value to be assigned
|
|
396
|
+
def acknowledgement=(acknowledgement)
|
|
397
|
+
if acknowledgement.nil?
|
|
398
|
+
fail ArgumentError, 'acknowledgement cannot be nil'
|
|
399
|
+
end
|
|
400
|
+
|
|
401
|
+
@acknowledgement = acknowledgement
|
|
402
|
+
end
|
|
403
|
+
|
|
244
404
|
# Checks equality by comparing each attribute.
|
|
245
405
|
# @param [Object] Object to be compared
|
|
246
406
|
def ==(o)
|
|
247
407
|
return true if self.equal?(o)
|
|
248
408
|
self.class == o.class &&
|
|
409
|
+
tracking_id == o.tracking_id &&
|
|
410
|
+
name == o.name &&
|
|
411
|
+
processing_rule == o.processing_rule &&
|
|
412
|
+
flow_syntax == o.flow_syntax &&
|
|
413
|
+
flow_profile == o.flow_profile &&
|
|
414
|
+
flow_id == o.flow_id &&
|
|
249
415
|
submitted_at == o.submitted_at &&
|
|
250
416
|
updated_at == o.updated_at &&
|
|
251
|
-
flow_id == o.flow_id &&
|
|
252
|
-
tracking_id == o.tracking_id &&
|
|
253
417
|
flow_type == o.flow_type &&
|
|
254
|
-
processing_rule == o.processing_rule &&
|
|
255
418
|
processing_rule_source == o.processing_rule_source &&
|
|
256
419
|
flow_direction == o.flow_direction &&
|
|
257
|
-
flow_syntax == o.flow_syntax &&
|
|
258
|
-
flow_profile == o.flow_profile &&
|
|
259
420
|
acknowledgement == o.acknowledgement
|
|
260
421
|
end
|
|
261
422
|
|
|
@@ -268,7 +429,7 @@ module FactPulse
|
|
|
268
429
|
# Calculates hash code according to all attributes.
|
|
269
430
|
# @return [Integer] Hash code
|
|
270
431
|
def hash
|
|
271
|
-
[
|
|
432
|
+
[tracking_id, name, processing_rule, flow_syntax, flow_profile, flow_id, submitted_at, updated_at, flow_type, processing_rule_source, flow_direction, acknowledgement].hash
|
|
272
433
|
end
|
|
273
434
|
|
|
274
435
|
# Builds the object from hash
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
=begin
|
|
2
2
|
#FactPulse REST API
|
|
3
3
|
|
|
4
|
-
# REST API for electronic invoicing in France: Factur-X, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄
|
|
4
|
+
# REST API for electronic invoicing in France: Factur-X (CII), UBL 2.1, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄 Invoice Generation - **Formats**: CII XML, UBL 2.1 XML, or Factur-X PDF/A-3 - **Profiles** (CII/PDF): MINIMUM, BASIC, EN16931, EXTENDED - **UBL**: Always EN16931 compliant - **Standards**: EN 16931 (EU directive 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT), UBL 2.1 (OASIS) - **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/
|
|
5
5
|
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
|
7
7
|
Contact: contact@factpulse.fr
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.21.0-SNAPSHOT
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
=begin
|
|
2
2
|
#FactPulse REST API
|
|
3
3
|
|
|
4
|
-
# REST API for electronic invoicing in France: Factur-X, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄
|
|
4
|
+
# REST API for electronic invoicing in France: Factur-X (CII), UBL 2.1, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄 Invoice Generation - **Formats**: CII XML, UBL 2.1 XML, or Factur-X PDF/A-3 - **Profiles** (CII/PDF): MINIMUM, BASIC, EN16931, EXTENDED - **UBL**: Always EN16931 compliant - **Standards**: EN 16931 (EU directive 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT), UBL 2.1 (OASIS) - **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/
|
|
5
5
|
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
|
7
7
|
Contact: contact@factpulse.fr
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.21.0-SNAPSHOT
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|