From 0fb030b7050d807b6a747c51185123e9b7861721 Mon Sep 17 00:00:00 2001 From: Bryan Thompson Date: Mon, 23 Sep 2024 11:21:41 -0700 Subject: [PATCH] Revert "VACMS-18736 Use updated Search.gov url when flipper is enabled (#18450)" This reverts commit f5cd5110f72d6139a10b9e535eca66923309cc63. --- config/betamocks/services_config.yml | 9 -- config/features.yml | 4 - config/locales/exceptions.en.yml | 24 --- config/settings.yml | 5 +- config/settings/test.yml | 3 +- lib/search/configuration.rb | 11 +- lib/search/service.rb | 22 ++- spec/lib/search/configuration_spec.rb | 32 ---- spec/lib/search/service_spec.rb | 79 +--------- spec/support/vcr_cassettes/search/503.yml | 32 ---- spec/support/vcr_cassettes/search/504.yml | 32 ---- .../vcr_cassettes/search/empty_query.yml | 56 ------- .../search/exceeds_rate_limit.yml | 56 ------- .../search/invalid_access_key.yml | 56 ------- .../search/invalid_affiliate.yml | 56 ------- .../vcr_cassettes/search/last_page.yml | 110 -------------- spec/support/vcr_cassettes/search/page_1.yml | 140 ------------------ spec/support/vcr_cassettes/search/page_2.yml | 140 ------------------ spec/support/vcr_cassettes/search/success.yml | 56 ------- 19 files changed, 14 insertions(+), 909 deletions(-) diff --git a/config/betamocks/services_config.yml b/config/betamocks/services_config.yml index b4bd3a93623..08ee0647473 100644 --- a/config/betamocks/services_config.yml +++ b/config/betamocks/services_config.yml @@ -595,15 +595,6 @@ :path: "/api/v2/search/i14y" :file_path: "search/default" -# Search GSA -- :name: 'Search GSA' - :base_uri: <%= "#{URI(Settings.search.gsa_url).host}:#{URI(Settings.search.gsa_url).port}" %> - :endpoints: - # Search results - - :method: :get - :path: "/technology/searchgov/v2/results/i14y" - :file_path: "search/default" - #GIS - :name: 'GIS' :base_uri: <%= "#{URI(Settings.locators.gis_base_path).host}:#{URI(Settings.locators.gis_base_path).port}" %> diff --git a/config/features.yml b/config/features.yml index 8eff7f67da5..3aedfc5f9de 100644 --- a/config/features.yml +++ b/config/features.yml @@ -1697,7 +1697,3 @@ features: mgib_verifications_maintenance: actor_type: user description: Used to show maintenance alert for MGIB Verifications - search_use_v2_gsa: - actor_type: cookie_id - description: Swaps the Search Service's configuration url with an updated api.gsa.gov address - enabled_in_development: true diff --git a/config/locales/exceptions.en.yml b/config/locales/exceptions.en.yml index 2c17524a937..e339cf41181 100644 --- a/config/locales/exceptions.en.yml +++ b/config/locales/exceptions.en.yml @@ -798,30 +798,6 @@ en: code: 'SEARCH_504' detail: 'Did not receive a timely response from Search.gov' status: 504 - SEARCH_GSA_400: - <<: *external_defaults - title: Bad Request - code: 'SEARCH_GSA_400' - detail: 'api.gsa.gov service responded with a Bad Request' - status: 400 - SEARCH_GSA_429: - <<: *external_defaults - title: Exceeded rate limit - code: 'SEARCH_GSA_429' - detail: 'Exceeded api.gsa.gov rate limit' - status: 429 - SEARCH_GSA_503: - <<: *external_defaults - title: Service Unavailable - code: 'SEARCH_GSA_503' - detail: 'api.gsa.gov service is currently unavailable' - status: 503 - SEARCH_GSA_504: - <<: *external_defaults - title: Gateway Timeout - code: 'SEARCH_GSA_504' - detail: 'Did not receive a timely response from api.gsa.gov' - status: 504 SEARCH_TYPEAHEAD_400: <<: *external_defaults title: Bad Request diff --git a/config/settings.yml b/config/settings.yml index 001202f4978..1cc10b7c9b2 100644 --- a/config/settings.yml +++ b/config/settings.yml @@ -900,8 +900,7 @@ search: access_key: SEARCH_GOV_ACCESS_KEY affiliate: va mock_search: false - gsa_url: https://api.gsa.gov/technology/searchgov/v2/results/i14y - url: https://search.usa.gov/api/v2/search/i14y + url: https://search.usa.gov/api/v2 # Settings for search-typeahead search_typeahead: @@ -909,7 +908,7 @@ search_typeahead: name: va url: https://api.gsa.gov/technology/searchgov/v1 -# Settings for search-click-tracking + # Settings for search-click-tracking search_click_tracking: access_key: SEARCH_GOV_ACCESS_KEY affiliate: va diff --git a/config/settings/test.yml b/config/settings/test.yml index 8bfb03d4867..36d2843c03d 100644 --- a/config/settings/test.yml +++ b/config/settings/test.yml @@ -72,8 +72,7 @@ directory: search: access_key: TESTKEY affiliate: va - gsa_url: https://api.gsa.gov/technology/searchgov/v2/results/i14y - url: https://search.usa.gov/api/v2/search/i14y + url: https://search.usa.gov/api/v2 search_typeahead: api_key: TEST_KEY diff --git a/lib/search/configuration.rb b/lib/search/configuration.rb index e56178d8df6..ea802406877 100644 --- a/lib/search/configuration.rb +++ b/lib/search/configuration.rb @@ -23,16 +23,7 @@ def mock_enabled? end def base_path - flipper_enabled? ? Settings.search.gsa_url : Settings.search.url - end - - # Breakers initialization requires this configuration which means the #base_path - # is required when building the DBs in CI that flipper uses for checking toggles. - # The NoDatabaseError rescue handles times we're building new DBs. - def flipper_enabled? - Flipper.enabled?(:search_use_v2_gsa) - rescue ActiveRecord::NoDatabaseError - false + "#{Settings.search.url}/search/i14y" end def service_name diff --git a/lib/search/service.rb b/lib/search/service.rb index 876f6bae028..1b8d4ac018d 100644 --- a/lib/search/service.rb +++ b/lib/search/service.rb @@ -7,11 +7,10 @@ require 'search/configuration' module Search - # This class builds a wrapper around Search.gov or api.gsa.gov web results API. Creating a new instance of class + # This class builds a wrapper around Search.gov web results API. Creating a new instance of class # will and calling #results will return a ResultsResponse upon success or an exception upon failure. # # @see https://search.usa.gov/sites/7378/api_instructions - # @see https://open.gsa.gov/api/searchgov-results/ # class Service < Common::Client::Base include Common::Client::Concerns::Monitoring @@ -49,7 +48,6 @@ def results_url # Optional params [enable_highlighting, limit, offset, sort_by] # # @see https://search.usa.gov/sites/7378/api_instructions - # @see https://open.gsa.gov/api/searchgov-results/ # def query_params { @@ -94,7 +92,7 @@ def handle_error(error) message = parse_messages(error).first save_error_details(message) handle_429!(error) - raise_backend_exception(error_code_name(400), self.class, error) if error.status >= 400 + raise_backend_exception('SEARCH_400', self.class, error) if error.status >= 400 else raise error end @@ -116,22 +114,20 @@ def handle_429!(error) return unless error.status == 429 StatsD.increment("#{Search::Service::STATSD_KEY_PREFIX}.exceptions", tags: ['exception:429']) - raise_backend_exception(error_code_name(error.status), self.class, error) + raise_backend_exception('SEARCH_429', self.class, error) end def handle_server_error!(error) return unless [503, 504].include?(error.status) + exceptions = { + 503 => 'SEARCH_503', + 504 => 'SEARCH_504' + } # Catch when the error's structure doesn't match what's usually expected. - message = error.body.is_a?(Hash) ? parse_messages(error).first : 'Search API is down' + message = error.body.is_a?(Hash) ? parse_messages(error).first : 'Search.gov is down' save_error_details(message) - raise_backend_exception(error_code_name(error.status), self.class, error) - end - - def error_code_name(error_status) - error_code_prefix = self.class.configuration.flipper_enabled? ? 'SEARCH_GSA' : 'SEARCH' - - "#{error_code_prefix}_#{error_status}" + raise_backend_exception(exceptions[error.status], self.class, error) end end end diff --git a/spec/lib/search/configuration_spec.rb b/spec/lib/search/configuration_spec.rb index 01b7233b54e..90fbb776345 100644 --- a/spec/lib/search/configuration_spec.rb +++ b/spec/lib/search/configuration_spec.rb @@ -8,36 +8,4 @@ expect(described_class.instance.service_name).to eq('Search/Results') end end - - describe '#base_path' do - context 'search_use_v2_gsa Flipper is enabled' do - before do - Flipper.enable(:search_use_v2_gsa) - end - - it 'provides api.gsa.gov search URL' do - expect(described_class.instance.base_path).to eq('https://api.gsa.gov/technology/searchgov/v2/results/i14y') - end - end - - context 'search_use_v2_gsa Flipper is disabled' do - before do - Flipper.disable(:search_use_v2_gsa) - end - - it 'provides search.usa.gov search URL' do - expect(described_class.instance.base_path).to eq('https://search.usa.gov/api/v2/search/i14y') - end - end - - context 'Flipper raises a ActiveRecord::NoDatabaseError' do - before do - expect(Flipper).to receive(:enabled?).and_raise(ActiveRecord::NoDatabaseError) - end - - it 'provides search.usa.gov search URL' do - expect(described_class.instance.base_path).to eq('https://search.usa.gov/api/v2/search/i14y') - end - end - end end diff --git a/spec/lib/search/service_spec.rb b/spec/lib/search/service_spec.rb index 4f4684d1ee9..5b4c74ed670 100644 --- a/spec/lib/search/service_spec.rb +++ b/spec/lib/search/service_spec.rb @@ -10,7 +10,6 @@ before do allow_any_instance_of(described_class).to receive(:access_key).and_return('TESTKEY') - Flipper.disable(:search_use_v2_gsa) end describe '#results' do @@ -50,18 +49,6 @@ end end end - - it 'raises GSA exception if Flipper enabled', :aggregate_failures do - Flipper.enable(:search_use_v2_gsa) - - VCR.use_cassette('search/empty_query', VCR::MATCH_EVERYTHING) do - expect { subject.results }.to raise_error do |e| - expect(e).to be_a(Common::Exceptions::BackendServiceException) - expect(e.status_code).to eq(400) - expect(e.errors.first.code).to eq('SEARCH_GSA_400') - end - end - end end context 'when the upstream API gives a 503' do @@ -74,18 +61,6 @@ end end end - - it 'raises GSA exception if Flipper enabled', :aggregate_failures do - Flipper.enable(:search_use_v2_gsa) - - VCR.use_cassette('search/503', VCR::MATCH_EVERYTHING) do - expect { subject.results }.to raise_error do |e| - expect(e).to be_a(Common::Exceptions::BackendServiceException) - expect(e.status_code).to eq(503) - expect(e.errors.first.code).to eq('SEARCH_GSA_503') - end - end - end end context 'when the upstream API gives a 504' do @@ -98,18 +73,6 @@ end end end - - it 'raises GSA exception if Flipper enabled', :aggregate_failures do - Flipper.enable(:search_use_v2_gsa) - - VCR.use_cassette('search/504', VCR::MATCH_EVERYTHING) do - expect { subject.results }.to raise_error do |e| - expect(e).to be_a(Common::Exceptions::BackendServiceException) - expect(e.status_code).to eq(504) - expect(e.errors.first.code).to eq('SEARCH_GSA_504') - end - end - end end context 'with an invalid API access key' do @@ -124,20 +87,6 @@ end end end - - it 'raises GSA exception if Flipper enabled', :aggregate_failures do - Flipper.enable(:search_use_v2_gsa) - - VCR.use_cassette('search/invalid_access_key', VCR::MATCH_EVERYTHING) do - allow_any_instance_of(described_class).to receive(:access_key).and_return('INVALIDKEY') - - expect { subject.results }.to raise_error do |e| - expect(e).to be_a(Common::Exceptions::BackendServiceException) - expect(e.status_code).to eq(400) - expect(e.errors.first.code).to eq('SEARCH_GSA_400') - end - end - end end context 'with an invalid affiliate' do @@ -152,23 +101,9 @@ end end end - - it 'raises GSA exception if Flipper enabled', :aggregate_failures do - Flipper.enable(:search_use_v2_gsa) - - VCR.use_cassette('search/invalid_affiliate', VCR::MATCH_EVERYTHING) do - allow_any_instance_of(described_class).to receive(:affiliate).and_return('INVALID') - - expect { subject.results }.to raise_error do |e| - expect(e).to be_a(Common::Exceptions::BackendServiceException) - expect(e.status_code).to eq(400) - expect(e.errors.first.code).to eq('SEARCH_GSA_400') - end - end - end end - context 'when exceeding the API rate limit' do + context 'when exceeding the Search.gov rate limit' do it 'raises an exception', :aggregate_failures do VCR.use_cassette('search/exceeds_rate_limit', VCR::MATCH_EVERYTHING) do expect { subject.results }.to raise_error do |e| @@ -179,18 +114,6 @@ end end - it 'raises GSA exception if Flipper enabled', :aggregate_failures do - Flipper.enable(:search_use_v2_gsa) - - VCR.use_cassette('search/exceeds_rate_limit', VCR::MATCH_EVERYTHING) do - expect { subject.results }.to raise_error do |e| - expect(e).to be_a(Common::Exceptions::BackendServiceException) - expect(e.status_code).to eq(429) - expect(e.errors.first.code).to eq('SEARCH_GSA_429') - end - end - end - it 'increments the StatsD exception:429 counter' do VCR.use_cassette('search/exceeds_rate_limit', VCR::MATCH_EVERYTHING) do allow_any_instance_of(described_class).to receive(:raise_backend_exception).and_return(nil) diff --git a/spec/support/vcr_cassettes/search/503.yml b/spec/support/vcr_cassettes/search/503.yml index 91fd5aecc85..1eb6edb9ff2 100644 --- a/spec/support/vcr_cassettes/search/503.yml +++ b/spec/support/vcr_cassettes/search/503.yml @@ -32,36 +32,4 @@ http_interactions: encoding: ASCII-8BIT string: '' recorded_at: Wed, 31 Jan 2024 18:40:23 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=0&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 503 - message: Service Unavailable - headers: - Content-Length: - - 0 - Connection: - - keep-alive - Date: - - Wed, 31 Jan 2024 18:40:23 GMT - Keep-Alive: - - timeout=5 - body: - encoding: ASCII-8BIT - string: '' - recorded_at: Wed, 31 Jan 2024 18:40:23 GMT recorded_with: VCR 6.2.0 diff --git a/spec/support/vcr_cassettes/search/504.yml b/spec/support/vcr_cassettes/search/504.yml index 22d2162cf32..daee58af2f9 100644 --- a/spec/support/vcr_cassettes/search/504.yml +++ b/spec/support/vcr_cassettes/search/504.yml @@ -32,36 +32,4 @@ http_interactions: encoding: ASCII-8BIT string: '' recorded_at: Wed, 31 Jan 2024 18:49:39 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=0&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 504 - message: Gateway Timeout - headers: - Content-Length: - - 0 - Connection: - - keep-alive - Date: - - Wed, 31 Jan 2024 18:49:39 GMT - Keep-Alive: - - timeout=5 - body: - encoding: ASCII-8BIT - string: '' - recorded_at: Tue, 17 Sep 2024 22:49:39 GMT recorded_with: VCR 6.2.0 diff --git a/spec/support/vcr_cassettes/search/empty_query.yml b/spec/support/vcr_cassettes/search/empty_query.yml index ea6592b7384..f2a79bc2026 100644 --- a/spec/support/vcr_cassettes/search/empty_query.yml +++ b/spec/support/vcr_cassettes/search/empty_query.yml @@ -56,60 +56,4 @@ http_interactions: string: '{"errors":["a search term must be present"]}' http_version: recorded_at: Thu, 13 Sep 2018 02:16:30 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=0&query= - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 400 - message: Bad Request - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Thu, 13 Sep 2018 02:16:30 GMT - Etag: - - W/"c740cd937737ec25c05c833fee222c7f" - Server: - - Apache - Status: - - 400 Bad Request - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy3.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - '09de91a6-945a-484d-ab8a-7fa0b4dfe678' - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '8720' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: '{"errors":["a search term must be present"]}' - http_version: - recorded_at: Tue, 17 Sep 2024 21:48:30 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr_cassettes/search/exceeds_rate_limit.yml b/spec/support/vcr_cassettes/search/exceeds_rate_limit.yml index bb4fc7a02dd..07ba3064336 100644 --- a/spec/support/vcr_cassettes/search/exceeds_rate_limit.yml +++ b/spec/support/vcr_cassettes/search/exceeds_rate_limit.yml @@ -56,60 +56,4 @@ http_interactions: string: '{"errors":["rate limit exceeded"]}' http_version: recorded_at: Thu, 13 Sep 2018 02:16:30 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=0&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 429 - message: Too Many Requests - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Thu, 13 Sep 2018 02:16:30 GMT - Etag: - - W/"c740cd937737ec25c05c833fee222c7f" - Server: - - Apache - Status: - - 429 Too Many Requests - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy3.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - '09de91a6-945a-484d-ab8a-7fa0b4dfe678' - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '8720' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: '{"errors":["rate limit exceeded"]}' - http_version: - recorded_at: Tue, 17 Sep 2024 21:50:30 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr_cassettes/search/invalid_access_key.yml b/spec/support/vcr_cassettes/search/invalid_access_key.yml index e054c936978..b102c987469 100644 --- a/spec/support/vcr_cassettes/search/invalid_access_key.yml +++ b/spec/support/vcr_cassettes/search/invalid_access_key.yml @@ -56,60 +56,4 @@ http_interactions: string: '{"errors":["access_key is invalid"]}' http_version: recorded_at: Thu, 13 Sep 2018 02:16:30 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=INVALIDKEY&affiliate=va&limit=10&offset=0&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 400 - message: Bad Request - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Thu, 13 Sep 2018 02:16:30 GMT - Etag: - - W/"c740cd937737ec25c05c833fee222c7f" - Server: - - Apache - Status: - - 400 Bad Request - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy3.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - '09de91a6-945a-484d-ab8a-7fa0b4dfe678' - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '8720' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: '{"errors":["access_key is invalid"]}' - http_version: - recorded_at: Thu, 13 Sep 2018 02:16:30 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr_cassettes/search/invalid_affiliate.yml b/spec/support/vcr_cassettes/search/invalid_affiliate.yml index aedb369b5b5..60400665364 100644 --- a/spec/support/vcr_cassettes/search/invalid_affiliate.yml +++ b/spec/support/vcr_cassettes/search/invalid_affiliate.yml @@ -56,60 +56,4 @@ http_interactions: string: '{"errors":["affiliate not found"]}' http_version: recorded_at: Thu, 13 Sep 2018 02:16:30 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=INVALID&limit=10&offset=0&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 400 - message: Bad Request - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Thu, 13 Sep 2018 02:16:30 GMT - Etag: - - W/"c740cd937737ec25c05c833fee222c7f" - Server: - - Apache - Status: - - 400 Bad Request - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy3.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - '09de91a6-945a-484d-ab8a-7fa0b4dfe678' - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '8720' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: '{"errors":["affiliate not found"]}' - http_version: - recorded_at: Thu, 13 Sep 2018 02:16:30 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr_cassettes/search/last_page.yml b/spec/support/vcr_cassettes/search/last_page.yml index 8279cbe25b2..a91fef50c49 100644 --- a/spec/support/vcr_cassettes/search/last_page.yml +++ b/spec/support/vcr_cassettes/search/last_page.yml @@ -110,114 +110,4 @@ http_interactions: }' http_version: recorded_at: Fri, 12 Oct 2018 19:54:55 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=80&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 200 - message: OK - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Fri, 12 Oct 2018 19:54:55 GMT - Etag: - - W/"c2254ed1719a71eee2c71db91cc1f4a5" - Server: - - Apache - Status: - - 200 OK - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy1.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - 24d63c55-38ed-4cc3-acf3-58678c0f8f90 - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '1799' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: '{ - "query": "benefits", - "web": { - "total": 85, - "next_offset": null, - "spelling_correction": null, - "results": - [{ - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1995/introduction", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Manage your health & benefits Find VA locations Home Education Apply for Education...Education Benefits Manage your education benefits Equal to VA Form 22-1995 (Request", - "publication_date": null - }, - { - "title": "Education Benefits", - "url": "https://www.vets.gov/education/", - "snippet": "Find out which VA education benefits you may qualify for through the GI Bill...Education Benefits We offer Veterans, Servicemembers, and their families education...education benefits like help paying tuition, help finding the right school or", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1995/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/5490/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990E/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }] - }, - "text_best_bets": [], - "graphic_best_bets": [], - "health_topics": [], - "job_openings": [], - "recent_tweets": [ - { - "text": "What is VA compensation? Many people don’t fully understand the intent, purpose, or process behind this benefit. He… https://t.co/3OWDjaEqh6", - "url": "https://twitter.com/VAVetBenefits/status/1040228111646949377", - "name": "Veterans Benefits", - "screen_name": "VAVetBenefits", - "profile_image_url": "https://pbs.twimg.com/profile_images/344513261572743396/a9fcce7feb947b2ec498491c6c6d6985_normal.png", - "created_at": "2018-09-13T13:18:02+00:00" - } - ], - "federal_register_documents": [], - "related_search_terms": [] - }' - http_version: - recorded_at: Fri, 12 Oct 2018 19:54:55 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr_cassettes/search/page_1.yml b/spec/support/vcr_cassettes/search/page_1.yml index 1ee4fb5d050..cd06f5a6251 100644 --- a/spec/support/vcr_cassettes/search/page_1.yml +++ b/spec/support/vcr_cassettes/search/page_1.yml @@ -140,144 +140,4 @@ http_interactions: }' http_version: recorded_at: Mon, 15 Oct 2018 10:31:33 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=0&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 200 - message: OK - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Mon, 15 Oct 2018 10:31:33 GMT - Etag: - - W/"bd8e7b1d03a42ed35caf97044e477593" - Server: - - Apache - Status: - - 200 OK - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy2.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - d7a4dc39-3eca-4005-97e1-8cd668fac5a6 - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '6776' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: '{ - "query": "benefits", - "web": { - "total": 85, - "next_offset": 10, - "spelling_correction": null, - "results": - [{ - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1995/introduction", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Manage your health & benefits Find VA locations Home Education Apply for Education...Education Benefits Manage your education benefits Equal to VA Form 22-1995 (Request", - "publication_date": null - }, - { - "title": "Education Benefits", - "url": "https://www.vets.gov/education/", - "snippet": "Find out which VA education benefits you may qualify for through the GI Bill...Education Benefits We offer Veterans, Servicemembers, and their families education...education benefits like help paying tuition, help finding the right school or", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1995/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/5490/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/5495/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990N/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990/introduction", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990E", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990E/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }] - }, - "text_best_bets": [], - "graphic_best_bets": [], - "health_topics": [], - "job_openings": [], - "recent_tweets": [ - { - "text": "What is VA compensation? Many people don’t fully understand the intent, purpose, or process behind this benefit. He… https://t.co/3OWDjaEqh6", - "url": "https://twitter.com/VAVetBenefits/status/1040228111646949377", - "name": "Veterans Benefits", - "screen_name": "VAVetBenefits", - "profile_image_url": "https://pbs.twimg.com/profile_images/344513261572743396/a9fcce7feb947b2ec498491c6c6d6985_normal.png", - "created_at": "2018-09-13T13:18:02+00:00" - } - ], - "federal_register_documents": [], - "related_search_terms": [] - }' - http_version: - recorded_at: Tue, 17 Sep 2024 22:20:33 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr_cassettes/search/page_2.yml b/spec/support/vcr_cassettes/search/page_2.yml index e107fc9e925..272cfafedb0 100644 --- a/spec/support/vcr_cassettes/search/page_2.yml +++ b/spec/support/vcr_cassettes/search/page_2.yml @@ -140,144 +140,4 @@ http_interactions: }' http_version: recorded_at: Fri, 12 Oct 2018 19:43:11 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=10&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 200 - message: OK - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Fri, 12 Oct 2018 19:43:11 GMT - Etag: - - W/"fcaa27d61a23cda72af15458e243d7cb" - Server: - - Apache - Status: - - 200 OK - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy1.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - 04d4802d-5352-4f56-aa07-bbd64fa9c7a9 - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '6463' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: '{ - "query": "benefits", - "web": { - "total": 85, - "next_offset": 20, - "spelling_correction": null, - "results": - [{ - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1995/introduction", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Manage your health & benefits Find VA locations Home Education Apply for Education...Education Benefits Manage your education benefits Equal to VA Form 22-1995 (Request", - "publication_date": null - }, - { - "title": "Education Benefits", - "url": "https://www.vets.gov/education/", - "snippet": "Find out which VA education benefits you may qualify for through the GI Bill...Education Benefits We offer Veterans, Servicemembers, and their families education...education benefits like help paying tuition, help finding the right school or", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1995/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/5490/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/5495/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990N/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990/introduction", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990E", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }, - { - "title": "Apply for education benefits", - "url": "https://www.vets.gov/education/apply-for-education-benefits/application/1990E/", - "snippet": "Use your VA education benefits to pay for college or training programs. Find...documents youll need to apply for benefits, and start your online application...Home Education Apply for Education Benefits Please wait while we load the application", - "publication_date": null - }] - }, - "text_best_bets": [], - "graphic_best_bets": [], - "health_topics": [], - "job_openings": [], - "recent_tweets": [ - { - "text": "What is VA compensation? Many people don’t fully understand the intent, purpose, or process behind this benefit. He… https://t.co/3OWDjaEqh6", - "url": "https://twitter.com/VAVetBenefits/status/1040228111646949377", - "name": "Veterans Benefits", - "screen_name": "VAVetBenefits", - "profile_image_url": "https://pbs.twimg.com/profile_images/344513261572743396/a9fcce7feb947b2ec498491c6c6d6985_normal.png", - "created_at": "2018-09-13T13:18:02+00:00" - } - ], - "federal_register_documents": [], - "related_search_terms": [] - }' - http_version: - recorded_at: Tue, 17 Sep 2024 22:19:11 GMT recorded_with: VCR 3.0.3 diff --git a/spec/support/vcr_cassettes/search/success.yml b/spec/support/vcr_cassettes/search/success.yml index 852914f5eaa..20758786d39 100644 --- a/spec/support/vcr_cassettes/search/success.yml +++ b/spec/support/vcr_cassettes/search/success.yml @@ -56,60 +56,4 @@ http_interactions: eyJxdWVyeSI6ImJlbmVmaXRzIiwid2ViIjp7InRvdGFsIjo2NTAxMywibmV4dF9vZmZzZXQiOjEwLCJzcGVsbGluZ19jb3JyZWN0aW9uIjpudWxsLCJyZXN1bHRzIjpbeyJ0aXRsZSI6IlZldGVyYW5zIO6AgEJlbmVmaXRz7oCBIEFkbWluaXN0cmF0aW9uIEhvbWUiLCJ1cmwiOiJodHRwczovL2JlbmVmaXRzLnZhLmdvdi9iZW5lZml0cy8iLCJzbmlwcGV0IjoiVmV0ZXJhbnMg7oCAQmVuZWZpdHPugIEgQWRtaW5pc3RyYXRpb24gcHJvdmlkZXMgZmluYW5jaWFsIGFuZCBvdGhlciBmb3JtcyBvZiBhc3Npc3RhbmNlLi4uZGVwZW5kZW50cy4gVGhpcyBwYWdlIHByb3ZpZGVzIGxpbmtzIHRvIO6AgGJlbmVmaXTugIEgaW5mb3JtYXRpb24gYW5kIHNlcnZpY2VzLi4uLmV4cGFuZCBhIG1haW4gbWVudSBvcHRpb24gKEhlYWx0aCwg7oCAQmVuZWZpdHPugIEsIGV0YykuIDMuIFRvIGVudGVyIGFuZCBhY3RpdmF0ZSB0aGUuLi5EYXRlcyBGdWxseSBEZXZlbG9wZWQgQ2xhaW1zIEFwcGx5IO6AgEJlbmVmaXTugIEgUmF0ZXMgQWRkIGEgRGVwZW5kZW50IEVkdWNhdGlvbiAmIiwicHVibGljYXRpb25fZGF0ZSI6bnVsbH0seyJ0aXRsZSI6Ik1hbmFnZSBZb3VyIENvbXBlbnNhdGlvbiDugIBCZW5lZml0c+6AgSAtIFZBL0RvRCBlQmVuZWZpdHMiLCJ1cmwiOiJodHRwczovL3d3dy5lYmVuZWZpdHMudmEuZ292L2ViZW5lZml0cy9tYW5hZ2UvY29tcGVuc2F0aW9uIiwic25pcHBldCI6Ii4uLnN0YXJ0cyBoZXJlLiBNYW5hZ2UgWW91ciBDb21wZW5zYXRpb24g7oCAQmVuZWZpdHPugIEgQ29tcGVuc2F0aW9uIENsYWltIFN0YXR1cyBDaGVjayB0aGUuLi5pbmZvcm1hdGlvbiBmb3IgeW91ciBWQSBjb21wZW5zYXRpb24g7oCAYmVuZWZpdHPugIEuIG15UGF5IERGQVMgbXlQYXkgc2luZ2xlIHNpZ24gb24gZnJvbSIsInB1YmxpY2F0aW9uX2RhdGUiOm51bGx9LHsidGl0bGUiOiJWQSDugIBiZW5lZml0c+6AgSBmb3Igc3BvdXNlcywgZGVwZW5kZW50cywgc3Vydml2b3JzLCBhbmQgZmFtaWx5IGNhcmVnaXZlcnMgfCBWZXRlcmFucyBBZmZhaXJzIiwidXJsIjoiaHR0cHM6Ly93d3cudmEuZ292L2ZhbWlseS1tZW1iZXItYmVuZWZpdHMvIiwic25pcHBldCI6IkxlYXJuIGFib3V0IFZBIO6AgGJlbmVmaXRz7oCBIGZvciBzcG91c2VzLCBkZXBlbmRlbnRzLCBzdXJ2aXZvcnMsIGFuZCBmYW1pbHkgY2FyZWdpdmVycy4uLlZBIO6AgGJlbmVmaXRz7oCBIGZvciBzcG91c2VzLCBkZXBlbmRlbnRzLCBzdXJ2aXZvcnMsIGFuZCBmYW1pbHkgY2FyZWdpdmVycyBBcyB0aGUuLi5tZW1iZXIsIHlvdSBtYXkgcXVhbGlmeSBmb3IgY2VydGFpbiDugIBiZW5lZml0c+6AgSwgbGlrZSBoZWFsdGggY2FyZSwgbGlmZSBpbnN1cmFuY2UiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wOS0yMyJ9LHsidGl0bGUiOiJEb3dubG9hZCBWQSDugIBiZW5lZml07oCBIGxldHRlcnMgfCBWZXRlcmFucyBBZmZhaXJzIiwidXJsIjoiaHR0cHM6Ly93d3cudmEuZ292L3JlY29yZHMvZG93bmxvYWQtdmEtbGV0dGVycy8iLCJzbmlwcGV0IjoiRG93bmxvYWQgeW91ciBWQSDugIBCZW5lZml07oCBIFN1bW1hcnkgTGV0dGVyIChzb21ldGltZXMgY2FsbGVkIGEgVkEgYXdhcmQgbGV0dGVyKS4uLmxldHRlcikgYW5kIG90aGVyIO6AgGJlbmVmaXTugIEgbGV0dGVycyBhbmQgZG9jdW1lbnRzIG9ubGluZS4uLi5zZWN0aW9uIERvd25sb2FkIFZBIO6AgGJlbmVmaXTugIEgbGV0dGVycyBUbyByZWNlaXZlIHNvbWUg7oCAYmVuZWZpdHPugIEsIFZldGVyYW5zIG5lZWQgYSBsZXR0ZXIuLi5zdGF0dXMuIEFjY2VzcyBhbmQgZG93bmxvYWQgeW91ciBWQSDugIBCZW5lZml07oCBIFN1bW1hcnkgTGV0dGVyIChzb21ldGltZXMgY2FsbGVkIGEiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wOC0yNyJ9LHsidGl0bGUiOiJWQS5nb3YgSG9tZSB8IFZldGVyYW5zIEFmZmFpcnMiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvIiwic25pcHBldCI6IkFwcGx5IGZvciBhbmQgbWFuYWdlIHRoZSBWQSDugIBiZW5lZml0c+6AgSBhbmQgc2VydmljZXMgeW914oCZdmUgZWFybmVkIGFzIGEgVmV0ZXJhbi4uLkFjY2VzcyBhbmQgbWFuYWdlIHlvdXIgVkEg7oCAYmVuZWZpdHPugIEgYW5kIGhlYWx0aCBjYXJlIEhlYWx0aCBjYXJlIFJlZmlsbCBhbmQgdHJhY2suLi5FZHVjYXRpb24gQ2hlY2sgeW91ciBQb3N0LTkvMTEgR0kgQmlsbMKuIO6AgGJlbmVmaXRz7oCBIFZpZXcgeW91ciBwYXltZW50IGhpc3RvcnkgQ2hhbmdlIHlvdXIiLCJwdWJsaWNhdGlvbl9kYXRlIjpudWxsfSx7InRpdGxlIjoiVkEgQWlkIGFuZCBBdHRlbmRhbmNlIO6AgGJlbmVmaXRz7oCBIGFuZCBIb3VzZWJvdW5kIGFsbG93YW5jZSB8IFZldGVyYW5zIEFmZmFpcnMiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvcGVuc2lvbi9haWQtYXR0ZW5kYW5jZS1ob3VzZWJvdW5kLyIsInNuaXBwZXQiOiJBaWQgYW5kIEF0dGVuZGFuY2Ugb3IgSG91c2Vib3VuZCDugIBiZW5lZml0c+6AgSBmb3IgVmV0ZXJhbnMgYW5kIHN1cnZpdmluZyBzcG91c2VzLi4udGhpcyBzZWN0aW9uIFZBIEFpZCBhbmQgQXR0ZW5kYW5jZSDugIBiZW5lZml0c+6AgSBhbmQgSG91c2Vib3VuZCBhbGxvd2FuY2UgVkEgQWlkIGFuZC4uLmFuZCBBdHRlbmRhbmNlIG9yIEhvdXNlYm91bmQg7oCAYmVuZWZpdHPugIEgcHJvdmlkZSBtb250aGx5IHBheW1lbnRzIGFkZGVkIHRvIHRoZSBhbW91bnQiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wOC0wOCJ9LHsidGl0bGUiOiJDSEFNUFZBIO6AgGJlbmVmaXRz7oCBIHwgVmV0ZXJhbnMgQWZmYWlycyIsInVybCI6Imh0dHBzOi8vd3d3LnZhLmdvdi9oZWFsdGgtY2FyZS9mYW1pbHktY2FyZWdpdmVyLWJlbmVmaXRzL2NoYW1wdmEvIiwic25pcHBldCI6IkxlYXJuIGFib3V0IENIQU1QVkEg7oCAYmVuZWZpdHPugIEsIHdoaWNoIGNvdmVyIHRoZSBjb3N0IG9mIGhlYWx0aCBjYXJlIGZvciB0aGUgc3BvdXNlLi4uTW9yZSBpbiB0aGlzIHNlY3Rpb24gQ0hBTVBWQSDugIBiZW5lZml0c+6AgSBBcmUgeW91IHRoZSBzcG91c2Ugb3Igc3Vydml2aW5nIHNwb3VzZS4uLnNlcnZpY2UtY29ubmVjdGVkIGRpc2FiaWxpdHkgYnkgYSBWQSByZWdpb25hbCDugIBiZW5lZml07oCBIG9mZmljZSwgb3IgVGhlIHN1cnZpdmluZyBzcG91c2Ugb3IiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wNi0xNCJ9LHsidGl0bGUiOiJWZXRlcmFucyBIZWFsdGgg7oCAQmVuZWZpdHPugIEgSGFuZGJvb2sgLSBIZWFsdGgg7oCAQmVuZWZpdHPugIEiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvaGVhbHRoYmVuZWZpdHMvdmhiaC8iLCJzbmlwcGV0IjoiQXBwbHkgZm9yIGFuZCBtYW5hZ2UgdGhlIFZBIO6AgGJlbmVmaXRz7oCBIGFuZCBzZXJ2aWNlcyB5b3XigJl2ZSBlYXJuZWQgYXMgYSBWZXRlcmFuLi4uZXhwYW5kIGEgbWFpbiBtZW51IG9wdGlvbiAoSGVhbHRoLCDugIBCZW5lZml0c+6AgSwgZXRjKS4gMy4gVG8gZW50ZXIgYW5kIGFjdGl2YXRlIHRoZS4uLmFuZCBDbGluaWNzIFZldCBDZW50ZXJzIFJlZ2lvbmFsIO6AgEJlbmVmaXRz7oCBIE9mZmljZXMgUmVnaW9uYWwgTG9hbiBDZW50ZXJzIENlbWV0ZXJ5IiwicHVibGljYXRpb25fZGF0ZSI6bnVsbH0seyJ0aXRsZSI6IkZlZGVyYWwg7oCAQmVuZWZpdHPugIEgZm9yIFZldGVyYW5zLCBEZXBlbmRlbnRzIGFuZCBTdXJ2aXZvcnMgLSBPZmZpY2Ugb2YgUHVibGljIGFuZCBJbnRlcmdvdmVybm1lbnRhbCBBZmZhaXJzIiwidXJsIjoiaHR0cHM6Ly93d3cudmEuZ292L29wYS9wdWJsaWNhdGlvbnMvYmVuZWZpdHNfYm9vay5hc3AiLCJzbmlwcGV0IjoiQXBwbHkgZm9yIGFuZCBtYW5hZ2UgdGhlIFZBIO6AgGJlbmVmaXRz7oCBIGFuZCBzZXJ2aWNlcyB5b3XigJl2ZSBlYXJuZWQgYXMgYSBWZXRlcmFuLi4uZXhwYW5kIGEgbWFpbiBtZW51IG9wdGlvbiAoSGVhbHRoLCDugIBCZW5lZml0c+6AgSwgZXRjKS4gMy4gVG8gZW50ZXIgYW5kIGFjdGl2YXRlIHRoZS4uLmFuZCBDbGluaWNzIFZldCBDZW50ZXJzIFJlZ2lvbmFsIO6AgEJlbmVmaXRz7oCBIE9mZmljZXMgUmVnaW9uYWwgTG9hbiBDZW50ZXJzIENlbWV0ZXJ5IiwicHVibGljYXRpb25fZGF0ZSI6bnVsbH0seyJ0aXRsZSI6IkNvbXBlbnNhdGlvbiAtIFZBL0RvRCBlQmVuZWZpdHMiLCJ1cmwiOiJodHRwczovL3d3dy5lYmVuZWZpdHMudmEuZ292L2ViZW5lZml0cy9sZWFybi9jb21wZW5zYXRpb24iLCJzbmlwcGV0IjoiLi4uIFlvdSBtYXkgYmUgZWxpZ2libGUgZm9yIG1vbnRobHkg7oCAYmVuZWZpdHPugIEgbm8gbWF0dGVyIHdoZW4gb3Igd2hlcmUgeW91IHNlcnZlZC4uLnNlcnZpY2UuIExlYXJuIE1vcmUgQWJvdXQgQ29tcGVuc2F0aW9uIO6AgEJlbmVmaXRz7oCBIFJlYWQgYW4gb3ZlcnZpZXcgb2YgZGlzYWJpbGl0eSBjb21wZW5zYXRpb24iLCJwdWJsaWNhdGlvbl9kYXRlIjpudWxsfV19LCJ0ZXh0X2Jlc3RfYmV0cyI6W3siaWQiOjE0MTk0MiwidGl0bGUiOiJWQSBIb21lIFBhZ2UiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvIiwiZGVzY3JpcHRpb24iOiJFeHBsb3JlLCBhY2Nlc3MsIGFuZCBtYW5hZ2UgeW91ciBWQSDugIBiZW5lZml0c+6AgSBhbmQgaGVhbHRoIGNhcmUuIn0seyJpZCI6MTM5OTY3LCJ0aXRsZSI6IkNIQU1QVkEg7oCAQmVuZWZpdHPugIEiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvaGVhbHRoLWNhcmUvZmFtaWx5LWNhcmVnaXZlci1iZW5lZml0cy9jaGFtcHZhLyIsImRlc2NyaXB0aW9uIjoiQ0hBTVBWQSDugIBiZW5lZml0c+6AgSBjb3ZlciB0aGUgY29zdCBvZiBoZWFsdGggY2FyZSBmb3IgdGhlIHNwb3VzZSwgc3Vydml2aW5nIHNwb3VzZSwgb3IgY2hpbGQgb2YgYSBWZXRlcmFuIHdobyBoYXMgZGlzYWJpbGl0aWVzIG9yIHdobyBpcyBkZWNlYXNlZC4ifV0sImdyYXBoaWNfYmVzdF9iZXRzIjpbXSwiaGVhbHRoX3RvcGljcyI6W10sImpvYl9vcGVuaW5ncyI6W10sInJlY2VudF90d2VldHMiOlt7InRleHQiOiJTaG9ydC1zdGF5IGtuZWUgc3VyZ2VyeSBoYXMgbG9uZy10ZXJtIO6AgGJlbmVmaXTugIEgZm9yIFZldGVyYW4gaHR0cHM6Ly90LmNvL3pNNXVYaXFKWjEgdmlhICNWQW50YWdlUG9pbnQiLCJ1cmwiOiJodHRwczovL3R3aXR0ZXIuY29tL0RlcHRWZXRBZmZhaXJzL3N0YXR1cy8xMjA3MzIyMTU0NzEyMzUwNzIwIiwibmFtZSI6IlZldGVyYW5zIEFmZmFpcnMiLCJzY3JlZW5fbmFtZSI6IkRlcHRWZXRBZmZhaXJzIiwicHJvZmlsZV9pbWFnZV91cmwiOiJodHRwczovL3Bicy50d2ltZy5jb20vcHJvZmlsZV9pbWFnZXMvMzQ0NTEzMjYxNTY1OTg0NDU1L2E5ZmNjZTdmZWI5NDdiMmVjNDk4NDkxYzZjNmQ2OTg1X25vcm1hbC5wbmciLCJjcmVhdGVkX2F0IjoiMjAxOS0xMi0xOFQxNTozMDowNyswMDowMCJ9XSwiZmVkZXJhbF9yZWdpc3Rlcl9kb2N1bWVudHMiOltdLCJyZWxhdGVkX3NlYXJjaF90ZXJtcyI6W119 http_version: recorded_at: Fri, 20 Dec 2019 04:59:46 GMT -- request: - method: get - uri: https://api.gsa.gov/technology/searchgov/v2/results/i14y?access_key=TESTKEY&affiliate=va&limit=10&offset=0&query=benefits - body: - encoding: US-ASCII - string: '' - headers: - Accept: - - application/json - Content-Type: - - application/json - User-Agent: - - Vets.gov Agent - Accept-Encoding: - - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 - response: - status: - code: 200 - message: OK - headers: - Access-Control-Allow-Origin: - - "*" - Cache-Control: - - max-age=0, private, must-revalidate - Content-Type: - - application/json; charset=utf-8 - Date: - - Fri, 20 Dec 2019 04:59:46 GMT - Etag: - - W/"e42883851e20d6878846d7272e35f530" - Server: - - Apache - Status: - - 200 OK - Strict-Transport-Security: - - max-age=31536000; includeSubdomains; preload - Via: - - 1.1 proxy3.us-east-1.prod.infr.search.usa.gov:8443 - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-Request-Id: - - 0fa51ee5-8a24-4244-9f03-ea94bbf368be - X-Xss-Protection: - - 1; mode=block - Content-Length: - - '5406' - Connection: - - keep-alive - body: - encoding: ASCII-8BIT - string: !binary |- - eyJxdWVyeSI6ImJlbmVmaXRzIiwid2ViIjp7InRvdGFsIjo2NTAxMywibmV4dF9vZmZzZXQiOjEwLCJzcGVsbGluZ19jb3JyZWN0aW9uIjpudWxsLCJyZXN1bHRzIjpbeyJ0aXRsZSI6IlZldGVyYW5zIO6AgEJlbmVmaXRz7oCBIEFkbWluaXN0cmF0aW9uIEhvbWUiLCJ1cmwiOiJodHRwczovL2JlbmVmaXRzLnZhLmdvdi9iZW5lZml0cy8iLCJzbmlwcGV0IjoiVmV0ZXJhbnMg7oCAQmVuZWZpdHPugIEgQWRtaW5pc3RyYXRpb24gcHJvdmlkZXMgZmluYW5jaWFsIGFuZCBvdGhlciBmb3JtcyBvZiBhc3Npc3RhbmNlLi4uZGVwZW5kZW50cy4gVGhpcyBwYWdlIHByb3ZpZGVzIGxpbmtzIHRvIO6AgGJlbmVmaXTugIEgaW5mb3JtYXRpb24gYW5kIHNlcnZpY2VzLi4uLmV4cGFuZCBhIG1haW4gbWVudSBvcHRpb24gKEhlYWx0aCwg7oCAQmVuZWZpdHPugIEsIGV0YykuIDMuIFRvIGVudGVyIGFuZCBhY3RpdmF0ZSB0aGUuLi5EYXRlcyBGdWxseSBEZXZlbG9wZWQgQ2xhaW1zIEFwcGx5IO6AgEJlbmVmaXTugIEgUmF0ZXMgQWRkIGEgRGVwZW5kZW50IEVkdWNhdGlvbiAmIiwicHVibGljYXRpb25fZGF0ZSI6bnVsbH0seyJ0aXRsZSI6Ik1hbmFnZSBZb3VyIENvbXBlbnNhdGlvbiDugIBCZW5lZml0c+6AgSAtIFZBL0RvRCBlQmVuZWZpdHMiLCJ1cmwiOiJodHRwczovL3d3dy5lYmVuZWZpdHMudmEuZ292L2ViZW5lZml0cy9tYW5hZ2UvY29tcGVuc2F0aW9uIiwic25pcHBldCI6Ii4uLnN0YXJ0cyBoZXJlLiBNYW5hZ2UgWW91ciBDb21wZW5zYXRpb24g7oCAQmVuZWZpdHPugIEgQ29tcGVuc2F0aW9uIENsYWltIFN0YXR1cyBDaGVjayB0aGUuLi5pbmZvcm1hdGlvbiBmb3IgeW91ciBWQSBjb21wZW5zYXRpb24g7oCAYmVuZWZpdHPugIEuIG15UGF5IERGQVMgbXlQYXkgc2luZ2xlIHNpZ24gb24gZnJvbSIsInB1YmxpY2F0aW9uX2RhdGUiOm51bGx9LHsidGl0bGUiOiJWQSDugIBiZW5lZml0c+6AgSBmb3Igc3BvdXNlcywgZGVwZW5kZW50cywgc3Vydml2b3JzLCBhbmQgZmFtaWx5IGNhcmVnaXZlcnMgfCBWZXRlcmFucyBBZmZhaXJzIiwidXJsIjoiaHR0cHM6Ly93d3cudmEuZ292L2ZhbWlseS1tZW1iZXItYmVuZWZpdHMvIiwic25pcHBldCI6IkxlYXJuIGFib3V0IFZBIO6AgGJlbmVmaXRz7oCBIGZvciBzcG91c2VzLCBkZXBlbmRlbnRzLCBzdXJ2aXZvcnMsIGFuZCBmYW1pbHkgY2FyZWdpdmVycy4uLlZBIO6AgGJlbmVmaXRz7oCBIGZvciBzcG91c2VzLCBkZXBlbmRlbnRzLCBzdXJ2aXZvcnMsIGFuZCBmYW1pbHkgY2FyZWdpdmVycyBBcyB0aGUuLi5tZW1iZXIsIHlvdSBtYXkgcXVhbGlmeSBmb3IgY2VydGFpbiDugIBiZW5lZml0c+6AgSwgbGlrZSBoZWFsdGggY2FyZSwgbGlmZSBpbnN1cmFuY2UiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wOS0yMyJ9LHsidGl0bGUiOiJEb3dubG9hZCBWQSDugIBiZW5lZml07oCBIGxldHRlcnMgfCBWZXRlcmFucyBBZmZhaXJzIiwidXJsIjoiaHR0cHM6Ly93d3cudmEuZ292L3JlY29yZHMvZG93bmxvYWQtdmEtbGV0dGVycy8iLCJzbmlwcGV0IjoiRG93bmxvYWQgeW91ciBWQSDugIBCZW5lZml07oCBIFN1bW1hcnkgTGV0dGVyIChzb21ldGltZXMgY2FsbGVkIGEgVkEgYXdhcmQgbGV0dGVyKS4uLmxldHRlcikgYW5kIG90aGVyIO6AgGJlbmVmaXTugIEgbGV0dGVycyBhbmQgZG9jdW1lbnRzIG9ubGluZS4uLi5zZWN0aW9uIERvd25sb2FkIFZBIO6AgGJlbmVmaXTugIEgbGV0dGVycyBUbyByZWNlaXZlIHNvbWUg7oCAYmVuZWZpdHPugIEsIFZldGVyYW5zIG5lZWQgYSBsZXR0ZXIuLi5zdGF0dXMuIEFjY2VzcyBhbmQgZG93bmxvYWQgeW91ciBWQSDugIBCZW5lZml07oCBIFN1bW1hcnkgTGV0dGVyIChzb21ldGltZXMgY2FsbGVkIGEiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wOC0yNyJ9LHsidGl0bGUiOiJWQS5nb3YgSG9tZSB8IFZldGVyYW5zIEFmZmFpcnMiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvIiwic25pcHBldCI6IkFwcGx5IGZvciBhbmQgbWFuYWdlIHRoZSBWQSDugIBiZW5lZml0c+6AgSBhbmQgc2VydmljZXMgeW914oCZdmUgZWFybmVkIGFzIGEgVmV0ZXJhbi4uLkFjY2VzcyBhbmQgbWFuYWdlIHlvdXIgVkEg7oCAYmVuZWZpdHPugIEgYW5kIGhlYWx0aCBjYXJlIEhlYWx0aCBjYXJlIFJlZmlsbCBhbmQgdHJhY2suLi5FZHVjYXRpb24gQ2hlY2sgeW91ciBQb3N0LTkvMTEgR0kgQmlsbMKuIO6AgGJlbmVmaXRz7oCBIFZpZXcgeW91ciBwYXltZW50IGhpc3RvcnkgQ2hhbmdlIHlvdXIiLCJwdWJsaWNhdGlvbl9kYXRlIjpudWxsfSx7InRpdGxlIjoiVkEgQWlkIGFuZCBBdHRlbmRhbmNlIO6AgGJlbmVmaXRz7oCBIGFuZCBIb3VzZWJvdW5kIGFsbG93YW5jZSB8IFZldGVyYW5zIEFmZmFpcnMiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvcGVuc2lvbi9haWQtYXR0ZW5kYW5jZS1ob3VzZWJvdW5kLyIsInNuaXBwZXQiOiJBaWQgYW5kIEF0dGVuZGFuY2Ugb3IgSG91c2Vib3VuZCDugIBiZW5lZml0c+6AgSBmb3IgVmV0ZXJhbnMgYW5kIHN1cnZpdmluZyBzcG91c2VzLi4udGhpcyBzZWN0aW9uIFZBIEFpZCBhbmQgQXR0ZW5kYW5jZSDugIBiZW5lZml0c+6AgSBhbmQgSG91c2Vib3VuZCBhbGxvd2FuY2UgVkEgQWlkIGFuZC4uLmFuZCBBdHRlbmRhbmNlIG9yIEhvdXNlYm91bmQg7oCAYmVuZWZpdHPugIEgcHJvdmlkZSBtb250aGx5IHBheW1lbnRzIGFkZGVkIHRvIHRoZSBhbW91bnQiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wOC0wOCJ9LHsidGl0bGUiOiJDSEFNUFZBIO6AgGJlbmVmaXRz7oCBIHwgVmV0ZXJhbnMgQWZmYWlycyIsInVybCI6Imh0dHBzOi8vd3d3LnZhLmdvdi9oZWFsdGgtY2FyZS9mYW1pbHktY2FyZWdpdmVyLWJlbmVmaXRzL2NoYW1wdmEvIiwic25pcHBldCI6IkxlYXJuIGFib3V0IENIQU1QVkEg7oCAYmVuZWZpdHPugIEsIHdoaWNoIGNvdmVyIHRoZSBjb3N0IG9mIGhlYWx0aCBjYXJlIGZvciB0aGUgc3BvdXNlLi4uTW9yZSBpbiB0aGlzIHNlY3Rpb24gQ0hBTVBWQSDugIBiZW5lZml0c+6AgSBBcmUgeW91IHRoZSBzcG91c2Ugb3Igc3Vydml2aW5nIHNwb3VzZS4uLnNlcnZpY2UtY29ubmVjdGVkIGRpc2FiaWxpdHkgYnkgYSBWQSByZWdpb25hbCDugIBiZW5lZml07oCBIG9mZmljZSwgb3IgVGhlIHN1cnZpdmluZyBzcG91c2Ugb3IiLCJwdWJsaWNhdGlvbl9kYXRlIjoiMjAxOS0wNi0xNCJ9LHsidGl0bGUiOiJWZXRlcmFucyBIZWFsdGgg7oCAQmVuZWZpdHPugIEgSGFuZGJvb2sgLSBIZWFsdGgg7oCAQmVuZWZpdHPugIEiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvaGVhbHRoYmVuZWZpdHMvdmhiaC8iLCJzbmlwcGV0IjoiQXBwbHkgZm9yIGFuZCBtYW5hZ2UgdGhlIFZBIO6AgGJlbmVmaXRz7oCBIGFuZCBzZXJ2aWNlcyB5b3XigJl2ZSBlYXJuZWQgYXMgYSBWZXRlcmFuLi4uZXhwYW5kIGEgbWFpbiBtZW51IG9wdGlvbiAoSGVhbHRoLCDugIBCZW5lZml0c+6AgSwgZXRjKS4gMy4gVG8gZW50ZXIgYW5kIGFjdGl2YXRlIHRoZS4uLmFuZCBDbGluaWNzIFZldCBDZW50ZXJzIFJlZ2lvbmFsIO6AgEJlbmVmaXRz7oCBIE9mZmljZXMgUmVnaW9uYWwgTG9hbiBDZW50ZXJzIENlbWV0ZXJ5IiwicHVibGljYXRpb25fZGF0ZSI6bnVsbH0seyJ0aXRsZSI6IkZlZGVyYWwg7oCAQmVuZWZpdHPugIEgZm9yIFZldGVyYW5zLCBEZXBlbmRlbnRzIGFuZCBTdXJ2aXZvcnMgLSBPZmZpY2Ugb2YgUHVibGljIGFuZCBJbnRlcmdvdmVybm1lbnRhbCBBZmZhaXJzIiwidXJsIjoiaHR0cHM6Ly93d3cudmEuZ292L29wYS9wdWJsaWNhdGlvbnMvYmVuZWZpdHNfYm9vay5hc3AiLCJzbmlwcGV0IjoiQXBwbHkgZm9yIGFuZCBtYW5hZ2UgdGhlIFZBIO6AgGJlbmVmaXRz7oCBIGFuZCBzZXJ2aWNlcyB5b3XigJl2ZSBlYXJuZWQgYXMgYSBWZXRlcmFuLi4uZXhwYW5kIGEgbWFpbiBtZW51IG9wdGlvbiAoSGVhbHRoLCDugIBCZW5lZml0c+6AgSwgZXRjKS4gMy4gVG8gZW50ZXIgYW5kIGFjdGl2YXRlIHRoZS4uLmFuZCBDbGluaWNzIFZldCBDZW50ZXJzIFJlZ2lvbmFsIO6AgEJlbmVmaXRz7oCBIE9mZmljZXMgUmVnaW9uYWwgTG9hbiBDZW50ZXJzIENlbWV0ZXJ5IiwicHVibGljYXRpb25fZGF0ZSI6bnVsbH0seyJ0aXRsZSI6IkNvbXBlbnNhdGlvbiAtIFZBL0RvRCBlQmVuZWZpdHMiLCJ1cmwiOiJodHRwczovL3d3dy5lYmVuZWZpdHMudmEuZ292L2ViZW5lZml0cy9sZWFybi9jb21wZW5zYXRpb24iLCJzbmlwcGV0IjoiLi4uIFlvdSBtYXkgYmUgZWxpZ2libGUgZm9yIG1vbnRobHkg7oCAYmVuZWZpdHPugIEgbm8gbWF0dGVyIHdoZW4gb3Igd2hlcmUgeW91IHNlcnZlZC4uLnNlcnZpY2UuIExlYXJuIE1vcmUgQWJvdXQgQ29tcGVuc2F0aW9uIO6AgEJlbmVmaXRz7oCBIFJlYWQgYW4gb3ZlcnZpZXcgb2YgZGlzYWJpbGl0eSBjb21wZW5zYXRpb24iLCJwdWJsaWNhdGlvbl9kYXRlIjpudWxsfV19LCJ0ZXh0X2Jlc3RfYmV0cyI6W3siaWQiOjE0MTk0MiwidGl0bGUiOiJWQSBIb21lIFBhZ2UiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvIiwiZGVzY3JpcHRpb24iOiJFeHBsb3JlLCBhY2Nlc3MsIGFuZCBtYW5hZ2UgeW91ciBWQSDugIBiZW5lZml0c+6AgSBhbmQgaGVhbHRoIGNhcmUuIn0seyJpZCI6MTM5OTY3LCJ0aXRsZSI6IkNIQU1QVkEg7oCAQmVuZWZpdHPugIEiLCJ1cmwiOiJodHRwczovL3d3dy52YS5nb3YvaGVhbHRoLWNhcmUvZmFtaWx5LWNhcmVnaXZlci1iZW5lZml0cy9jaGFtcHZhLyIsImRlc2NyaXB0aW9uIjoiQ0hBTVBWQSDugIBiZW5lZml0c+6AgSBjb3ZlciB0aGUgY29zdCBvZiBoZWFsdGggY2FyZSBmb3IgdGhlIHNwb3VzZSwgc3Vydml2aW5nIHNwb3VzZSwgb3IgY2hpbGQgb2YgYSBWZXRlcmFuIHdobyBoYXMgZGlzYWJpbGl0aWVzIG9yIHdobyBpcyBkZWNlYXNlZC4ifV0sImdyYXBoaWNfYmVzdF9iZXRzIjpbXSwiaGVhbHRoX3RvcGljcyI6W10sImpvYl9vcGVuaW5ncyI6W10sInJlY2VudF90d2VldHMiOlt7InRleHQiOiJTaG9ydC1zdGF5IGtuZWUgc3VyZ2VyeSBoYXMgbG9uZy10ZXJtIO6AgGJlbmVmaXTugIEgZm9yIFZldGVyYW4gaHR0cHM6Ly90LmNvL3pNNXVYaXFKWjEgdmlhICNWQW50YWdlUG9pbnQiLCJ1cmwiOiJodHRwczovL3R3aXR0ZXIuY29tL0RlcHRWZXRBZmZhaXJzL3N0YXR1cy8xMjA3MzIyMTU0NzEyMzUwNzIwIiwibmFtZSI6IlZldGVyYW5zIEFmZmFpcnMiLCJzY3JlZW5fbmFtZSI6IkRlcHRWZXRBZmZhaXJzIiwicHJvZmlsZV9pbWFnZV91cmwiOiJodHRwczovL3Bicy50d2ltZy5jb20vcHJvZmlsZV9pbWFnZXMvMzQ0NTEzMjYxNTY1OTg0NDU1L2E5ZmNjZTdmZWI5NDdiMmVjNDk4NDkxYzZjNmQ2OTg1X25vcm1hbC5wbmciLCJjcmVhdGVkX2F0IjoiMjAxOS0xMi0xOFQxNTozMDowNyswMDowMCJ9XSwiZmVkZXJhbF9yZWdpc3Rlcl9kb2N1bWVudHMiOltdLCJyZWxhdGVkX3NlYXJjaF90ZXJtcyI6W119 - http_version: - recorded_at: Fri, 17 Sep 2024 21:44:46 GMT recorded_with: VCR 5.0.0