@producerflow/producerflowapi 1.0.16 → 1.0.21

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.
@@ -1,5 +1,6 @@
1
1
  import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
2
2
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
3
+ import type { Date } from "../../../google/type/date_pb";
3
4
  import type { Message } from "@bufbuild/protobuf";
4
5
  /**
5
6
  * Describes the file producerflow/appointment/v1/appointment.proto.
@@ -376,19 +377,31 @@ export type Carrier = Message<"producerflow.appointment.v1.Carrier"> & {
376
377
  */
377
378
  name: string;
378
379
  /**
379
- * The NPN of the carrier.
380
+ * National Producer Number (NPN) of the carrier.
381
+ * A unique NAIC identifier assigned to business entities during the licensing
382
+ * application process and stored in the NIPR Producer Database (PDB).
383
+ * Format: 1-10 digit numeric string.
384
+ * Example: "1234567890"
385
+ * Reference: https://nipr.com
380
386
  *
381
387
  * @generated from field: string npn = 3;
382
388
  */
383
389
  npn: string;
384
390
  /**
385
- * The FEIN of the carrier.
391
+ * Federal Employer Identification Number (FEIN) of the carrier.
392
+ * Format: 9-digit number assigned by the IRS for tax identification.
393
+ * Example: "123456789"
386
394
  *
387
395
  * @generated from field: string fein = 4;
388
396
  */
389
397
  fein: string;
390
398
  /**
391
- * The NAIC cocode of the carrier.
399
+ * NAIC Company Code (CoCode) of the carrier.
400
+ * A unique identifier assigned by the National Association of Insurance
401
+ * Commissioners (NAIC) to each insurance company for regulatory reporting.
402
+ * Format: Typically a 5-digit numeric string.
403
+ * Example: "12345"
404
+ * Reference: https://naic.org
392
405
  *
393
406
  * @generated from field: string cocode = 5;
394
407
  */
@@ -442,13 +455,16 @@ export type AppointmentOperationalStatus = Message<"producerflow.appointment.v1.
442
455
  */
443
456
  export declare const AppointmentOperationalStatusSchema: GenMessage<AppointmentOperationalStatus>;
444
457
  /**
445
- * Represents an appointment for a license.
458
+ * Represents a managed appointment for a license, tracked through the
459
+ * ProducerFlow appointment lifecycle. Unlike NIPR-sourced appointment data
460
+ * on the Producer/Agency messages, this represents appointments that are
461
+ * actively managed (requested, terminated) through the AppointmentService.
446
462
  *
447
463
  * @generated from message producerflow.appointment.v1.Appointment
448
464
  */
449
465
  export type Appointment = Message<"producerflow.appointment.v1.Appointment"> & {
450
466
  /**
451
- * Unique identifier for the appointment.
467
+ * Unique identifier for the appointment (UUID format).
452
468
  *
453
469
  * @generated from field: string appointment_id = 1;
454
470
  */
@@ -461,81 +477,94 @@ export type Appointment = Message<"producerflow.appointment.v1.Appointment"> & {
461
477
  license?: License;
462
478
  /**
463
479
  * The license number of the license being appointed.
480
+ * This is a denormalized copy of license.license_number for convenience.
464
481
  *
465
482
  * @generated from field: string name = 3;
466
483
  */
467
484
  name: string;
468
485
  /**
469
- * The id of the agency that is appointed.
486
+ * The UUID of the agency that holds this appointment.
470
487
  *
471
488
  * @generated from field: string agency_id = 4;
472
489
  */
473
490
  agencyId: string;
474
491
  /**
475
- * Optional. The id of the producer that is appointed, if any.
492
+ * Optional. The UUID of the producer that holds this appointment, if any.
493
+ * When empty, this is an agency-level appointment.
476
494
  *
477
495
  * @generated from field: optional string producer_id = 5;
478
496
  */
479
497
  producerId?: string;
480
498
  /**
481
499
  * The name of the carrier to which the license is appointed.
500
+ * Examples: "State Farm", "Allstate", "Progressive"
482
501
  *
483
502
  * @generated from field: string carrier = 6;
484
503
  */
485
504
  carrier: string;
486
505
  /**
487
- * Type of appointment (e.g., up-front, registry).
506
+ * Type of appointment (registry, up-front, just-in-time, or synthetic).
507
+ * Determines how the appointment was established and processed.
488
508
  *
489
509
  * @generated from field: producerflow.appointment.v1.AppointmentType appointment_type = 7;
490
510
  */
491
511
  appointmentType: AppointmentType;
492
512
  /**
493
- * Processing status of the appointment (e.g., in progress, appointed).
513
+ * Current processing status of the appointment in the NIPR pipeline.
514
+ * See ProcessingStatus for the complete lifecycle documentation.
494
515
  *
495
516
  * @generated from field: producerflow.appointment.v1.ProcessingStatus processing_status = 8;
496
517
  */
497
518
  processingStatus: ProcessingStatus;
498
519
  /**
499
520
  * Optional. Comments or notes related to the appointment.
521
+ * May include NIPR processing notes or rejection details.
500
522
  *
501
523
  * @generated from field: string comments = 9;
502
524
  */
503
525
  comments: string;
504
526
  /**
505
- * Timestamp of when the appointment becomes effective.
527
+ * Timestamp of when the appointment became or becomes effective.
506
528
  *
507
529
  * @generated from field: google.protobuf.Timestamp effective_date = 10;
508
530
  */
509
531
  effectiveDate?: Timestamp;
510
532
  /**
511
- * Optional. Timestamp of the termination of the appointment.
533
+ * Optional. Timestamp of when the appointment was terminated.
534
+ * Only populated when processing_status is TERMINATED.
512
535
  *
513
536
  * @generated from field: optional google.protobuf.Timestamp termination_date = 11;
514
537
  */
515
538
  terminationDate?: Timestamp;
516
539
  /**
517
- * Timestamp of the last update to the appointment.
540
+ * Timestamp of the last update to this appointment record.
518
541
  *
519
542
  * @generated from field: google.protobuf.Timestamp updated_at = 12;
520
543
  */
521
544
  updatedAt?: Timestamp;
522
545
  /**
523
- * Operational status information for the appointment. This field provides
524
- * insight into the current operational health and any risk factors that may
525
- * affect the appointment.
546
+ * Operational status information for the appointment. Provides insight into
547
+ * the current operational health and any risk factors (e.g., expired license,
548
+ * inactive E&O) that may affect the appointment's continued validity.
526
549
  *
527
550
  * @generated from field: producerflow.appointment.v1.AppointmentOperationalStatus operational_status = 13;
528
551
  */
529
552
  operationalStatus?: AppointmentOperationalStatus;
530
553
  /**
531
- * The NAIC cocode of the carrier.
554
+ * NAIC Company Code (CoCode) of the carrier.
555
+ * A unique identifier assigned by the National Association of Insurance
556
+ * Commissioners (NAIC) for regulatory reporting.
557
+ * Format: Typically a 5-digit numeric string.
558
+ * Reference: https://naic.org
532
559
  *
533
560
  * @generated from field: string cocode = 14;
534
561
  */
535
562
  cocode: string;
536
563
  /**
537
- * Optional. The id of the parent appointment, if this is a synthetic
538
- * appointment. It should be empty for non-synthetic appointments.
564
+ * Optional. The UUID of the parent appointment, if this is a synthetic
565
+ * appointment (APPOINTMENT_TYPE_SYNTHETIC). Empty for non-synthetic
566
+ * appointments. Synthetic appointments inherit properties from and are
567
+ * terminated with their parent appointment.
539
568
  *
540
569
  * @generated from field: string parent_appointment_id = 15;
541
570
  */
@@ -557,7 +586,10 @@ export type License = Message<"producerflow.appointment.v1.License"> & {
557
586
  */
558
587
  licenseId: string;
559
588
  /**
560
- * The license number.
589
+ * The license number assigned by the state Department of Insurance (DOI).
590
+ * Format varies by state (e.g., numeric, alphanumeric, or with prefixes).
591
+ * Examples: "0A12345" (CA), "BR-1234567" (TX), "100012345" (FL)
592
+ * This is a state-specific identifier, not globally unique across states.
561
593
  *
562
594
  * @generated from field: string license_number = 2;
563
595
  */
@@ -584,13 +616,20 @@ export type License = Message<"producerflow.appointment.v1.License"> & {
584
616
  value?: undefined;
585
617
  };
586
618
  /**
587
- * The two-letter state code of the license.
619
+ * The two-letter US state or territory code that issued the license.
620
+ * Format: ISO 3166-2 subdivision code (e.g., "CA", "TX", "NY").
588
621
  *
589
622
  * @generated from field: string state = 5;
590
623
  */
591
624
  state: string;
592
625
  /**
593
- * The license class.
626
+ * License class description as defined by the state DOI.
627
+ * Describes the broad category of insurance the license covers.
628
+ * Common classes include:
629
+ * - "Insurance Producer": General license to sell insurance
630
+ * - "Limited Lines Producer": Restricted to specific product types
631
+ * - "Surplus Lines Broker": Authorized for non-admitted carriers
632
+ * Values vary by state as each DOI defines its own license classes.
594
633
  *
595
634
  * @generated from field: string license_class = 6;
596
635
  */
@@ -609,6 +648,18 @@ export type License = Message<"producerflow.appointment.v1.License"> & {
609
648
  * @generated from field: string carrier_id = 8;
610
649
  */
611
650
  carrierId: string;
651
+ /**
652
+ * The date the license expires.
653
+ *
654
+ * @generated from field: google.type.Date expiration_date = 9;
655
+ */
656
+ expirationDate?: Date;
657
+ /**
658
+ * The date the license was issued.
659
+ *
660
+ * @generated from field: google.type.Date issue_date = 10;
661
+ */
662
+ issueDate?: Date;
612
663
  };
613
664
  /**
614
665
  * Describes the message producerflow.appointment.v1.License.
@@ -727,7 +778,24 @@ export declare enum RiskReason {
727
778
  */
728
779
  export declare const RiskReasonSchema: GenEnum<RiskReason>;
729
780
  /**
730
- * Processing status of the appointment.
781
+ * ProcessingStatus represents the lifecycle state of an appointment as it
782
+ * moves through the NIPR processing pipeline.
783
+ *
784
+ * Appointment Lifecycle:
785
+ *
786
+ * RequestAppointment
787
+ * |
788
+ * v
789
+ * IN_PROGRESS -----> APPOINTED (active appointment)
790
+ * | |
791
+ * v v (TerminateAppointment)
792
+ * REJECTED TERMINATION_REQUESTED --> TERMINATED
793
+ *
794
+ * For registry states or capacity carriers (no NIPR integration):
795
+ * RequestAppointment --> APPOINTED (immediate)
796
+ * TerminateAppointment --> TERMINATED (immediate)
797
+ *
798
+ * Reference: https://pdb.nipr.com/Gateway
731
799
  *
732
800
  * @generated from enum producerflow.appointment.v1.ProcessingStatus
733
801
  */
@@ -737,26 +805,47 @@ export declare enum ProcessingStatus {
737
805
  */
738
806
  UNSPECIFIED = 0,
739
807
  /**
808
+ * Appointment request has been submitted to NIPR and is awaiting processing.
809
+ * This is a transient state; the final result will be delivered via webhook.
810
+ *
740
811
  * @generated from enum value: PROCESSING_STATUS_IN_PROGRESS = 1;
741
812
  */
742
813
  IN_PROGRESS = 1,
743
814
  /**
815
+ * Appointment has been approved and is active. The producer/agency can sell
816
+ * this carrier's products for the specified Line of Authority.
817
+ *
744
818
  * @generated from enum value: PROCESSING_STATUS_APPOINTED = 2;
745
819
  */
746
820
  APPOINTED = 2,
747
821
  /**
822
+ * Appointment has been terminated. The producer/agency can no longer sell
823
+ * this carrier's products. This is a terminal state.
824
+ *
748
825
  * @generated from enum value: PROCESSING_STATUS_TERMINATED = 3;
749
826
  */
750
827
  TERMINATED = 3,
751
828
  /**
829
+ * Appointment request was rejected by NIPR. Check not_eligible_reasons for
830
+ * details. Common reasons include: missing resident license, unmet
831
+ * continuing education requirements, or outstanding regulatory actions.
832
+ *
752
833
  * @generated from enum value: PROCESSING_STATUS_REJECTED = 4;
753
834
  */
754
835
  REJECTED = 4,
755
836
  /**
837
+ * The license required for this appointment is missing or could not be found.
838
+ * The producer/agency needs to obtain the appropriate license before the
839
+ * appointment can be processed.
840
+ *
756
841
  * @generated from enum value: PROCESSING_STATUS_MISSING_LICENSE = 5;
757
842
  */
758
843
  MISSING_LICENSE = 5,
759
844
  /**
845
+ * A termination request has been submitted to NIPR and is awaiting
846
+ * processing. This is a transient state; the final result (TERMINATED)
847
+ * will be delivered via webhook.
848
+ *
760
849
  * @generated from enum value: PROCESSING_STATUS_TERMINATION_REQUESTED = 6;
761
850
  */
762
851
  TERMINATION_REQUESTED = 6
@@ -766,7 +855,13 @@ export declare enum ProcessingStatus {
766
855
  */
767
856
  export declare const ProcessingStatusSchema: GenEnum<ProcessingStatus>;
768
857
  /**
769
- * Type of appointment.
858
+ * AppointmentType categorizes how the appointment was established and
859
+ * processed.
860
+ *
861
+ * The appointment type determines the processing behavior:
862
+ * - Registry and Synthetic appointments are processed automatically
863
+ * - Up-front appointments go through NIPR's standard processing pipeline
864
+ * - Just-in-time appointments are created on demand when needed
770
865
  *
771
866
  * @generated from enum producerflow.appointment.v1.AppointmentType
772
867
  */
@@ -776,20 +871,31 @@ export declare enum AppointmentType {
776
871
  */
777
872
  UNSPECIFIED = 0,
778
873
  /**
874
+ * Registry appointment: Processed automatically for licenses in registry
875
+ * states. Registry states allow appointments without going through NIPR's
876
+ * standard appointment process.
877
+ *
779
878
  * @generated from enum value: APPOINTMENT_TYPE_REGISTRY = 1;
780
879
  */
781
880
  REGISTRY = 1,
782
881
  /**
882
+ * Up-front appointment: Standard appointment processed through NIPR.
883
+ * These require NIPR approval and may take time to process. The carrier
884
+ * pays appointment fees to NIPR/state.
885
+ *
783
886
  * @generated from enum value: APPOINTMENT_TYPE_UP_FRONT = 2;
784
887
  */
785
888
  UP_FRONT = 2,
786
889
  /**
890
+ * Just-in-time appointment: Created on demand when a producer needs to
891
+ * sell a product but doesn't have a pre-existing appointment.
892
+ *
787
893
  * @generated from enum value: APPOINTMENT_TYPE_JUST_IN_TIME = 3;
788
894
  */
789
895
  JUST_IN_TIME = 3,
790
896
  /**
791
- * Synthetic appointments are programmatically created for individual
792
- * producers in states where only agency-level appointments are permitted
897
+ * Synthetic appointment: Programmatically created for individual producers
898
+ * in states where only agency-level appointments are permitted
793
899
  * (CA, DC, HI, KY, LA, MA, MT, UT, WA). They are automatically created when
794
900
  * an agency appointment is approved and inherit properties from the parent
795
901
  * agency appointment. The parent_appointment_id field links to the parent
@@ -809,8 +915,9 @@ export declare const AppointmentTypeSchema: GenEnum<AppointmentType>;
809
915
  * TerminationReason represents the reason for the termination of an appointment.
810
916
  *
811
917
  * These reasons correspond to NIPR's valid termination codes and vary by
812
- * state. Use ListTerminationReasons to get the valid reasons for a specific
813
- * state before terminating an appointment.
918
+ * state. Not all reasons are valid in every state - use ListTerminationReasons
919
+ * to get the valid reasons for a specific state before calling
920
+ * TerminateAppointment.
814
921
  *
815
922
  * Reference: https://pdb.nipr.com/Gateway/ValidTerms
816
923
  *
@@ -822,62 +929,92 @@ export declare enum TerminationReason {
822
929
  */
823
930
  UNSPECIFIED = 0,
824
931
  /**
932
+ * Producer or agency voluntarily chose to end the appointment.
933
+ *
825
934
  * @generated from enum value: TERMINATION_REASON_VOLUNTARY_TERMINATION = 1;
826
935
  */
827
936
  VOLUNTARY_TERMINATION = 1,
828
937
  /**
938
+ * Carrier terminated due to insufficient premium production or sales volume.
939
+ *
829
940
  * @generated from enum value: TERMINATION_REASON_INADEQUATE_PRODUCTION = 2;
830
941
  */
831
942
  INADEQUATE_PRODUCTION = 2,
832
943
  /**
944
+ * Appointment was cancelled by the managing general agent (MGA).
945
+ *
833
946
  * @generated from enum value: TERMINATION_REASON_CANCELLED_BY_GENERAL_AGENT = 3;
834
947
  */
835
948
  CANCELLED_BY_GENERAL_AGENT = 3,
836
949
  /**
950
+ * Producer has passed away.
951
+ *
837
952
  * @generated from enum value: TERMINATION_REASON_DEATH = 4;
838
953
  */
839
954
  DEATH = 4,
840
955
  /**
956
+ * Insurance company has ceased operations or entered liquidation.
957
+ *
841
958
  * @generated from enum value: TERMINATION_REASON_COMPANY_DEFUNCT_OR_LIQUIDATION = 5;
842
959
  */
843
960
  COMPANY_DEFUNCT_OR_LIQUIDATION = 5,
844
961
  /**
962
+ * Producer owes money to the insurance company (e.g., unremitted premiums).
963
+ *
845
964
  * @generated from enum value: TERMINATION_REASON_COMPANY_INDEBTEDNESS = 6;
846
965
  */
847
966
  COMPANY_INDEBTEDNESS = 6,
848
967
  /**
968
+ * Carrier terminated due to poor service to policyholders.
969
+ *
849
970
  * @generated from enum value: TERMINATION_REASON_POOR_POLICYHOLDER_SERVICE = 7;
850
971
  */
851
972
  POOR_POLICYHOLDER_SERVICE = 7,
852
973
  /**
974
+ * Producer relocated to a different jurisdiction.
975
+ *
853
976
  * @generated from enum value: TERMINATION_REASON_AGENT_MOVED = 8;
854
977
  */
855
978
  AGENT_MOVED = 8,
856
979
  /**
980
+ * Appointment was created in error and is being corrected.
981
+ *
857
982
  * @generated from enum value: TERMINATION_REASON_APPOINTED_IN_ERROR = 9;
858
983
  */
859
984
  APPOINTED_IN_ERROR = 9,
860
985
  /**
986
+ * General cancellation without a more specific reason.
987
+ *
861
988
  * @generated from enum value: TERMINATION_REASON_CANCELLED = 10;
862
989
  */
863
990
  CANCELLED = 10,
864
991
  /**
992
+ * Carrier terminated for cause (e.g., misconduct, policy violations).
993
+ *
865
994
  * @generated from enum value: TERMINATION_REASON_CANCELLED_FOR_CAUSE = 11;
866
995
  */
867
996
  CANCELLED_FOR_CAUSE = 11,
868
997
  /**
998
+ * Insurance company merged with another company.
999
+ *
869
1000
  * @generated from enum value: TERMINATION_REASON_COMPANY_MERGER = 12;
870
1001
  */
871
1002
  COMPANY_MERGER = 12,
872
1003
  /**
1004
+ * Producer's license has been revoked by a regulatory authority.
1005
+ *
873
1006
  * @generated from enum value: TERMINATION_REASON_REVOKED = 13;
874
1007
  */
875
1008
  REVOKED = 13,
876
1009
  /**
1010
+ * Producer's license has been suspended for compliance issues.
1011
+ *
877
1012
  * @generated from enum value: TERMINATION_REASON_SUSPENDED_FOR_COMPLIANCE = 14;
878
1013
  */
879
1014
  SUSPENDED_FOR_COMPLIANCE = 14,
880
1015
  /**
1016
+ * Termination is being submitted for regulatory review by the state DOI.
1017
+ *
881
1018
  * @generated from enum value: TERMINATION_REASON_REQUEST_REGULATORY_REVIEW = 15;
882
1019
  */
883
1020
  REQUEST_REGULATORY_REVIEW = 15