Class: Gusto::Employees::AsyncAdressesClient

Inherits:
Object
  • Object
show all
Defined in:
lib/fern_gusto/employees/adresses/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request_client:) ⇒ Gusto::Employees::AsyncAdressesClient

Parameters:



449
450
451
# File 'lib/fern_gusto/employees/adresses/client.rb', line 449

def initialize(request_client:)
  @request_client = request_client
end

Instance Attribute Details

#request_clientGusto::AsyncRequestClient (readonly)



444
445
446
# File 'lib/fern_gusto/employees/adresses/client.rb', line 444

def request_client
  @request_client
end

Instance Method Details

#create_home_address(employee_id:, street1: nil, street2: nil, city: nil, state: nil, zip: nil, effective_date: nil, courtesy_withholding: nil, request_options: nil) ⇒ Object

)



525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
# File 'lib/fern_gusto/employees/adresses/client.rb', line 525

def create_home_address(employee_id:, street1: nil, street2: nil, city: nil, state: nil, zip: nil, effective_date: nil, courtesy_withholding: nil, request_options: nil)
  Async do
    response = @request_client.conn.post do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  req.body = { **(request_options&.additional_body_parameters || {}), street_1: street1, street_2: street2, city: city, state: state, zip: zip, effective_date: effective_date, courtesy_withholding: courtesy_withholding }.compact
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/home_addresses"
end
    Gusto::EmployeeAddress.from_json(json_object: response.body)
  end
end

#create_work_address(employee_id:, location_uuid: nil, effective_date: nil, request_options: nil) ⇒ Object

)



742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
# File 'lib/fern_gusto/employees/adresses/client.rb', line 742

def create_work_address(employee_id:, location_uuid: nil, effective_date: nil, request_options: nil)
  Async do
    response = @request_client.conn.post do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  req.body = { **(request_options&.additional_body_parameters || {}), location_uuid: location_uuid, effective_date: effective_date }.compact
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/work_addresses"
end
    Gusto::EmployeeWorkAddress.from_json(json_object: response.body)
  end
end

#delete_home_address(home_address_uuid:, request_options: nil) ⇒ Object

api.employees.adresses.delete_home_address(home_address_uuid: “home_address_uuid”)



656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
# File 'lib/fern_gusto/employees/adresses/client.rb', line 656

def delete_home_address(home_address_uuid:, request_options: nil)
  Async do
    response = @request_client.conn.delete do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  unless request_options.nil? || request_options&.additional_body_parameters.nil?
    req.body = { **(request_options&.additional_body_parameters || {}) }.compact
  end
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/home_addresses/#{home_address_uuid}"
end
  end
end

#delete_work_address(work_address_uuid:, request_options: nil) ⇒ Object

api.employees.adresses.delete_work_address(work_address_uuid: “work_address_uuid”)



860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
# File 'lib/fern_gusto/employees/adresses/client.rb', line 860

def delete_work_address(work_address_uuid:, request_options: nil)
  Async do
    response = @request_client.conn.delete do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  unless request_options.nil? || request_options&.additional_body_parameters.nil?
    req.body = { **(request_options&.additional_body_parameters || {}) }.compact
  end
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/work_addresses/#{work_address_uuid}"
end
  end
end

#get_home_address(home_address_uuid:, request_options: nil) ⇒ Object

api.employees.adresses.get_home_address(home_address_uuid: “home_address_uuid”)



562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
# File 'lib/fern_gusto/employees/adresses/client.rb', line 562

def get_home_address(home_address_uuid:, request_options: nil)
  Async do
    response = @request_client.conn.get do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  unless request_options.nil? || request_options&.additional_body_parameters.nil?
    req.body = { **(request_options&.additional_body_parameters || {}) }.compact
  end
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/home_addresses/#{home_address_uuid}"
end
    Gusto::EmployeeAddress.from_json(json_object: response.body)
  end
end

#get_home_addresses(employee_id:, request_options: nil) ⇒ Object

api.employees.adresses.get_home_addresses(employee_id: “employee_id”)



467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
# File 'lib/fern_gusto/employees/adresses/client.rb', line 467

def get_home_addresses(employee_id:, request_options: nil)
  Async do
    response = @request_client.conn.get do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  unless request_options.nil? || request_options&.additional_body_parameters.nil?
    req.body = { **(request_options&.additional_body_parameters || {}) }.compact
  end
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/home_addresses"
end
    parsed_json = JSON.parse(response.body)
    parsed_json&.map do | item |
      item = item.to_json
      Gusto::EmployeeAddress.from_json(json_object: item)
    end
  end
end

#get_work_address(work_address_uuid:, request_options: nil) ⇒ Object

api.employees.adresses.get_work_address(work_address_uuid: “work_address_uuid”)



777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
# File 'lib/fern_gusto/employees/adresses/client.rb', line 777

def get_work_address(work_address_uuid:, request_options: nil)
  Async do
    response = @request_client.conn.get do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  unless request_options.nil? || request_options&.additional_body_parameters.nil?
    req.body = { **(request_options&.additional_body_parameters || {}) }.compact
  end
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/work_addresses/#{work_address_uuid}"
end
    Gusto::EmployeeWorkAddress.from_json(json_object: response.body)
  end
end

#get_work_addresses(employee_id:, request_options: nil) ⇒ Object

api.employees.adresses.get_work_addresses(employee_id: “employee_id”)



694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
# File 'lib/fern_gusto/employees/adresses/client.rb', line 694

def get_work_addresses(employee_id:, request_options: nil)
  Async do
    response = @request_client.conn.get do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  unless request_options.nil? || request_options&.additional_body_parameters.nil?
    req.body = { **(request_options&.additional_body_parameters || {}) }.compact
  end
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/work_addresses"
end
    parsed_json = JSON.parse(response.body)
    parsed_json&.map do | item |
      item = item.to_json
      Gusto::EmployeeWorkAddress.from_json(json_object: item)
    end
  end
end

#update_home_address(home_address_uuid:, version:, street1: nil, street2: nil, city: nil, state: nil, zip: nil, effective_date: nil, courtesy_withholding: nil, request_options: nil) ⇒ Object

)



620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
# File 'lib/fern_gusto/employees/adresses/client.rb', line 620

def update_home_address(home_address_uuid:, version:, street1: nil, street2: nil, city: nil, state: nil, zip: nil, effective_date: nil, courtesy_withholding: nil, request_options: nil)
  Async do
    response = @request_client.conn.put do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  req.body = { **(request_options&.additional_body_parameters || {}), version: version, street_1: street1, street_2: street2, city: city, state: state, zip: zip, effective_date: effective_date, courtesy_withholding: courtesy_withholding }.compact
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/home_addresses/#{home_address_uuid}"
end
    Gusto::EmployeeAddress.from_json(json_object: response.body)
  end
end

#update_work_address(work_address_uuid:, location_uuid: nil, effective_date: nil, version: nil, request_options: nil) ⇒ Object

)



824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
# File 'lib/fern_gusto/employees/adresses/client.rb', line 824

def update_work_address(work_address_uuid:, location_uuid: nil, effective_date: nil, version: nil, request_options: nil)
  Async do
    response = @request_client.conn.put do | req |
  unless request_options&.timeout_in_seconds.nil?
    req.options.timeout = request_options.timeout_in_seconds
  end
  unless request_options&.token.nil?
    req.headers["Authorization"] = request_options.token
  end
  unless request_options&.gusto_api_version.nil?
    req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
  end
  req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
  unless request_options.nil? || request_options&.additional_query_parameters.nil?
    req.params = { **(request_options&.additional_query_parameters || {}) }.compact
  end
  req.body = { **(request_options&.additional_body_parameters || {}), location_uuid: location_uuid, effective_date: effective_date, version: version }.compact
  req.url "#{@request_client.get_url(request_options: request_options)}/v1/work_addresses/#{work_address_uuid}"
end
    Gusto::EmployeeWorkAddress.from_json(json_object: response.body)
  end
end