From 23984c0f20054eeec9805b92b7b58862c1a11891 Mon Sep 17 00:00:00 2001 From: "V. David Zvenyach" Date: Wed, 4 Mar 2026 07:39:27 -0600 Subject: [PATCH 1/7] Added protests endpoint --- tango/client.py | 124 ++++++++++ tango/models.py | 30 +++ tango/shapes/explicit_schemas.py | 53 +++++ ...stsIntegration.test_get_protest_by_case_id | 152 +++++++++++++ ...Integration.test_list_protests_with_filter | 81 +++++++ ...ustom-case_id,title,source_system,outcome] | 81 +++++++ ...st_list_protests_with_shapes[default-None] | 81 +++++++ ...er,title,source_system,outcome,filed_date] | 81 +++++++ ...dockets(docket_number,filed_date,outcome)] | 81 +++++++ ...rotestsIntegration.test_protest_pagination | 160 +++++++++++++ .../integration/test_protests_integration.py | 214 ++++++++++++++++++ uv.lock | 2 +- 12 files changed, 1139 insertions(+), 1 deletion(-) create mode 100644 tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id create mode 100644 tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter create mode 100644 tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] create mode 100644 tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] create mode 100644 tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] create mode 100644 tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] create mode 100644 tests/cassettes/TestProtestsIntegration.test_protest_pagination create mode 100644 tests/integration/test_protests_integration.py diff --git a/tango/client.py b/tango/client.py index b7ffff3..d30d592 100644 --- a/tango/client.py +++ b/tango/client.py @@ -31,6 +31,7 @@ Opportunity, Organization, PaginatedResponse, + Protest, SearchFilters, ShapeConfig, Subaward, @@ -1859,6 +1860,129 @@ def list_notices( results=results, ) + # Protest endpoints + # See https://tango.makegov.com/docs/api-reference/protests.md + # Note: Protests API does not support ordering (returns 400 if provided). + # Use shape=...,dockets(...) to request nested dockets. + def list_protests( + self, + page: int = 1, + limit: int = 25, + shape: str | None = None, + flat: bool = False, + flat_lists: bool = False, + source_system: str | None = None, + outcome: str | None = None, + case_type: str | None = None, + agency: str | None = None, + case_number: str | None = None, + solicitation_number: str | None = None, + protester: str | None = None, + filed_date_after: str | None = None, + filed_date_before: str | None = None, + decision_date_after: str | None = None, + decision_date_before: str | None = None, + search: str | None = None, + ) -> PaginatedResponse: + """ + List bid protests. + + Returns case-level protest records. Use shape=...,dockets(...) to include + nested dockets. API reference: https://tango.makegov.com/docs/api-reference/protests.md + + Args: + page: Page number + limit: Results per page (max 100) + shape: Response shape string (defaults to minimal shape) + flat: If True, flatten nested objects in shaped response + flat_lists: If True, flatten arrays using indexed keys + source_system: Filter by source system (e.g. gao) + outcome: Filter by outcome (e.g. Denied, Dismissed, Withdrawn, Sustained) + case_type: Filter by case type + agency: Filter by protested agency text + case_number: Filter by case number (e.g. b-423274) + solicitation_number: Filter by exact solicitation number + protester: Filter by protester name text + filed_date_after: Filed date on or after + filed_date_before: Filed date on or before + decision_date_after: Decision date on or after + decision_date_before: Decision date on or before + search: Full-text search over protest searchable fields + """ + params: dict[str, Any] = {"page": page, "limit": min(limit, 100)} + + if shape is None: + shape = ShapeConfig.PROTESTS_MINIMAL + if shape: + params["shape"] = shape + if flat: + params["flat"] = "true" + if flat_lists: + params["flat_lists"] = "true" + + for key, val in ( + ("source_system", source_system), + ("outcome", outcome), + ("case_type", case_type), + ("agency", agency), + ("case_number", case_number), + ("solicitation_number", solicitation_number), + ("protester", protester), + ("filed_date_after", filed_date_after), + ("filed_date_before", filed_date_before), + ("decision_date_after", decision_date_after), + ("decision_date_before", decision_date_before), + ("search", search), + ): + if val is not None: + params[key] = val + + data = self._get("/api/protests/", params) + + results = [ + self._parse_response_with_shape(item, shape, Protest, flat, flat_lists) + for item in data["results"] + ] + + return PaginatedResponse( + count=data["count"], + next=data.get("next"), + previous=data.get("previous"), + results=results, + ) + + def get_protest( + self, + case_id: str, + shape: str | None = None, + flat: bool = False, + flat_lists: bool = False, + ) -> Any: + """ + Get a single protest by case_id (RFC 4122 UUID). + + Use shape=...,dockets(...) to include nested dockets. + API reference: https://tango.makegov.com/docs/api-reference/protests.md + + Args: + case_id: Deterministic case UUID (from source_system + base_case_number) + shape: Response shape string (defaults to minimal shape) + flat: If True, flatten nested objects in shaped response + flat_lists: If True, flatten arrays using indexed keys + """ + params: dict[str, Any] = {} + if shape is None: + shape = ShapeConfig.PROTESTS_MINIMAL + if shape: + params["shape"] = shape + if flat: + params["flat"] = "true" + if flat_lists: + params["flat_lists"] = "true" + + data = self._get(f"/api/protests/{case_id}/", params) + return self._parse_response_with_shape(data, shape, Protest, flat, flat_lists) + # Grant endpoints def list_grants( self, diff --git a/tango/models.py b/tango/models.py index 291278c..fc522b4 100644 --- a/tango/models.py +++ b/tango/models.py @@ -433,6 +433,33 @@ class Notice: naics_code: str | None = None +@dataclass +class Protest: + """Schema definition for Protest (not used for instances) + + Bid protest records at /api/protests/. Case-level object identified by case_id (UUID). + See https://tango.makegov.com/docs/api-reference/protests.md. + """ + + case_id: str + case_number: str | None = None + title: str | None = None + source_system: str | None = None + outcome: str | None = None + agency: str | None = None + protester: str | None = None + solicitation_number: str | None = None + case_type: str | None = None + filed_date: datetime | None = None + posted_date: datetime | None = None + decision_date: datetime | None = None + due_date: datetime | None = None + docket_url: str | None = None + decision_url: str | None = None + digest: str | None = None + dockets: list[dict[str, Any]] | None = None + + @dataclass class AssistanceListing: """Schema definition for Assistance Listing (not used for instances)""" @@ -589,6 +616,9 @@ class ShapeConfig: # Default for list_notices() NOTICES_MINIMAL: Final = "notice_id,title,solicitation_number,posted_date" + # Default for list_protests() + PROTESTS_MINIMAL: Final = "case_id,case_number,title,source_system,outcome,filed_date" + # Default for list_grants() GRANTS_MINIMAL: Final = "grant_id,opportunity_number,title,status(*),agency_code" diff --git a/tango/shapes/explicit_schemas.py b/tango/shapes/explicit_schemas.py index 8e29d65..3325883 100644 --- a/tango/shapes/explicit_schemas.py +++ b/tango/shapes/explicit_schemas.py @@ -637,6 +637,57 @@ } +# Docket-level fields for Protest dockets expansion: dockets(docket_number, filed_date, ...) +PROTEST_DOCKET_SCHEMA: dict[str, FieldSchema] = { + "source_system": FieldSchema(name="source_system", type=str, is_optional=True, is_list=False), + "case_number": FieldSchema(name="case_number", type=str, is_optional=True, is_list=False), + "docket_number": FieldSchema(name="docket_number", type=str, is_optional=True, is_list=False), + "title": FieldSchema(name="title", type=str, is_optional=True, is_list=False), + "protester": FieldSchema(name="protester", type=str, is_optional=True, is_list=False), + "agency": FieldSchema(name="agency", type=str, is_optional=True, is_list=False), + "solicitation_number": FieldSchema( + name="solicitation_number", type=str, is_optional=True, is_list=False + ), + "case_type": FieldSchema(name="case_type", type=str, is_optional=True, is_list=False), + "outcome": FieldSchema(name="outcome", type=str, is_optional=True, is_list=False), + "filed_date": FieldSchema(name="filed_date", type=datetime, is_optional=True, is_list=False), + "posted_date": FieldSchema(name="posted_date", type=datetime, is_optional=True, is_list=False), + "decision_date": FieldSchema( + name="decision_date", type=datetime, is_optional=True, is_list=False + ), + "due_date": FieldSchema(name="due_date", type=datetime, is_optional=True, is_list=False), + "docket_url": FieldSchema(name="docket_url", type=str, is_optional=True, is_list=False), + "decision_url": FieldSchema(name="decision_url", type=str, is_optional=True, is_list=False), + "digest": FieldSchema(name="digest", type=str, is_optional=True, is_list=False), +} + +PROTEST_SCHEMA: dict[str, FieldSchema] = { + "case_id": FieldSchema(name="case_id", type=str, is_optional=False, is_list=False), + "case_number": FieldSchema(name="case_number", type=str, is_optional=True, is_list=False), + "title": FieldSchema(name="title", type=str, is_optional=True, is_list=False), + "source_system": FieldSchema(name="source_system", type=str, is_optional=True, is_list=False), + "outcome": FieldSchema(name="outcome", type=str, is_optional=True, is_list=False), + "agency": FieldSchema(name="agency", type=str, is_optional=True, is_list=False), + "protester": FieldSchema(name="protester", type=str, is_optional=True, is_list=False), + "solicitation_number": FieldSchema( + name="solicitation_number", type=str, is_optional=True, is_list=False + ), + "case_type": FieldSchema(name="case_type", type=str, is_optional=True, is_list=False), + "filed_date": FieldSchema(name="filed_date", type=datetime, is_optional=True, is_list=False), + "posted_date": FieldSchema(name="posted_date", type=datetime, is_optional=True, is_list=False), + "decision_date": FieldSchema( + name="decision_date", type=datetime, is_optional=True, is_list=False + ), + "due_date": FieldSchema(name="due_date", type=datetime, is_optional=True, is_list=False), + "docket_url": FieldSchema(name="docket_url", type=str, is_optional=True, is_list=False), + "decision_url": FieldSchema(name="decision_url", type=str, is_optional=True, is_list=False), + "digest": FieldSchema(name="digest", type=str, is_optional=True, is_list=False), + "dockets": FieldSchema( + name="dockets", type=dict, is_optional=True, is_list=True, nested_model="ProtestDocket" + ), +} + + AGENCY_SCHEMA: dict[str, FieldSchema] = { "abbreviation": FieldSchema(name="abbreviation", type=str, is_optional=True, is_list=False), "code": FieldSchema(name="code", type=str, is_optional=False, is_list=False), @@ -1105,6 +1156,8 @@ "Forecast": FORECAST_SCHEMA, "Opportunity": OPPORTUNITY_SCHEMA, "Notice": NOTICE_SCHEMA, + "Protest": PROTEST_SCHEMA, + "ProtestDocket": PROTEST_DOCKET_SCHEMA, "Agency": AGENCY_SCHEMA, "Grant": GRANT_SCHEMA, # Vehicles (Awards) diff --git a/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id b/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id new file mode 100644 index 0000000..d17fcf5 --- /dev/null +++ b/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id @@ -0,0 +1,152 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=1&limit=1&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date + response: + body: + string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=1&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"}]}' + headers: + CF-RAY: + - 9d709a9d9c5da1f7-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:04 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=e1RczGwx9pDiPSoXiTEdhZ2ik%2B2Ctbqv6RaPLqO7RJ2yh5zlzvaQgG1uEOWkbnK9CIupfv1rl0hv0HVbYkpUFyDkJjc4cT%2FG8P5SPu7OuB23UT45HDq5Y8sK"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '381' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.069s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '960' + x-ratelimit-burst-reset: + - '5' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999689' + x-ratelimit-daily-reset: + - '4817' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '960' + x-ratelimit-reset: + - '5' + status: + code: 200 + message: OK +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/af3327fd-df8c-55e3-a736-ffa4b4c6f9c0/?shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date + response: + body: + string: '{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"}' + headers: + CF-RAY: + - 9d709a9e9d51a1f7-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:04 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=eW5ZB9j%2FdigxrLpEqbZrUlKk%2BL%2FO%2F2aNooV6NR6Rut5TUOmo5Sg4xX8dULwX91Tb0tb85NyAvglrtEItTfUhb5KLQcS997pnveFYidbId2926o7MFOEMq1j5"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '198' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.339s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '959' + x-ratelimit-burst-reset: + - '4' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999688' + x-ratelimit-daily-reset: + - '4817' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '959' + x-ratelimit-reset: + - '4' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter new file mode 100644 index 0000000..11c41fd --- /dev/null +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter @@ -0,0 +1,81 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date&source_system=gao + response: + body: + string: '{"count":1071,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date&source_system=gao","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese + Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-01-23"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW + FEDITC JV, LLC ()","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, + LLC (70CDCR26R00000009)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-13"},{"case_id":"50007ecc-70ca-5b93-a23c-7782c50ed641","case_number":"b-424272","title":"CVTEK + LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' + headers: + CF-RAY: + - 9d709a992d5fa200-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:03 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=9V8fHQxPctR1RRT3Vwf3dSKsS1dVpLjSHfep0hJXUjlGb7UPyH%2BlANiNmayi11byo19OqCwmnxeLetdnXNrm0rQq%2FUJoohHg1liKQwanR9OnDLnwzm3C5Gu7"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '1141' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.109s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '963' + x-ratelimit-burst-reset: + - '5' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999692' + x-ratelimit-daily-reset: + - '4818' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '963' + x-ratelimit-reset: + - '5' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] new file mode 100644 index 0000000..c1c3fdb --- /dev/null +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] @@ -0,0 +1,81 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ctitle%2Csource_system%2Coutcome + response: + body: + string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ctitle%2Csource_system%2Coutcome","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","title":"Bellese + Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","title":"JBW + FEDITC JV, LLC ()","source_system":"gao","outcome":null},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","title":"AcmeSolv, + LLC (70CDCR26R00000009)","source_system":"gao","outcome":"Dismissed"},{"case_id":"50007ecc-70ca-5b93-a23c-7782c50ed641","title":"CVTEK + LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed"}]}' + headers: + CF-RAY: + - 9d709a977ab75122-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:03 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=UkpYbsRhNRorzfM2jOETRjbYR9%2Bt4%2FPmRQRbiKcSGYuz14RQWOVlJ0Nc%2Fjt3n2%2FXeKEYUnFkqQUTTnedH7BVE2fZkm4alsi%2B7DVj3Fd%2B1m96XQ2e1hN2qw9y"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '842' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.061s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '964' + x-ratelimit-burst-reset: + - '6' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999693' + x-ratelimit-daily-reset: + - '4818' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '964' + x-ratelimit-reset: + - '6' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] new file mode 100644 index 0000000..0f9489a --- /dev/null +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] @@ -0,0 +1,81 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date + response: + body: + string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese + Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-01-23"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW + FEDITC JV, LLC ()","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, + LLC (70CDCR26R00000009)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-13"},{"case_id":"50007ecc-70ca-5b93-a23c-7782c50ed641","case_number":"b-424272","title":"CVTEK + LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' + headers: + CF-RAY: + - 9d709a927e0583b0-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:02 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=p63kygLbDUDlM5dUtqb%2FovxPW42408qgeE85KzdIiBw8xg2tVcuIxaZpHaL0Ys0uZf4siklgwPzQbkVwSmEJE2F4GQw7V7D2CubBRIRK1QIDWTZ7o0Vlr0E9"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '1124' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.072s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '967' + x-ratelimit-burst-reset: + - '6' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999696' + x-ratelimit-daily-reset: + - '4819' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '967' + x-ratelimit-reset: + - '6' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] new file mode 100644 index 0000000..3433d3a --- /dev/null +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] @@ -0,0 +1,81 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date + response: + body: + string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese + Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-01-23"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW + FEDITC JV, LLC ()","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, + LLC (70CDCR26R00000009)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-13"},{"case_id":"50007ecc-70ca-5b93-a23c-7782c50ed641","case_number":"b-424272","title":"CVTEK + LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' + headers: + CF-RAY: + - 9d709a941c39a1bf-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:02 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ykDTiZWD8U90xS0GsmStOwBR3LS5CKncILzn7juD10na7vMgp%2FqFHDN5k%2FurRTGpIPlYPYlyapNTCZf4BeWXsxCqlYPH60THTUxYAZkhnak4%2BqUvliTE8ZQd"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '1124' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.077s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '966' + x-ratelimit-burst-reset: + - '6' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999695' + x-ratelimit-daily-reset: + - '4819' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '966' + x-ratelimit-reset: + - '6' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] new file mode 100644 index 0000000..784c7fd --- /dev/null +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] @@ -0,0 +1,81 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Coutcome%2Cfiled_date%2Cdockets%28docket_number%2Cfiled_date%2Coutcome%29 + response: + body: + string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Coutcome%2Cfiled_date%2Cdockets%28docket_number%2Cfiled_date%2Coutcome%29","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","outcome":"Dismissed","filed_date":"2025-09-22","dockets":[{"docket_number":"b-423590.4","filed_date":"2025-09-22","outcome":"Dismissed"},{"docket_number":"b-423590.5","filed_date":"2025-09-22","outcome":"Dismissed"},{"docket_number":"b-423590.6","filed_date":"2026-02-13","outcome":null},{"docket_number":"b-423590.3","filed_date":"2025-06-09","outcome":"Dismissed"},{"docket_number":"b-423590.2","filed_date":"2025-06-03","outcome":"Dismissed"},{"docket_number":"b-423590.1","filed_date":"2025-06-02","outcome":"Dismissed"}]},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese + Technologies, LLC (RFQ-250189J)","outcome":"Dismissed","filed_date":"2026-01-23","dockets":[{"docket_number":"b-423664.6","filed_date":"2026-01-23","outcome":"Dismissed"},{"docket_number":"b-423664.3","filed_date":"2025-07-17","outcome":"Dismissed"},{"docket_number":"b-423664.2","filed_date":"2025-06-23","outcome":"Dismissed"},{"docket_number":"b-423664.5","filed_date":"2025-08-22","outcome":"Dismissed"},{"docket_number":"b-423664.4","filed_date":"2025-08-04","outcome":"Dismissed"},{"docket_number":"b-423664.1","filed_date":"2025-06-23","outcome":"Dismissed"}]},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW + FEDITC JV, LLC ()","outcome":null,"filed_date":"2026-03-03","dockets":[{"docket_number":"b-424191.3","filed_date":"2026-03-03","outcome":null},{"docket_number":"b-424191.2","filed_date":"2026-01-20","outcome":"Dismissed"},{"docket_number":"b-424191.1","filed_date":"2026-01-05","outcome":"Dismissed"}]},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, + LLC (70CDCR26R00000009)","outcome":"Dismissed","filed_date":"2026-02-13","dockets":[{"docket_number":"b-424266.1","filed_date":"2026-02-13","outcome":"Dismissed"}]},{"case_id":"50007ecc-70ca-5b93-a23c-7782c50ed641","case_number":"b-424272","title":"CVTEK + LLC (70B04C25R00000154)","outcome":"Dismissed","filed_date":"2026-02-17","dockets":[{"docket_number":"b-424272.1","filed_date":"2026-02-17","outcome":"Dismissed"}]}]}' + headers: + CF-RAY: + - 9d709a95ee2bacd5-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:03 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=4rWFmiDf6DERZE1iWVmPpi9p3GG1BZZw3j9RVza%2FcgHWQXQkwrdrmsTmFtVUe5pDhQQ8X%2FXigSb0j4k9eHW9gtrMdklMcgLhjlFXiBtHjrpVSZmyhliWq0M2"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '2439' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.077s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '965' + x-ratelimit-burst-reset: + - '6' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999694' + x-ratelimit-daily-reset: + - '4818' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '965' + x-ratelimit-reset: + - '6' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/TestProtestsIntegration.test_protest_pagination b/tests/cassettes/TestProtestsIntegration.test_protest_pagination new file mode 100644 index 0000000..20d3958 --- /dev/null +++ b/tests/cassettes/TestProtestsIntegration.test_protest_pagination @@ -0,0 +1,160 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date + response: + body: + string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese + Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-01-23"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW + FEDITC JV, LLC ()","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, + LLC (70CDCR26R00000009)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-13"},{"case_id":"50007ecc-70ca-5b93-a23c-7782c50ed641","case_number":"b-424272","title":"CVTEK + LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' + headers: + CF-RAY: + - 9d709a9b0ba44c9e-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:03 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=wLnwY5U%2BMBH1gHypHCAS7PgPiWQ4yBJz8LmWA%2BzAig1WFJW0G2Sq0QJZIJE223ZPVcTRXjekv5HvIHbyhyGBDntDrx2I0CZ083yW2h5UR76s3vUdS9byGHoT"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '1124' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.063s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '962' + x-ratelimit-burst-reset: + - '5' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999691' + x-ratelimit-daily-reset: + - '4818' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '962' + x-ratelimit-reset: + - '5' + status: + code: 200 + message: OK +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/protests/?page=2&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date + response: + body: + string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=3&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":"https://tango.makegov.com/api/protests/?limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","results":[{"case_id":"d73c4a61-6252-5e60-b1c6-7f807c96d247","case_number":"b-424295","title":"BDR + Solutions, LLC (HT001126RE011)","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"80024894-78f8-5f79-b6e7-86698022c634","case_number":"b-424296","title":"CGI + Federal, Inc. (36C10B26Q0168)","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"4c12fb7a-f78a-54ac-9330-f41282b92adc","case_number":"b-424297","title":"Dispel + LLC (FA489026QCN19)","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"e7255a8b-2ec2-5179-85cd-f50c532976aa","case_number":"b-424298","title":"Copper + Mountain Services, LLC (140P8525R0002)","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"f85ca4a2-f55c-519c-be04-9796b7756c9a","case_number":"b-423165","title":"Mission + Analytics, LLC (36C26224Q1803)","source_system":"gao","outcome":null,"filed_date":"2026-03-02"}]}' + headers: + CF-RAY: + - 9d709a9c0c704c9e-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 11:40:03 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=T5V3ChuUKQYYBLSKLJzAkwxtACBThWK0tz%2FXKRkLiUEUYDLMTQbKZbLC5z6djmR5Z%2BMyW68eFkLZ8A29CR4U5I14P49J8jP1ZlMHx31CvDgl3h%2Fpm142o2YS"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '1228' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.072s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '961' + x-ratelimit-burst-reset: + - '5' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999690' + x-ratelimit-daily-reset: + - '4817' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '961' + x-ratelimit-reset: + - '5' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/integration/test_protests_integration.py b/tests/integration/test_protests_integration.py new file mode 100644 index 0000000..1c1eb69 --- /dev/null +++ b/tests/integration/test_protests_integration.py @@ -0,0 +1,214 @@ +"""Integration tests for protest endpoints + +Pytest Markers: + @pytest.mark.integration: Marks tests as integration tests that may hit external APIs + @pytest.mark.vcr(): Enables VCR recording/playback for HTTP interactions + @pytest.mark.live: Forces tests to use live API (skip cassettes) - not used by default + @pytest.mark.cached: Forces tests to only run with cached responses - not used by default + @pytest.mark.slow: Marks tests that are slow to execute - not used by default + +Usage: + # Run all integration tests (uses cassettes if available) + pytest tests/integration/ + + # Run only protest integration tests + pytest tests/integration/test_protests_integration.py + + # Run with live API (requires TANGO_API_KEY environment variable) + TANGO_USE_LIVE_API=true TANGO_API_KEY=xxx pytest tests/integration/ + + # Refresh cassettes (re-record all interactions) + TANGO_REFRESH_CASSETTES=true TANGO_API_KEY=xxx pytest tests/integration/ + +API reference: https://tango.makegov.com/docs/api-reference/protests.md +""" + +from datetime import datetime + +import pytest + +from tango import ShapeConfig +from tests.integration.conftest import handle_api_exceptions +from tests.integration.validation import ( + validate_no_parsing_errors, + validate_pagination, +) + + +def validate_protest_fields(protest, minimal: bool = True) -> None: + """Validate protest object has required fields and correct types + + Args: + protest: A Protest object to validate + minimal: If True, only validate minimal fields. If False, validate comprehensive fields. + + Raises: + AssertionError: If validation fails + """ + is_dict = isinstance(protest, dict) + case_id = protest.get("case_id") if is_dict else getattr(protest, "case_id", None) + assert case_id is not None, "Protest 'case_id' must not be None" + assert isinstance(case_id, str), f"Protest 'case_id' must be string, got {type(case_id)}" + + # Optional fields - type check when present + case_number = protest.get("case_number") if is_dict else getattr(protest, "case_number", None) + if case_number is not None: + assert isinstance(case_number, str), ( + f"Protest 'case_number' must be string, got {type(case_number)}" + ) + + title = protest.get("title") if is_dict else getattr(protest, "title", None) + if title is not None: + assert isinstance(title, str), f"Protest 'title' must be string, got {type(title)}" + + outcome = protest.get("outcome") if is_dict else getattr(protest, "outcome", None) + if outcome is not None: + assert isinstance(outcome, str), f"Protest 'outcome' must be string, got {type(outcome)}" + + source_system = ( + protest.get("source_system") if is_dict else getattr(protest, "source_system", None) + ) + if source_system is not None: + assert isinstance(source_system, str), ( + f"Protest 'source_system' must be string, got {type(source_system)}" + ) + + filed_date = protest.get("filed_date") if is_dict else getattr(protest, "filed_date", None) + if filed_date is not None: + assert isinstance(filed_date, datetime), ( + f"Protest 'filed_date' must be datetime, got {type(filed_date)}" + ) + + decision_date = ( + protest.get("decision_date") if is_dict else getattr(protest, "decision_date", None) + ) + if decision_date is not None: + assert isinstance(decision_date, datetime), ( + f"Protest 'decision_date' must be datetime, got {type(decision_date)}" + ) + + posted_date = protest.get("posted_date") if is_dict else getattr(protest, "posted_date", None) + if posted_date is not None: + assert isinstance(posted_date, datetime), ( + f"Protest 'posted_date' must be datetime, got {type(posted_date)}" + ) + + dockets = protest.get("dockets") if is_dict else getattr(protest, "dockets", None) + if dockets is not None: + assert isinstance(dockets, list), f"Protest 'dockets' must be list, got {type(dockets)}" + + +@pytest.mark.vcr() +@pytest.mark.integration +class TestProtestsIntegration: + """Integration tests for protest endpoints using production data""" + + @handle_api_exceptions("protests") + @pytest.mark.parametrize( + "shape_name,shape_value", + [ + ("default", None), + ("minimal", ShapeConfig.PROTESTS_MINIMAL), + ( + "with_dockets", + "case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)", + ), + ("custom", "case_id,title,source_system,outcome"), + ], + ) + def test_list_protests_with_shapes(self, tango_client, shape_name, shape_value): + """Test listing protests with different shapes + + Validates: + - Protests endpoint exists and returns data + - Paginated response structure + - Protest parsing with various shapes + - Required field case_id is present regardless of shape + """ + kwargs: dict = {"limit": 5} + if shape_value is not None: + kwargs["shape"] = shape_value + + response = tango_client.list_protests(**kwargs) + + validate_pagination(response) + + if response.results: + protest = response.results[0] + validate_protest_fields(protest, minimal=(shape_name in ("default", "minimal"))) + validate_no_parsing_errors(protest) + + is_dict = isinstance(protest, dict) + case_id = protest.get("case_id") if is_dict else getattr(protest, "case_id", None) + assert case_id is not None, "Protest case_id should be present" + + @handle_api_exceptions("protests") + def test_list_protests_with_filter(self, tango_client): + """Test listing protests with source_system filter (e.g. gao)""" + response = tango_client.list_protests(limit=5, source_system="gao") + + validate_pagination(response) + + if response.results: + for protest in response.results: + validate_protest_fields(protest, minimal=True) + validate_no_parsing_errors(protest) + source_system = ( + protest.get("source_system") + if isinstance(protest, dict) + else getattr(protest, "source_system", None) + ) + if source_system is not None: + assert source_system.lower() == "gao", ( + f"Expected source_system gao, got {source_system}" + ) + + @handle_api_exceptions("protests") + def test_protest_pagination(self, tango_client): + """Test protest pagination + + Validates: + - Pagination works correctly + - Multiple pages can be retrieved + """ + page1 = tango_client.list_protests(limit=5, page=1) + validate_pagination(page1) + + page2 = tango_client.list_protests(limit=5, page=2) + validate_pagination(page2) + + if page1.results and page2.results: + is_dict1 = isinstance(page1.results[0], dict) + is_dict2 = isinstance(page2.results[0], dict) + case_id1 = ( + page1.results[0].get("case_id") + if is_dict1 + else getattr(page1.results[0], "case_id", None) + ) + case_id2 = ( + page2.results[0].get("case_id") + if is_dict2 + else getattr(page2.results[0], "case_id", None) + ) + assert case_id1 != case_id2, "Different pages should have different results" + + @handle_api_exceptions("protests") + def test_get_protest_by_case_id(self, tango_client): + """Test get_protest detail by case_id (UUID from list response)""" + response = tango_client.list_protests(limit=1) + validate_pagination(response) + + if not response.results: + pytest.skip("No protests returned from list to fetch by case_id") + + protest = response.results[0] + is_dict = isinstance(protest, dict) + case_id = protest.get("case_id") if is_dict else getattr(protest, "case_id", None) + assert case_id is not None + + detail = tango_client.get_protest(case_id) + validate_protest_fields(detail, minimal=False) + validate_no_parsing_errors(detail) + + detail_case_id = detail.get("case_id") if isinstance(detail, dict) else detail.case_id + assert detail_case_id == case_id, "Detail case_id should match requested case_id" diff --git a/uv.lock b/uv.lock index e140111..eb148f1 100644 --- a/uv.lock +++ b/uv.lock @@ -1831,7 +1831,7 @@ wheels = [ [[package]] name = "tango-python" -version = "0.4.0" +version = "0.4.1" source = { editable = "." } dependencies = [ { name = "httpx" }, From 7d279578cc8d9e71a25b4195e0120affd212a424 Mon Sep 17 00:00:00 2001 From: "V. David Zvenyach" Date: Wed, 4 Mar 2026 07:42:16 -0600 Subject: [PATCH 2/7] Add changelog for v0.4.2 Co-Authored-By: Claude Opus 4.6 --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f4a3731..a11f0fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.4.2] - 2026-03-04 + +### Added +- Protests endpoints: `list_protests`, `get_protest` with shaping and filter params (`source_system`, `outcome`, `case_type`, `agency`, `case_number`, `solicitation_number`, `protester`, `filed_date_after`, `filed_date_before`, `decision_date_after`, `decision_date_before`, `search`). + ## [0.4.1] - 2026-03-03 ### Added From 60d9fb2727974d020fafcb30cb899e8617f7f43d Mon Sep 17 00:00:00 2001 From: "V. David Zvenyach" Date: Wed, 4 Mar 2026 07:54:35 -0600 Subject: [PATCH 3/7] lint + GA tweak --- .github/workflows/lint.yml | 11 +- CHANGELOG.md | 3 + docs/quick_start.ipynb | 117 ++++++++++-------- scripts/pr_review.py | 29 ++++- tests/integration/conftest.py | 40 +++--- .../integration/test_entities_integration.py | 1 - tests/integration/test_grants_integration.py | 1 - .../test_vehicles_idvs_integration.py | 4 +- 8 files changed, 123 insertions(+), 83 deletions(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 43dbf9c..c48cbfa 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -1,10 +1,13 @@ name: Linting +# Disabled: requires checkout of private makegov/tango repo for filter_shape conformance check. +# Re-enable when that repo is accessible (e.g. add TANGO_API_REPO_ACCESS_TOKEN secret). on: - push: - branches: [ main, develop ] - pull_request: - branches: [ main, develop ] + workflow_dispatch: + # push: + # branches: [ main, develop ] + # pull_request: + # branches: [ main, develop ] jobs: lint: diff --git a/CHANGELOG.md b/CHANGELOG.md index a11f0fe..4d33326 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Protests endpoints: `list_protests`, `get_protest` with shaping and filter params (`source_system`, `outcome`, `case_type`, `agency`, `case_number`, `solicitation_number`, `protester`, `filed_date_after`, `filed_date_before`, `decision_date_after`, `decision_date_before`, `search`). +### Changed +- Lint CI workflow disabled for push/PR (runs only on manual trigger) until the private `makegov/tango` repo is accessible to the workflow. + ## [0.4.1] - 2026-03-03 ### Added diff --git a/docs/quick_start.ipynb b/docs/quick_start.ipynb index d6d37f9..843dfbc 100644 --- a/docs/quick_start.ipynb +++ b/docs/quick_start.ipynb @@ -171,11 +171,15 @@ "print(f\"Found {contracts.count:,} total contracts\\n\")\n", "\n", "for contract in contracts.results:\n", - " amount = f\"${contract['total_contract_value']:,.2f}\" if contract.get('total_contract_value') else \"N/A\"\n", - " date_str = contract.get('award_date', 'N/A')\n", - " recipient = contract.get('recipient', {}).get('display_name', 'Unknown')\n", - " description = contract.get('description', 'No description')[:100]\n", - " \n", + " amount = (\n", + " f\"${contract['total_contract_value']:,.2f}\"\n", + " if contract.get(\"total_contract_value\")\n", + " else \"N/A\"\n", + " )\n", + " date_str = contract.get(\"award_date\", \"N/A\")\n", + " recipient = contract.get(\"recipient\", {}).get(\"display_name\", \"Unknown\")\n", + " description = contract.get(\"description\", \"No description\")[:100]\n", + "\n", " print(f\"{recipient}\")\n", " print(f\" Amount: {amount}\")\n", " print(f\" Date: {date_str}\")\n", @@ -223,8 +227,12 @@ "\n", "print(f\"Contracts from last 30 days: {recent_contracts.count:,}\")\n", "for contract in recent_contracts.results:\n", - " amount = f\"${contract['total_contract_value']:,.2f}\" if contract.get('total_contract_value') else \"N/A\"\n", - " recipient = contract.get('recipient', {}).get('display_name', 'Unknown')\n", + " amount = (\n", + " f\"${contract['total_contract_value']:,.2f}\"\n", + " if contract.get(\"total_contract_value\")\n", + " else \"N/A\"\n", + " )\n", + " recipient = contract.get(\"recipient\", {}).get(\"display_name\", \"Unknown\")\n", " print(f\"- {recipient}: {amount}\")" ] }, @@ -255,8 +263,12 @@ "\n", "print(f\"IT services contracts (NAICS 541511): {it_contracts.count:,}\")\n", "for contract in it_contracts.results:\n", - " amount = f\"${contract['total_contract_value']:,.2f}\" if contract.get('total_contract_value') else \"N/A\"\n", - " recipient = contract.get('recipient', {}).get('display_name', 'Unknown')\n", + " amount = (\n", + " f\"${contract['total_contract_value']:,.2f}\"\n", + " if contract.get(\"total_contract_value\")\n", + " else \"N/A\"\n", + " )\n", + " recipient = contract.get(\"recipient\", {}).get(\"display_name\", \"Unknown\")\n", " print(f\"- {recipient}: {amount}\")" ] }, @@ -283,8 +295,12 @@ "gsa_contracts = client.list_contracts(awarding_agency=\"GSA\", limit=5)\n", "print(f\"GSA contracts: {gsa_contracts.count:,}\")\n", "for contract in gsa_contracts.results:\n", - " amount = f\"${contract['total_contract_value']:,.2f}\" if contract.get('total_contract_value') else \"N/A\"\n", - " description = contract.get('description', 'No description')[:80]\n", + " amount = (\n", + " f\"${contract['total_contract_value']:,.2f}\"\n", + " if contract.get(\"total_contract_value\")\n", + " else \"N/A\"\n", + " )\n", + " description = contract.get(\"description\", \"No description\")[:80]\n", " print(f\"- {description}... ({amount})\")" ] }, @@ -345,15 +361,15 @@ "print(f\"Found {results.count:,} contracts matching criteria\\n\")\n", "\n", "for contract in results.results:\n", - " recipient = contract.get('recipient', {}).get('display_name', 'Unknown')\n", - " amount = contract.get('total_contract_value')\n", - " date_str = contract.get('award_date', 'N/A')\n", - " \n", + " recipient = contract.get(\"recipient\", {}).get(\"display_name\", \"Unknown\")\n", + " amount = contract.get(\"total_contract_value\")\n", + " date_str = contract.get(\"award_date\", \"N/A\")\n", + "\n", " print(f\"{recipient}\")\n", " print(f\" Amount: ${amount:,.2f}\" if amount else \" Amount: N/A\")\n", " print(f\" Date: {date_str}\")\n", - " if contract.get('naics'):\n", - " naics = contract['naics']\n", + " if contract.get(\"naics\"):\n", + " naics = contract[\"naics\"]\n", " print(f\" NAICS: {naics.get('code')} - {naics.get('description', '')}\")\n", " print()" ] @@ -386,14 +402,13 @@ "source": [ "# Use a custom shape to get only specific fields\n", "contracts_shaped = client.list_contracts(\n", - " limit=3,\n", - " shape=\"key,piid,recipient(display_name),total_contract_value\"\n", + " limit=3, shape=\"key,piid,recipient(display_name),total_contract_value\"\n", ")\n", "\n", "print(\"Custom shape (key, recipient, amount):\")\n", "for contract in contracts_shaped.results:\n", - " recipient = contract.get('recipient', {}).get('display_name', 'Unknown')\n", - " amount = contract.get('total_contract_value')\n", + " recipient = contract.get(\"recipient\", {}).get(\"display_name\", \"Unknown\")\n", + " amount = contract.get(\"total_contract_value\")\n", " print(f\" {recipient}: ${amount:,.2f}\" if amount else f\" {recipient}: N/A\")" ] }, @@ -423,13 +438,13 @@ "print(\"Dictionary and attribute access both work:\")\n", "for contract in contracts.results:\n", " # Dictionary access (recommended) - works for all fields\n", - " recipient_dict = contract.get('recipient', {}).get('display_name', 'Unknown')\n", - " piid_dict = contract.get('piid', 'N/A')\n", - " \n", + " recipient_dict = contract.get(\"recipient\", {}).get(\"display_name\", \"Unknown\")\n", + " piid_dict = contract.get(\"piid\", \"N/A\")\n", + "\n", " # Attribute access also works for top-level fields\n", " # Note: Nested objects are dicts, so use dictionary access for nested fields\n", - " piid_attr = contract.piid if hasattr(contract, 'piid') else 'N/A'\n", - " \n", + " piid_attr = contract.piid if hasattr(contract, \"piid\") else \"N/A\"\n", + "\n", " print(f\" PIID - Dictionary: {piid_dict}, Attribute: {piid_attr}\")\n", " print(f\" Recipient (dict access): {recipient_dict}\")\n", " print()" @@ -463,8 +478,8 @@ "\n", "print(\"Custom shape (only specific fields):\")\n", "for contract in contracts_custom.results:\n", - " piid = contract.get('piid', 'N/A')\n", - " recipient = contract.get('recipient', {}).get('display_name', 'Unknown')\n", + " piid = contract.get(\"piid\", \"N/A\")\n", + " recipient = contract.get(\"recipient\", {}).get(\"display_name\", \"Unknown\")\n", " print(f\" {piid}: {recipient}\")\n", " print(f\" Date: {contract.get('award_date', 'N/A')}\")" ] @@ -522,15 +537,15 @@ "print(f\"Found {entities.count:,} entities\\n\")\n", "\n", "for entity in entities.results:\n", - " display_name = entity.get('display_name', 'Unknown')\n", + " display_name = entity.get(\"display_name\", \"Unknown\")\n", " print(f\"{display_name}\")\n", - " if entity.get('uei'):\n", + " if entity.get(\"uei\"):\n", " print(f\" UEI: {entity['uei']}\")\n", - " if entity.get('physical_address'):\n", - " addr = entity['physical_address']\n", - " if addr.get('city') and addr.get('state_code'):\n", + " if entity.get(\"physical_address\"):\n", + " addr = entity[\"physical_address\"]\n", + " if addr.get(\"city\") and addr.get(\"state_code\"):\n", " print(f\" Location: {addr['city']}, {addr['state_code']}\")\n", - " if entity.get('business_types'):\n", + " if entity.get(\"business_types\"):\n", " print(f\" Business Types: {entity['business_types'][:3]}\")\n", " print()" ] @@ -551,14 +566,14 @@ "source": [ "# Get specific entity by UEI or CAGE code\n", "if entities.results:\n", - " entity_key = entities.results[0].get('uei') or entities.results[0].get('cage_code')\n", + " entity_key = entities.results[0].get(\"uei\") or entities.results[0].get(\"cage_code\")\n", " if entity_key:\n", " entity = client.get_entity(entity_key)\n", - " if entity.get('legal_business_name'):\n", + " if entity.get(\"legal_business_name\"):\n", " print(f\"Legal Name: {entity['legal_business_name']}\")\n", - " if entity.get('physical_address'):\n", - " addr = entity['physical_address']\n", - " if addr.get('city') and addr.get('state_code'):\n", + " if entity.get(\"physical_address\"):\n", + " addr = entity[\"physical_address\"]\n", + " if addr.get(\"city\") and addr.get(\"state_code\"):\n", " print(f\"Location: {addr['city']}, {addr['state_code']}\")" ] }, @@ -615,13 +630,13 @@ "print(f\"Found {forecasts.count:,} contract forecasts\\n\")\n", "\n", "for forecast in forecasts.results:\n", - " title = forecast.get('title', 'Untitled')\n", + " title = forecast.get(\"title\", \"Untitled\")\n", " print(f\"{title}\")\n", - " if forecast.get('anticipated_award_date'):\n", + " if forecast.get(\"anticipated_award_date\"):\n", " print(f\" Anticipated Award: {forecast['anticipated_award_date']}\")\n", - " if forecast.get('fiscal_year'):\n", + " if forecast.get(\"fiscal_year\"):\n", " print(f\" Fiscal Year: {forecast['fiscal_year']}\")\n", - " if forecast.get('naics_code'):\n", + " if forecast.get(\"naics_code\"):\n", " print(f\" NAICS: {forecast['naics_code']}\")\n", " print()" ] @@ -680,13 +695,13 @@ "print(f\"Found {opportunities.count:,} contract opportunities\\n\")\n", "\n", "for opp in opportunities.results:\n", - " title = opp.get('title', 'Untitled')\n", + " title = opp.get(\"title\", \"Untitled\")\n", " print(f\"{title}\")\n", - " if opp.get('solicitation_number'):\n", + " if opp.get(\"solicitation_number\"):\n", " print(f\" Solicitation #: {opp['solicitation_number']}\")\n", - " if opp.get('response_deadline'):\n", + " if opp.get(\"response_deadline\"):\n", " print(f\" Response Deadline: {opp['response_deadline']}\")\n", - " if opp.get('active') is not None:\n", + " if opp.get(\"active\") is not None:\n", " print(f\" Active: {opp['active']}\")\n", " print()" ] @@ -744,13 +759,13 @@ "print(f\"Found {notices.count:,} contract notices\\n\")\n", "\n", "for notice in notices.results:\n", - " title = notice.get('title', 'Untitled')\n", + " title = notice.get(\"title\", \"Untitled\")\n", " print(f\"{title}\")\n", - " if notice.get('solicitation_number'):\n", + " if notice.get(\"solicitation_number\"):\n", " print(f\" Solicitation #: {notice['solicitation_number']}\")\n", - " if notice.get('posted_date'):\n", + " if notice.get(\"posted_date\"):\n", " print(f\" Posted: {notice['posted_date']}\")\n", - " if notice.get('naics_code'):\n", + " if notice.get(\"naics_code\"):\n", " print(f\" NAICS: {notice['naics_code']}\")\n", " print()" ] diff --git a/scripts/pr_review.py b/scripts/pr_review.py index b5677a2..236f043 100755 --- a/scripts/pr_review.py +++ b/scripts/pr_review.py @@ -169,9 +169,22 @@ def get_pr_info_from_gh_cli(pr_number: int | None = None) -> PRInfo | None: # Get current PR or specific PR number if pr_number: - cmd = ["gh", "pr", "view", str(pr_number), "--json", "number,title,author,baseRefName,headRefName,url,state"] + cmd = [ + "gh", + "pr", + "view", + str(pr_number), + "--json", + "number,title,author,baseRefName,headRefName,url,state", + ] else: - cmd = ["gh", "pr", "view", "--json", "number,title,author,baseRefName,headRefName,url,state"] + cmd = [ + "gh", + "pr", + "view", + "--json", + "number,title,author,baseRefName,headRefName,url,state", + ] result = subprocess.run( cmd, @@ -345,12 +358,18 @@ def run_conformance_check() -> int: if not path.exists(): print_warning("Conformance manifest not found - skipping filter/shape conformance") print(f" Expected: {path}") - print(" Set TANGO_CONTRACT_MANIFEST or clone tango repo as tango-api/ (see scripts/README.md)") + print( + " Set TANGO_CONTRACT_MANIFEST or clone tango repo as tango-api/ (see scripts/README.md)" + ) return 0 # Don't fail when manifest is missing cmd = [ - "uv", "run", "python", "scripts/check_filter_shape_conformance.py", - "--manifest", manifest_path, + "uv", + "run", + "python", + "scripts/check_filter_shape_conformance.py", + "--manifest", + manifest_path, ] return run_command(cmd, "Filter and shape conformance", check=False) diff --git a/tests/integration/conftest.py b/tests/integration/conftest.py index 58e8465..74ff157 100644 --- a/tests/integration/conftest.py +++ b/tests/integration/conftest.py @@ -22,54 +22,54 @@ def path_transformer(path: str) -> str: """ Transform cassette path to shorten long filenames for Windows compatibility. - + Windows has a 260 character path limit. This function shortens long parameter values in test names by replacing them with a hash, keeping the filename under the limit while maintaining uniqueness. - + Args: path: Original cassette path (e.g., "tests/cassettes/TestClass.test_method[param1-param2].yaml") - + Returns: Shortened path with long parameters replaced by hash """ # Maximum safe filename length (accounting for path prefix) MAX_FILENAME_LENGTH = 200 - + path_obj = Path(path) filename = path_obj.name directory = path_obj.parent - + # If filename is already short enough, return as-is if len(filename) <= MAX_FILENAME_LENGTH: return path - + # Extract base name and extension - if filename.endswith('.yaml'): + if filename.endswith(".yaml"): base_name = filename[:-5] # Remove .yaml - ext = '.yaml' - elif filename.endswith('.yml'): + ext = ".yaml" + elif filename.endswith(".yml"): base_name = filename[:-4] # Remove .yml - ext = '.yml' + ext = ".yml" else: # Unknown extension, return as-is return path - + # Check if this is a parameterized test (has brackets) - if '[' not in base_name or ']' not in base_name: + if "[" not in base_name or "]" not in base_name: # Not parameterized, just truncate if needed if len(filename) > MAX_FILENAME_LENGTH: - truncated = base_name[:MAX_FILENAME_LENGTH - len(ext) - 8] + ext + truncated = base_name[: MAX_FILENAME_LENGTH - len(ext) - 8] + ext return str(directory / truncated) return path - + # Split into test name and parameters - test_name, params = base_name.split('[', 1) - if not params.endswith(']'): + test_name, params = base_name.split("[", 1) + if not params.endswith("]"): return path # Malformed, return as-is - + params = params[:-1] # Remove trailing ] - + # If parameters are too long, hash them if len(params) > 100: # Threshold for hashing # Create a hash of the parameters (first 8 chars for readability) @@ -87,8 +87,8 @@ def path_transformer(path: str) -> str: else: # Even test name is too long, use hash param_hash = hashlib.md5(params.encode()).hexdigest()[:8] - new_filename = f"{test_name[:MAX_FILENAME_LENGTH - 15]}[{param_hash}]{ext}" - + new_filename = f"{test_name[: MAX_FILENAME_LENGTH - 15]}[{param_hash}]{ext}" + return str(directory / new_filename) diff --git a/tests/integration/test_entities_integration.py b/tests/integration/test_entities_integration.py index c14abc5..a326ded 100644 --- a/tests/integration/test_entities_integration.py +++ b/tests/integration/test_entities_integration.py @@ -21,7 +21,6 @@ TANGO_REFRESH_CASSETTES=true TANGO_API_KEY=xxx pytest tests/integration/ """ - import pytest from tango import ShapeConfig diff --git a/tests/integration/test_grants_integration.py b/tests/integration/test_grants_integration.py index 75e41c2..9ad775d 100644 --- a/tests/integration/test_grants_integration.py +++ b/tests/integration/test_grants_integration.py @@ -208,4 +208,3 @@ def test_grant_pagination(self, tango_client): else getattr(page2.results[0], "grant_id", None) ) assert grant1_id != grant2_id, "Different pages should have different results" - diff --git a/tests/integration/test_vehicles_idvs_integration.py b/tests/integration/test_vehicles_idvs_integration.py index 7184870..6b8360d 100644 --- a/tests/integration/test_vehicles_idvs_integration.py +++ b/tests/integration/test_vehicles_idvs_integration.py @@ -302,7 +302,9 @@ def test_list_idv_awards_uses_default_shape(self, tango_client): if award.get("award_date") is not None or ( hasattr(award, "award_date") and award.award_date is not None ): - award_date = award.get("award_date") if isinstance(award, dict) else award.award_date + award_date = ( + award.get("award_date") if isinstance(award, dict) else award.award_date + ) assert isinstance(award_date, date), "award_date should be date" if award.get("award_amount") is not None or ( From f42c6540af6ed043d79c8c99da45c7c97719217a Mon Sep 17 00:00:00 2001 From: "V. David Zvenyach" Date: Wed, 4 Mar 2026 08:12:00 -0600 Subject: [PATCH 4/7] docs: add missing endpoints and update filter params Add documentation for Offices, Organizations, OTAs, OTIDVs, Subawards, NAICS, Assistance, GSA eLibrary Contracts, and Protests endpoints. Update Entities, Forecasts, Opportunities, Notices, and Grants with full explicit filter parameters. Add PROTESTS_MINIMAL and GSA_ELIBRARY_CONTRACTS_MINIMAL to ShapeConfig table. Update README with new endpoint examples and project structure. Co-Authored-By: Claude Opus 4.6 --- README.md | 86 ++++-- docs/API_REFERENCE.md | 590 ++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 629 insertions(+), 47 deletions(-) diff --git a/README.md b/README.md index f0945cd..41789a7 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ A modern Python SDK for the [Tango API](https://tango.makegov.com) by MakeGov, f - **Dynamic Response Shaping** - Request only the fields you need, reducing payload sizes by 60-80% - **Full Type Safety** - Runtime-generated TypedDict types with accurate type hints for IDE autocomplete -- **Comprehensive API Coverage** - All major Tango API endpoints (contracts, entities, forecasts, opportunities, notices, grants, webhooks) [Note: the current version does NOT implement all endpoints, we will be adding them incrementally] +- **Comprehensive API Coverage** - All major Tango API endpoints (contracts, IDVs, OTAs, entities, forecasts, opportunities, notices, grants, protests, webhooks, and more) - **Flexible Data Access** - Dictionary-based response objects with validation - **Modern Python** - Built for Python 3.12+ using modern async-ready patterns - **Production-Ready** - Comprehensive test suite with VCR.py-based integration tests @@ -152,14 +152,33 @@ contracts = client.list_contracts( **Response Options:** - `shape`, `flat`, `flat_lists` - Response shaping options +### IDVs, OTAs, OTIDVs + +```python +# List IDVs (keyset pagination) +idvs = client.list_idvs(limit=25, awarding_agency="4700") + +# Get single IDV with shaping +idv = client.get_idv("IDV_KEY", shape=ShapeConfig.IDVS_COMPREHENSIVE) + +# OTAs and OTIDVs follow the same pattern +otas = client.list_otas(limit=25) +otidvs = client.list_otidvs(limit=25) +``` + +### Vehicles + +```python +vehicles = client.list_vehicles(search="GSA schedule", shape=ShapeConfig.VEHICLES_MINIMAL) +vehicle = client.get_vehicle("UUID", shape=ShapeConfig.VEHICLES_COMPREHENSIVE) +awardees = client.list_vehicle_awardees("UUID") +``` + ### Entities (Vendors/Recipients) ```python -# List entities -entities = client.list_entities( - page=1, - limit=25 -) +# List entities with filters +entities = client.list_entities(search="Booz Allen", state="VA", limit=25) # Get specific entity by UEI or CAGE code entity = client.get_entity("ZQGGHJH74DW7") @@ -168,47 +187,50 @@ entity = client.get_entity("ZQGGHJH74DW7") ### Forecasts ```python -# List contract forecasts -forecasts = client.list_forecasts( - agency="GSA", - limit=25 -) +forecasts = client.list_forecasts(agency="GSA", fiscal_year=2025, limit=25) ``` ### Opportunities ```python -# List opportunities/solicitations -opportunities = client.list_opportunities( - agency="DOD", - limit=25 -) +opportunities = client.list_opportunities(agency="DOD", active=True, limit=25) ``` ### Notices ```python -# List contract notices -notices = client.list_notices( - agency="DOD", - limit=25 -) +notices = client.list_notices(agency="DOD", notice_type="award", limit=25) ``` ### Grants ```python -# List grant opportunities -grants = client.list_grants( - agency_code="HHS", - limit=25 -) +grants = client.list_grants(agency="HHS", status="forecasted", limit=25) +``` + +### Protests + +```python +protests = client.list_protests(source_system="gao", outcome="Sustained", limit=25) +protest = client.get_protest("CASE_UUID") +``` + +### GSA eLibrary Contracts + +```python +contracts = client.list_gsa_elibrary_contracts(schedule="MAS", limit=25) +contract = client.get_gsa_elibrary_contract("UUID") ``` -### Business Types +### Reference Data ```python -# List business types +# Offices, organizations, NAICS, subawards, assistance, business types +offices = client.list_offices(search="acquisitions") +organizations = client.list_organizations(level=1) +naics = client.list_naics(search="software") +subawards = client.list_subawards(prime_uei="UEI123") +assistance = client.list_assistance(fiscal_year=2025) business_types = client.list_business_types() ``` @@ -417,13 +439,21 @@ tango-python/ │ ├── conftest.py # Integration test fixtures │ ├── validation.py # Validation utilities │ ├── test_agencies_integration.py +│ ├── test_assistance_integration.py │ ├── test_contracts_integration.py │ ├── test_entities_integration.py │ ├── test_forecasts_integration.py │ ├── test_grants_integration.py +│ ├── test_naics_integration.py │ ├── test_notices_integration.py +│ ├── test_offices_integration.py │ ├── test_opportunities_integration.py +│ ├── test_organizations_integration.py +│ ├── test_otas_otidvs_integration.py +│ ├── test_protests_integration.py │ ├── test_reference_data_integration.py +│ ├── test_subawards_integration.py +│ ├── test_vehicles_idvs_integration.py │ └── test_edge_cases_integration.py ├── docs/ # Documentation │ ├── API_REFERENCE.md # Complete API reference diff --git a/docs/API_REFERENCE.md b/docs/API_REFERENCE.md index 1f12f2c..a765783 100644 --- a/docs/API_REFERENCE.md +++ b/docs/API_REFERENCE.md @@ -6,15 +6,24 @@ Complete reference for all Tango Python SDK methods and functionality. - [Client Initialization](#client-initialization) - [Agencies](#agencies) +- [Offices](#offices) +- [Organizations](#organizations) - [Contracts](#contracts) - [IDVs](#idvs) +- [OTAs](#otas) +- [OTIDVs](#otidvs) +- [Subawards](#subawards) - [Vehicles](#vehicles) - [Entities](#entities) - [Forecasts](#forecasts) - [Opportunities](#opportunities) - [Notices](#notices) - [Grants](#grants) +- [Assistance](#assistance) +- [GSA eLibrary Contracts](#gsa-elibrary-contracts) +- [Protests](#protests) - [Business Types](#business-types) +- [NAICS](#naics) - [Webhooks](#webhooks) - [Response Objects](#response-objects) - [ShapeConfig (predefined shapes)](#shapeconfig-predefined-shapes) @@ -102,6 +111,98 @@ if gsa.get('department'): --- +## Offices + +Federal agency offices. + +### list_offices() + +List offices with optional search. + +```python +offices = client.list_offices(page=1, limit=25, search="acquisitions") +``` + +**Parameters:** +- `page` (int): Page number (default: 1) +- `limit` (int): Results per page (default: 25, max: 100) +- `search` (str, optional): Search term + +**Returns:** [PaginatedResponse](#paginatedresponse) with office dictionaries + +### get_office() + +Get a specific office by code. + +```python +office = client.get_office(code="4732XX") +``` + +**Parameters:** +- `code` (str): Office code + +**Returns:** Dictionary with office details + +--- + +## Organizations + +Federal organizations (hierarchical agency structure). + +### list_organizations() + +List organizations with filtering and shaping. + +```python +organizations = client.list_organizations( + page=1, + limit=25, + shape=ShapeConfig.ORGANIZATIONS_MINIMAL, + # Filter parameters + cgac=None, + include_inactive=None, + level=None, + parent=None, + search=None, + type=None, +) +``` + +**Parameters:** +- `page` (int): Page number (default: 1) +- `limit` (int): Results per page (default: 25, max: 100) +- `shape` (str, optional): Response shape string +- `flat` (bool): Flatten nested objects (default: False) +- `flat_lists` (bool): Flatten arrays with indexed keys (default: False) + +**Filter Parameters:** +- `cgac` - Filter by CGAC code +- `include_inactive` - Include inactive organizations +- `level` - Filter by organization level +- `parent` - Filter by parent organization +- `search` - Search term +- `type` - Filter by organization type + +**Returns:** [PaginatedResponse](#paginatedresponse) with organization dictionaries + +### get_organization() + +Get a specific organization by fh_key. + +```python +org = client.get_organization(fh_key="ORG_KEY", shape=ShapeConfig.ORGANIZATIONS_MINIMAL) +``` + +**Parameters:** +- `fh_key` (str): Organization key +- `shape` (str, optional): Response shape string +- `flat` (bool): Flatten nested objects (default: False) +- `flat_lists` (bool): Flatten arrays with indexed keys (default: False) + +**Returns:** Dictionary with organization details + +--- + ## Contracts Federal contract awards and procurement data. @@ -275,6 +376,128 @@ contracts = client.list_contracts( --- +## OTAs + +Other Transaction Agreements — non-FAR-based awards. + +### list_otas() + +List OTAs with keyset pagination, filtering, and shaping. + +```python +otas = client.list_otas( + limit=25, + cursor=None, + shape=ShapeConfig.OTAS_MINIMAL, + # Filter parameters (all optional) + award_date=None, + award_date_gte=None, + award_date_lte=None, + awarding_agency=None, + expiring_gte=None, + expiring_lte=None, + fiscal_year=None, + fiscal_year_gte=None, + fiscal_year_lte=None, + funding_agency=None, + ordering=None, + piid=None, + pop_end_date_gte=None, + pop_end_date_lte=None, + pop_start_date_gte=None, + pop_start_date_lte=None, + psc=None, + recipient=None, + search=None, + uei=None, +) +``` + +**Notes:** +- Uses **keyset pagination** (`cursor` + `limit`) rather than page numbers. +- Filter parameters mirror those on `list_contracts`. + +**Returns:** [PaginatedResponse](#paginatedresponse) with OTA dictionaries + +### get_ota() + +```python +ota = client.get_ota("OTA_KEY", shape=ShapeConfig.OTAS_MINIMAL) +``` + +--- + +## OTIDVs + +Other Transaction IDVs — umbrella OT agreements that can have child awards. + +### list_otidvs() + +List OTIDVs with keyset pagination, filtering, and shaping. + +```python +otidvs = client.list_otidvs( + limit=25, + cursor=None, + shape=ShapeConfig.OTIDVS_MINIMAL, + # Same filter parameters as list_otas() +) +``` + +**Notes:** +- Uses **keyset pagination** (`cursor` + `limit`) rather than page numbers. +- Filter parameters are identical to `list_otas()`. + +**Returns:** [PaginatedResponse](#paginatedresponse) with OTIDV dictionaries + +### get_otidv() + +```python +otidv = client.get_otidv("OTIDV_KEY", shape=ShapeConfig.OTIDVS_MINIMAL) +``` + +--- + +## Subawards + +Subcontract and subaward data under prime awards. + +### list_subawards() + +List subawards with filtering and shaping. + +```python +subawards = client.list_subawards( + page=1, + limit=25, + shape=ShapeConfig.SUBAWARDS_MINIMAL, + # Filter parameters (all optional) + award_key=None, + awarding_agency=None, + fiscal_year=None, + fiscal_year_gte=None, + fiscal_year_lte=None, + funding_agency=None, + prime_uei=None, + recipient=None, + sub_uei=None, +) +``` + +**Filter Parameters:** +- `award_key` - Filter by prime award key +- `awarding_agency` - Filter by awarding agency code +- `fiscal_year` - Exact fiscal year +- `fiscal_year_gte` / `fiscal_year_lte` - Fiscal year range +- `funding_agency` - Filter by funding agency code +- `prime_uei` - Filter by prime awardee UEI +- `recipient` - Search by subrecipient name +- `sub_uei` - Filter by subrecipient UEI + +**Returns:** [PaginatedResponse](#paginatedresponse) with subaward dictionaries + +--- + ## Vehicles Vehicles provide a solicitation-centric way to discover groups of related IDVs and (optionally) expand into the underlying awards via shaping. @@ -402,7 +625,20 @@ entities = client.list_entities( limit=25, shape=None, flat=False, - # Additional filters can be passed as **kwargs + flat_lists=False, + # Filter parameters (all optional) + search=None, + cage_code=None, + naics=None, + name=None, + psc=None, + purpose_of_registration_code=None, + socioeconomic=None, + state=None, + total_awards_obligated_gte=None, + total_awards_obligated_lte=None, + uei=None, + zip_code=None, ) ``` @@ -411,12 +647,26 @@ entities = client.list_entities( - `limit` (int): Results per page - `shape` (str): Fields to return - `flat` (bool): Flatten nested objects +- `flat_lists` (bool): Flatten arrays with indexed keys + +**Filter Parameters:** +- `search` - Full-text search +- `cage_code` - Filter by CAGE code +- `naics` - Filter by NAICS code +- `name` - Filter by entity name +- `psc` - Filter by PSC code +- `purpose_of_registration_code` - Filter by registration purpose +- `socioeconomic` - Filter by socioeconomic status +- `state` - Filter by state +- `total_awards_obligated_gte` / `total_awards_obligated_lte` - Obligation amount range +- `uei` - Filter by UEI +- `zip_code` - Filter by ZIP code **Returns:** [PaginatedResponse](#paginatedresponse) with entity dictionaries **Example:** ```python -entities = client.list_entities(limit=20) +entities = client.list_entities(search="Booz Allen", limit=20) for entity in entities.results: print(f"{entity['display_name']}") @@ -479,8 +729,21 @@ forecasts = client.list_forecasts( limit=25, shape=None, flat=False, - # Additional filters + flat_lists=False, + # Filter parameters (all optional) agency=None, + award_date_after=None, + award_date_before=None, + fiscal_year=None, + fiscal_year_gte=None, + fiscal_year_lte=None, + modified_after=None, + modified_before=None, + naics_code=None, + naics_starts_with=None, + search=None, + source_system=None, + status=None, ) ``` @@ -489,13 +752,25 @@ forecasts = client.list_forecasts( - `limit` (int): Results per page - `shape` (str): Fields to return - `flat` (bool): Flatten nested objects -- `agency` (str): Filter by agency code +- `flat_lists` (bool): Flatten arrays with indexed keys + +**Filter Parameters:** +- `agency` - Filter by agency code +- `award_date_after` / `award_date_before` - Expected award date range +- `fiscal_year` - Exact fiscal year +- `fiscal_year_gte` / `fiscal_year_lte` - Fiscal year range +- `modified_after` / `modified_before` - Last-modified date range +- `naics_code` - NAICS code (exact match) +- `naics_starts_with` - NAICS code prefix +- `search` - Full-text search +- `source_system` - Filter by source system +- `status` - Filter by status **Returns:** [PaginatedResponse](#paginatedresponse) with forecast dictionaries **Example:** ```python -forecasts = client.list_forecasts(agency="GSA", limit=20) +forecasts = client.list_forecasts(agency="GSA", fiscal_year=2025, limit=20) for forecast in forecasts.results: print(f"{forecast['title']}") @@ -520,7 +795,7 @@ Active contract opportunities and solicitations. ### list_opportunities() -List contract opportunities. +List contract opportunities/solicitations. ```python opportunities = client.list_opportunities( @@ -528,8 +803,23 @@ opportunities = client.list_opportunities( limit=25, shape=None, flat=False, - # Additional filters + flat_lists=False, + # Filter parameters (all optional) + active=None, agency=None, + first_notice_date_after=None, + first_notice_date_before=None, + last_notice_date_after=None, + last_notice_date_before=None, + naics=None, + notice_type=None, + place_of_performance=None, + psc=None, + response_deadline_after=None, + response_deadline_before=None, + search=None, + set_aside=None, + solicitation_number=None, ) ``` @@ -538,13 +828,27 @@ opportunities = client.list_opportunities( - `limit` (int): Results per page - `shape` (str): Fields to return - `flat` (bool): Flatten nested objects -- `agency` (str): Filter by agency code +- `flat_lists` (bool): Flatten arrays with indexed keys + +**Filter Parameters:** +- `active` - Filter by active status (bool) +- `agency` - Filter by agency code +- `first_notice_date_after` / `first_notice_date_before` - First notice date range +- `last_notice_date_after` / `last_notice_date_before` - Last notice date range +- `naics` - NAICS code +- `notice_type` - Filter by notice type +- `place_of_performance` - Filter by place of performance +- `psc` - PSC code +- `response_deadline_after` / `response_deadline_before` - Response deadline range +- `search` - Full-text search +- `set_aside` - Set-aside type +- `solicitation_number` - Solicitation number (exact match) **Returns:** [PaginatedResponse](#paginatedresponse) with opportunity dictionaries **Example:** ```python -opportunities = client.list_opportunities(agency="DOD", limit=20) +opportunities = client.list_opportunities(agency="DOD", active=True, limit=20) for opp in opportunities.results: print(f"{opp['title']}") @@ -579,8 +883,20 @@ notices = client.list_notices( limit=25, shape=None, flat=False, - # Additional filters + flat_lists=False, + # Filter parameters (all optional) + active=None, agency=None, + naics=None, + notice_type=None, + posted_date_after=None, + posted_date_before=None, + psc=None, + response_deadline_after=None, + response_deadline_before=None, + search=None, + set_aside=None, + solicitation_number=None, ) ``` @@ -589,13 +905,25 @@ notices = client.list_notices( - `limit` (int): Results per page - `shape` (str): Fields to return - `flat` (bool): Flatten nested objects -- `agency` (str): Filter by agency code +- `flat_lists` (bool): Flatten arrays with indexed keys + +**Filter Parameters:** +- `active` - Filter by active status (bool) +- `agency` - Filter by agency code +- `naics` - NAICS code +- `notice_type` - Filter by notice type +- `posted_date_after` / `posted_date_before` - Posted date range +- `psc` - PSC code +- `response_deadline_after` / `response_deadline_before` - Response deadline range +- `search` - Full-text search +- `set_aside` - Set-aside type +- `solicitation_number` - Solicitation number (exact match) **Returns:** [PaginatedResponse](#paginatedresponse) with notice dictionaries **Example:** ```python -notices = client.list_notices(agency="GSA", limit=20) +notices = client.list_notices(agency="GSA", notice_type="award", limit=20) for notice in notices.results: print(f"{notice['title']}") @@ -628,26 +956,46 @@ grants = client.list_grants( shape=None, flat=False, flat_lists=False, - # Additional filters - agency_code=None, + # Filter parameters (all optional) + agency=None, + applicant_types=None, + cfda_number=None, + funding_categories=None, + funding_instruments=None, + opportunity_number=None, + posted_date_after=None, + posted_date_before=None, + response_date_after=None, + response_date_before=None, + search=None, + status=None, ) ``` **Parameters:** - `page` (int): Page number - `limit` (int): Results per page (max 100) -- `shape` (str): Response shape string (defaults to minimal shape). - Use None to disable shaping, ShapeConfig.GRANTS_MINIMAL for minimal, - or provide custom shape string +- `shape` (str): Response shape string - `flat` (bool): Flatten nested objects in shaped response - `flat_lists` (bool): Flatten arrays using indexed keys -- `agency_code` (str): Filter by agency code + +**Filter Parameters:** +- `agency` - Filter by agency code +- `applicant_types` - Filter by applicant type +- `cfda_number` - Filter by CFDA number +- `funding_categories` - Filter by funding category +- `funding_instruments` - Filter by funding instrument +- `opportunity_number` - Filter by opportunity number (exact match) +- `posted_date_after` / `posted_date_before` - Posted date range +- `response_date_after` / `response_date_before` - Response date range +- `search` - Full-text search +- `status` - Filter by status **Returns:** [PaginatedResponse](#paginatedresponse) with grant dictionaries **Example:** ```python -grants = client.list_grants(agency_code="HHS", limit=20) +grants = client.list_grants(agency="HHS", status="forecasted", limit=20) for grant in grants.results: print(f"{grant['title']}") @@ -690,6 +1038,166 @@ for grant in grants.results: --- +## Assistance + +Financial assistance transactions (grants, direct payments, etc.). + +### list_assistance() + +List assistance transactions with keyset pagination. + +```python +assistance = client.list_assistance( + limit=25, + cursor=None, + # Filter parameters (all optional) + assistance_type=None, + award_key=None, + fiscal_year=None, + fiscal_year_gte=None, + fiscal_year_lte=None, + highly_compensated_officers=None, + recipient=None, + recipient_address=None, + search=None, +) +``` + +**Notes:** +- Uses **keyset pagination** (`cursor` + `limit`) rather than page numbers. + +**Filter Parameters:** +- `assistance_type` - Filter by assistance type +- `award_key` - Filter by award key +- `fiscal_year` - Exact fiscal year +- `fiscal_year_gte` / `fiscal_year_lte` - Fiscal year range +- `highly_compensated_officers` - Filter by highly compensated officers +- `recipient` - Search by recipient name +- `recipient_address` - Filter by recipient address +- `search` - Full-text search + +**Returns:** [PaginatedResponse](#paginatedresponse) with assistance dictionaries + +--- + +## GSA eLibrary Contracts + +GSA Schedule contracts from the GSA eLibrary. + +### list_gsa_elibrary_contracts() + +List GSA eLibrary contracts with filtering and shaping. + +```python +contracts = client.list_gsa_elibrary_contracts( + page=1, + limit=25, + shape=ShapeConfig.GSA_ELIBRARY_CONTRACTS_MINIMAL, + # Filter parameters (all optional) + contract_number=None, + key=None, + piid=None, + schedule=None, + search=None, + sin=None, + uei=None, +) +``` + +**Filter Parameters:** +- `contract_number` - Filter by contract number +- `key` - Filter by key +- `piid` - Filter by PIID +- `schedule` - Filter by GSA schedule +- `search` - Full-text search +- `sin` - Filter by SIN (Special Item Number) +- `uei` - Filter by UEI + +**Returns:** [PaginatedResponse](#paginatedresponse) with GSA eLibrary contract dictionaries + +### get_gsa_elibrary_contract() + +Get a single GSA eLibrary contract by UUID. + +```python +contract = client.get_gsa_elibrary_contract("UUID_HERE") +``` + +--- + +## Protests + +Bid protest records (GAO, COFC, etc.). + +### list_protests() + +List bid protests with filtering and shaping. + +```python +protests = client.list_protests( + page=1, + limit=25, + shape=ShapeConfig.PROTESTS_MINIMAL, + # Filter parameters (all optional) + source_system=None, + outcome=None, + case_type=None, + agency=None, + case_number=None, + solicitation_number=None, + protester=None, + filed_date_after=None, + filed_date_before=None, + decision_date_after=None, + decision_date_before=None, + search=None, +) +``` + +**Filter Parameters:** +- `source_system` - Filter by source system (e.g., `"gao"`) +- `outcome` - Filter by outcome (e.g., `"Denied"`, `"Dismissed"`, `"Withdrawn"`, `"Sustained"`) +- `case_type` - Filter by case type +- `agency` - Filter by protested agency +- `case_number` - Filter by case number (e.g., `"b-423274"`) +- `solicitation_number` - Filter by solicitation number +- `protester` - Search by protester name +- `filed_date_after` / `filed_date_before` - Filed date range +- `decision_date_after` / `decision_date_before` - Decision date range +- `search` - Full-text search + +**Returns:** [PaginatedResponse](#paginatedresponse) with protest dictionaries + +**Example:** +```python +protests = client.list_protests( + source_system="gao", + outcome="Sustained", + filed_date_after="2024-01-01", + shape="case_id,case_number,title,outcome,filed_date,dockets(docket_number,outcome)", + limit=25, +) + +for protest in protests.results: + print(f"{protest['case_number']}: {protest['title']} — {protest['outcome']}") +``` + +### get_protest() + +Get a single protest by case_id (UUID). + +```python +protest = client.get_protest( + "CASE_UUID", + shape="case_id,case_number,title,source_system,outcome,filed_date,dockets(*)", +) +``` + +**Notes:** +- Use `shape=...,dockets(...)` to include nested docket records. + +--- + ## Business Types Business type classifications. @@ -723,6 +1231,48 @@ for biz_type in business_types.results: --- +## NAICS + +NAICS (North American Industry Classification System) codes. + +### list_naics() + +List NAICS codes with optional filtering. + +```python +naics = client.list_naics( + page=1, + limit=25, + # Filter parameters (all optional) + employee_limit=None, + employee_limit_gte=None, + employee_limit_lte=None, + revenue_limit=None, + revenue_limit_gte=None, + revenue_limit_lte=None, + search=None, +) +``` + +**Filter Parameters:** +- `employee_limit` - Exact employee size standard +- `employee_limit_gte` / `employee_limit_lte` - Employee limit range +- `revenue_limit` - Exact revenue size standard +- `revenue_limit_gte` / `revenue_limit_lte` - Revenue limit range +- `search` - Full-text search (code or description) + +**Returns:** [PaginatedResponse](#paginatedresponse) with NAICS dictionaries + +**Example:** +```python +naics = client.list_naics(search="software", limit=10) + +for code in naics.results: + print(f"{code['code']}: {code['title']}") +``` + +--- + ## Webhooks Webhook APIs let **Large / Enterprise** users manage subscription filters for outbound Tango webhooks. @@ -942,6 +1492,8 @@ entity = client.get_entity("UEI_KEY", shape=ShapeConfig.ENTITIES_COMPREHENSIVE) | `OTAS_MINIMAL` | `list_otas` | key, piid, award_date, recipient(display_name,uei), description, total_contract_value, obligated | | `OTIDVS_MINIMAL` | `list_otidvs` | key, piid, award_date, recipient(display_name,uei), description, total_contract_value, obligated, idv_type | | `SUBAWARDS_MINIMAL` | `list_subawards` | award_key, prime_recipient(uei,display_name), subaward_recipient(uei,display_name) | +| `GSA_ELIBRARY_CONTRACTS_MINIMAL` | `list_gsa_elibrary_contracts` | uuid, contract_number, schedule, recipient(display_name,uei), idv(key,award_date) | +| `PROTESTS_MINIMAL` | `list_protests` | case_id, case_number, title, source_system, outcome, filed_date | All predefined shapes are validated at SDK release time (see [Developer Guide](DEVELOPERS.md#sdk-conformance-maintainers)). For custom shapes, see the [Shaping Guide](SHAPES.md). From 412eac25428adcf3896019189bcbdb5db7ff2c2a Mon Sep 17 00:00:00 2001 From: "V. David Zvenyach" Date: Wed, 4 Mar 2026 08:13:26 -0600 Subject: [PATCH 5/7] Updated the CHANGELOG --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d33326..f05e583 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Lint CI workflow disabled for push/PR (runs only on manual trigger) until the private `makegov/tango` repo is accessible to the workflow. +- Updated documents to reflect changes since v0.4.0 ## [0.4.1] - 2026-03-03 From 7caf6c95651ba81b5351aa45ebde5863648a317e Mon Sep 17 00:00:00 2001 From: "V. David Zvenyach" Date: Wed, 4 Mar 2026 08:45:50 -0600 Subject: [PATCH 6/7] Entities: federal_obligations as expansion; edge-case test fixes; CHANGELOG - ENTITIES_COMPREHENSIVE uses federal_obligations(*) expansion (API change) - SHAPES.md: document federal_obligations(*) as expansion - test_parsing_nested_objects_with_missing_data: accept office_code/agency_code and empty nested objects - CHANGELOG: unreleased changes - Cassette updates (incl. comprehensive entities shape) Made-with: Cursor --- CHANGELOG.md | 3 + docs/SHAPES.md | 2 +- tango/models.py | 2 +- .../TestAgenciesIntegration.test_get_agency | 38 +- ...TestAgenciesIntegration.test_list_agencies | 65 +- ...AssistanceIntegration.test_list_assistance | 217 +-- ...n.test_business_type_field_type_validation | 32 +- ...ion.test_business_type_parsing_consistency | 32 +- ...sTypesIntegration.test_list_business_types | 32 +- ...ration.test_combined_filters_work_together | 42 +- ...ntegration.test_contract_cursor_pagination | 93 +- ...egration.test_contract_data_object_parsing | 52 +- ...ractsIntegration.test_contract_field_types | 76 +- ...ilter_parameter_mappings[keyword-software] | 148 +- ...t_filter_parameter_mappings[psc_code-R425] | 140 +- ...list_contracts_with_awarding_agency_filter | 147 +- ...test_list_contracts_with_date_range_filter | 134 +- ...sIntegration.test_list_contracts_with_flat | 52 +- ...test_list_contracts_with_naics_code_filter | 356 +---- ...lay_name),total_contract_value,award_date] | 38 +- ...t_list_contracts_with_shapes[default-None] | 52 +- ...erforma...ce114a3c47e2037aaa3c15d00b7031bd | 190 +-- ...ay_name),description,total_contract_value] | 52 +- ...ractsIntegration.test_new_expiring_filters | 48 +- ...gration.test_new_fiscal_year_range_filters | 149 +- ...ctsIntegration.test_new_identifier_filters | 28 +- ...gration.test_search_contracts_with_filters | 134 +- ..._search_filters_object_with_new_parameters | 51 +- ...st_sort_and_order_mapped_to_ordering[asc-] | 48 +- ..._sort_and_order_mapped_to_ordering[desc--] | 52 +- ...t_api_schema_stability_detection_contracts | 48 +- ...st_api_schema_stability_detection_entities | 111 +- ...gration.test_date_field_parsing_edge_cases | 148 +- ...tion.test_decimal_field_parsing_edge_cases | 128 +- ...CasesIntegration.test_empty_list_responses | 28 +- ...ntity_parsing_with_various_address_formats | 211 ++- ...n.test_flattened_responses_with_flat_lists | 52 +- ...ration.test_list_field_parsing_consistency | 164 +- ...t_parsing_nested_objects_with_missing_data | 387 ++--- ...t_parsing_null_missing_fields_in_contracts | 128 +- ...est_parsing_with_minimal_shape_sparse_data | 48 +- ...ntitiesIntegration.test_entity_field_types | 211 ++- ...esIntegration.test_entity_location_parsing | 164 +- ...on.test_entity_parsing_with_business_types | 164 +- ...ation.test_entity_with_various_identifiers | 136 +- ...EntitiesIntegration.test_get_entity_by_uei | 175 +-- ...esIntegration.test_list_entities_with_flat | 48 +- ...Integration.test_list_entities_with_search | 42 +- ...ties,ke...1603a7d52e211cf2b3bc7d32080238aa | 116 ++ ...ties,ke...95fcff7efcf320ecc846393dd484321d | 115 -- ...[custom-uei,legal_business_name,cage_code] | 37 +- ...al_business_name,cage_code,business_types] | 73 +- ...cage_code,business_types,physical_address] | 84 +- ...castsIntegration.test_forecast_field_types | 46 +- ...es[custom-id,title,anticipated_award_date] | 36 +- ...t_list_forecasts_with_shapes[default-None] | 36 +- ...e,fiscal_year,naics_code,status,is_active] | 119 +- ..._award_date,fiscal_year,naics_code,status] | 36 +- ...stGrantsIntegration.test_grant_field_types | 28 +- ...estGrantsIntegration.test_grant_pagination | 79 +- ...[custom-grant_id,title,opportunity_number] | 40 +- ...test_list_grants_with_shapes[default-None] | 40 +- ...,applicant_types(-),funding_categories(-)] | 293 ++-- ...tunity_number,title,status(-),agency_code] | 40 +- .../TestIDVsIntegration.test_get_idv_summary | 240 ++- ...ntegration.test_get_idv_uses_default_shape | 414 +---- ...on.test_list_idv_awards_uses_default_shape | 203 +-- ...est_list_idv_child_idvs_uses_default_shape | 201 +-- ...VsIntegration.test_list_idv_summary_awards | 244 ++- ...IDVsIntegration.test_list_idv_transactions | 213 +-- ..._idvs_uses_default_shape_and_keyset_params | 252 +-- .../TestNaicsIntegration.test_list_naics | 30 +- ...ustom-notice_id,title,solicitation_number] | 26 +- ...est_list_notices_with_shapes[default-None] | 26 +- ...t_aside,office(-),place_of_performance(-)] | 26 +- ..._id,title,solicitation_number,posted_date] | 26 +- ...NoticesIntegration.test_notice_field_types | 26 +- ...tNoticesIntegration.test_notice_pagination | 52 +- ...esIntegration.test_notice_with_meta_fields | 50 +- .../TestOTAsIntegration.test_get_ota | 210 +-- .../TestOTAsIntegration.test_list_otas | 127 +- .../TestOTIDVsIntegration.test_get_otidv | 214 +-- .../TestOTIDVsIntegration.test_list_otidvs | 136 +- .../TestOfficesIntegration.test_get_office | 106 +- .../TestOfficesIntegration.test_list_offices | 30 +- ...-opportunity_id,title,solicitation_number] | 35 +- ...st_opportunities_with_shapes[default-None] | 35 +- ...et_asid...23b6b4502ddd665b7184afcff6c6d8d9 | 139 +- ...icitation_number,response_deadline,active] | 35 +- ...esIntegration.test_opportunity_field_types | 42 +- ...nizationsIntegration.test_get_organization | 60 +- ...zationsIntegration.test_list_organizations | 44 +- ...hCassettes.test_contract_cursor_pagination | 169 -- ...stsIntegration.test_get_protest_by_case_id | 42 +- ...Integration.test_list_protests_with_filter | 20 +- ...ustom-case_id,title,source_system,outcome] | 22 +- ...st_list_protests_with_shapes[default-None] | 22 +- ...er,title,source_system,outcome,filed_date] | 22 +- ...dockets(docket_number,filed_date,outcome)] | 22 +- ...rotestsIntegration.test_protest_pagination | 44 +- ...stSubawardsIntegration.test_list_subawards | 62 +- ...s_dict_access[custom-key,piid,description] | 42 +- ...ay_name),description,total_contract_value] | 52 +- ...ipient(display_name),total_contract_value] | 38 +- ...al_business_name,cage_code,business_types] | 73 +- ...cage_code,business_types,physical_address] | 84 +- ...t_aside,office(-),place_of_performance(-)] | 26 +- ..._id,title,solicitation_number,posted_date] | 26 +- ...sam_url,office(-),place_of_performance(-)] | 139 +- ...icitation_number,response_deadline,active] | 35 +- ...get_vehicle_supports_joiner_and_flat_lists | 1244 +-------------- ...t_list_vehicle_awardees_uses_default_shape | 1388 +---------------- ...ist_vehicles_uses_default_shape_and_search | 770 +-------- .../test_edge_cases_integration.py | 16 +- 114 files changed, 3982 insertions(+), 9734 deletions(-) create mode 100644 tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...1603a7d52e211cf2b3bc7d32080238aa delete mode 100644 tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...95fcff7efcf320ecc846393dd484321d delete mode 100644 tests/cassettes/TestProductionSmokeWithCassettes.test_contract_cursor_pagination diff --git a/CHANGELOG.md b/CHANGELOG.md index f05e583..4900b61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Lint CI workflow disabled for push/PR (runs only on manual trigger) until the private `makegov/tango` repo is accessible to the workflow. - Updated documents to reflect changes since v0.4.0 +- Entities: `ENTITIES_COMPREHENSIVE` now uses `federal_obligations(*)` expansion; the API treats federal obligations as an expansion rather than a plain shape field. +- Docs: `SHAPES.md` documents `federal_obligations(*)` as an expansion for entity shaping. +- Integration tests: `test_parsing_nested_objects_with_missing_data` accepts award office fields (`office_code`, `agency_code`, `department_code`) and empty nested objects when the API returns partial data. ## [0.4.1] - 2026-03-03 diff --git a/docs/SHAPES.md b/docs/SHAPES.md index 49ffe4a..6504733 100644 --- a/docs/SHAPES.md +++ b/docs/SHAPES.md @@ -371,7 +371,7 @@ contracts = client.list_contracts(shape=DASHBOARD_SHAPE, limit=50) - `mailing_address(...)` - Mailing address **Financial:** -- `federal_obligations` - Total federal obligations +- `federal_obligations(*)` - Expansion for total/active federal obligations ## Performance Comparison diff --git a/tango/models.py b/tango/models.py index fc522b4..7d01056 100644 --- a/tango/models.py +++ b/tango/models.py @@ -602,7 +602,7 @@ class ShapeConfig: "business_types,primary_naics,naics_codes,psc_codes," "email_address,entity_url,description,capabilities,keywords," "physical_address,mailing_address," - "federal_obligations,congressional_district" + "federal_obligations(*),congressional_district" ) # Default for list_forecasts() diff --git a/tests/cassettes/TestAgenciesIntegration.test_get_agency b/tests/cassettes/TestAgenciesIntegration.test_get_agency index 95eb9f7..1320c3f 100644 --- a/tests/cassettes/TestAgenciesIntegration.test_get_agency +++ b/tests/cassettes/TestAgenciesIntegration.test_get_agency @@ -16,41 +16,33 @@ interactions: uri: https://tango.makegov.com/api/agencies/4700/ response: body: - string: '{"code":"4700","name":"General Services Administration","abbreviation":"GSA","department":{"name":"General - Services Administration","code":47}}' + string: '{"code":"4700","name":"General Services Administration","abbreviation":"GSA","department":{"code":47,"name":"General + Services Administration"}}' headers: - Age: - - '962' CF-RAY: - - 99f88c10fadea1c5-MSP - Cache-Control: - - max-age=86400 + - 9d71a552ba805108-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:53 GMT + - Wed, 04 Mar 2026 14:42:08 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=mO7vhOOg6oeZRYvsMT7JOAtLlc23jY0g%2Fv8r9f581zD7bWlvQObVkPrKUh8r8hmkVrtXtudyMLwe0u%2BLO4dG9PBdOfT1nlVgCodcUAuoyj21xGBKaZRH93jY2g%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ll0O3siCO5da%2BBb4BrJq0tr%2BL%2FWVg2%2BcmVFoij0a7qBl2Nb1%2FD5dkRDUDBFjqoIgBwXn7ob3ra7UkW5XpoGNvYi74p0RSxBcC%2B4X8AyjmaqRapK%2FtEapFRgO"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - '143' cross-origin-opener-policy: - same-origin - expires: - - Mon, 17 Nov 2025 16:44:51 GMT referrer-policy: - same-origin vary: @@ -58,27 +50,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.009s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '10' + - '966' x-ratelimit-burst-reset: - - '0' + - '6' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '86' + - '1999778' x-ratelimit-daily-reset: - - '73237' + - '85060' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '10' + - '966' x-ratelimit-reset: - - '0' + - '6' status: code: 200 message: OK diff --git a/tests/cassettes/TestAgenciesIntegration.test_list_agencies b/tests/cassettes/TestAgenciesIntegration.test_list_agencies index 9e9ce34..c43159e 100644 --- a/tests/cassettes/TestAgenciesIntegration.test_list_agencies +++ b/tests/cassettes/TestAgenciesIntegration.test_list_agencies @@ -16,54 +16,45 @@ interactions: uri: https://tango.makegov.com/api/agencies/?page=1&limit=10 response: body: - string: '{"count":1496,"next":"http://tango.makegov.com/api/agencies/?limit=10&page=2","previous":null,"results":[{"code":"21EB","name":"1st - Personnel Command","abbreviation":"","department":{"name":"Department of Defense","code":97}},{"code":"21E2","name":"21st - Theater Army Area Command","abbreviation":"","department":{"name":"Department - of Defense","code":97}},{"code":"21EO","name":"59th Ordnance Brigade","abbreviation":"","department":{"name":"Department - of Defense","code":97}},{"code":"21EN","name":"7th Army Training Command","abbreviation":"","department":{"name":"Department - of Defense","code":97}},{"code":"21P8","name":"8th U.S. Army","abbreviation":"","department":{"name":"Department - of Defense","code":97}},{"code":"0938","name":"Abraham Lincoln Bicentennial - Commission","abbreviation":"ALBC","department":{"name":"Abraham Lincoln Bicentennial - Commission","code":289}},{"code":"9147","name":"Academic Improvement and Teacher - Quality Programs","abbreviation":"AITQ","department":{"name":"Department of - Education","code":91}},{"code":"9532","name":"Access Board","abbreviation":"USAB","department":{"name":"Access - Board","code":310}},{"code":"21AE","name":"Acquisition Executive Support Command - Agency","abbreviation":"","department":{"name":"Department of Defense","code":97}},{"code":"3621","name":"Actuarial - Analysis and Data Development Service","abbreviation":"","department":{"name":"Department - of Veterans Affairs","code":36}}]}' + string: '{"count":1496,"next":"https://tango.makegov.com/api/agencies/?limit=10&page=2","previous":null,"results":[{"code":"21EB","name":"1st + Personnel Command","abbreviation":"","department":{"code":97,"name":"Department + of Defense"}},{"code":"21E2","name":"21st Theater Army Area Command","abbreviation":"","department":{"code":97,"name":"Department + of Defense"}},{"code":"21EO","name":"59th Ordnance Brigade","abbreviation":"","department":{"code":97,"name":"Department + of Defense"}},{"code":"21EN","name":"7th Army Training Command","abbreviation":"","department":{"code":97,"name":"Department + of Defense"}},{"code":"21P8","name":"8th U.S. Army","abbreviation":"","department":{"code":97,"name":"Department + of Defense"}},{"code":"0938","name":"Abraham Lincoln Bicentennial Commission","abbreviation":"ALBC","department":{"code":289,"name":"Abraham + Lincoln Bicentennial Commission"}},{"code":"9147","name":"Academic Improvement + and Teacher Quality Programs","abbreviation":"AITQ","department":{"code":91,"name":"Department + of Education"}},{"code":"9532","name":"Access Board","abbreviation":"USAB","department":{"code":310,"name":"Access + Board"}},{"code":"21AE","name":"Acquisition Executive Support Command Agency","abbreviation":"","department":{"code":97,"name":"Department + of Defense"}},{"code":"3621","name":"Actuarial Analysis and Data Development + Service","abbreviation":"","department":{"code":36,"name":"Department of Veterans + Affairs"}}]}' headers: - Age: - - '962' CF-RAY: - - 99f88c0fd8a4a22a-MSP - Cache-Control: - - max-age=86400 + - 9d71a5518ca3a225-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:53 GMT + - Wed, 04 Mar 2026 14:42:08 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=29%2FzmYVGPWUoxUAiX9%2BwP7Lab2WSYHUIyl8XgOF%2BdxdxldrCYATc9I9k9yko%2Bm5MDHkpoS6OMYDeGkezCurBAMCGQl8XjM4HXyC%2Fv6WYtQc5pSXM%2FFqLxRLGBQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=dnKLRpygVGBZTkoknxVFAZbvTEAI%2B%2FYRjjRIc1UARxTZ8epk1G4iwniTL58ilXKuA3y7zqmFgVn%2FdCVxia6ZPFRD7u5HBifLxQ1M1sKPDmsmA3mSQrxejWNR"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1441' + - '1442' cross-origin-opener-policy: - same-origin - expires: - - Mon, 17 Nov 2025 16:44:51 GMT referrer-policy: - same-origin vary: @@ -71,27 +62,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.009s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '10' + - '967' x-ratelimit-burst-reset: - - '0' + - '6' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '86' + - '1999779' x-ratelimit-daily-reset: - - '73237' + - '85060' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '10' + - '967' x-ratelimit-reset: - - '0' + - '6' status: code: 200 message: OK diff --git a/tests/cassettes/TestAssistanceIntegration.test_list_assistance b/tests/cassettes/TestAssistanceIntegration.test_list_assistance index 986f7aa..106ff5d 100644 --- a/tests/cassettes/TestAssistanceIntegration.test_list_assistance +++ b/tests/cassettes/TestAssistanceIntegration.test_list_assistance @@ -16,106 +16,143 @@ interactions: uri: https://tango.makegov.com/api/assistance/?limit=10 response: body: - string: "\n\n\n\n \n\n\nmakegov.com | 504: Gateway - time-out\n\n\n\n\n\n\n\n\n
\n
\n
\n

\n Gateway time-out\n Error - code 504\n

\n
\n Visit - cloudflare.com for more - information.\n
\n
2026-02-12 - 03:35:41 UTC
\n
\n
\n - \
\n
\n
\n
\n \n \n \n - \ \n
\n You\n

\n - \ \n Browser\n \n

\n \n Working\n - \ \n
\n
\n \n Minneapolis\n - \

\n \n Cloudflare\n \n

\n - \ \n Working\n - \ \n
\n
\n
\n \n \n \n - \ \n
\n tango.makegov.com\n - \

\n \n Host\n \n

\n \n Error\n \n
\n
\n - \
\n
\n\n
\n
\n
\n - \

What - happened?

\n

The web server reported a gateway time-out - error.

\n
\n
\n

What can I do?

\n

Please - try again in a few minutes.

\n
\n
\n - \
\n\n \n\n
\n
\n\n" + string: "\n\n \n \n + \ \n \n 404 - Page + Not Found | Tango by MakeGov\n \n \n \n + \ \n + \ \n \n + \ \n \n + \ \n + \ \n \n + \ \n + \ \n + \ \n + \ \n \n + \ \n \n \n \n \n \n \n Skip + to main content
\n
\n
\n + \
\n
\n
\n \n \n \n + \ \n + \ \n \n
\n + \
\n \n
\n
\n + \
\n
\n \n + \
\n
\n
\n \n
\n \n
\n \n

\"404

\n \n

Uh-oh! + Nothing here!

\n

Go + back

\n
\n \n
\n\n \n + \ \n \n\n" headers: CF-RAY: - - 9cc908f7accba1d6-MSP - Cache-Control: - - private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0 + - 9d71a554af09a1e5-MSP Connection: - keep-alive - Content-Length: - - '6435' Content-Type: - - text/html; charset=UTF-8 + - text/html; charset=utf-8 Date: - - Thu, 12 Feb 2026 03:35:41 GMT - Expires: - - Thu, 01 Jan 1970 00:00:01 GMT + - Wed, 04 Mar 2026 14:42:08 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3GQiyLIcaxvbCAdWSkxsWhAFBMSdtnSGrZiRT8hLWmQWlXlf34XX6eg8kxHB2vgVPtoUJmqqp8KeT37W3swbh0eUJdJq7xyoXrSC2MQPmtqNZ6%2BPUiDsyH9r"}]}' Server: - cloudflare + Transfer-Encoding: + - chunked + cf-cache-status: + - DYNAMIC + content-length: + - '7174' + cross-origin-opener-policy: + - same-origin referrer-policy: - same-origin + vary: + - Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.006s x-frame-options: - - SAMEORIGIN + - DENY + x-ratelimit-burst-limit: + - '10' + x-ratelimit-burst-remaining: + - '10' + x-ratelimit-burst-reset: + - '0' + x-ratelimit-daily-limit: + - '100' + x-ratelimit-daily-remaining: + - '100' + x-ratelimit-daily-reset: + - '0' + x-ratelimit-limit: + - '10' + x-ratelimit-remaining: + - '10' + x-ratelimit-reset: + - '0' status: - code: 504 - message: Gateway Timeout + code: 404 + message: Not Found version: 1 diff --git a/tests/cassettes/TestBusinessTypesIntegration.test_business_type_field_type_validation b/tests/cassettes/TestBusinessTypesIntegration.test_business_type_field_type_validation index e1dd431..e6ca53b 100644 --- a/tests/cassettes/TestBusinessTypesIntegration.test_business_type_field_type_validation +++ b/tests/cassettes/TestBusinessTypesIntegration.test_business_type_field_type_validation @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/business_types/?page=1&limit=10 response: body: - string: '{"count":78,"next":"http://tango.makegov.com/api/business_types/?limit=10&page=2","previous":null,"results":[{"name":"1862 + string: '{"count":78,"next":"https://tango.makegov.com/api/business_types/?limit=10&page=2","previous":null,"results":[{"name":"1862 Land Grant College","code":"G6"},{"name":"1890 Land Grant College","code":"G7"},{"name":"1994 Land Grant College","code":"G8"},{"name":"AbilityOne Non-Profit Agency","code":"A7"},{"name":"Airport Authority","code":"TR"},{"name":"Alaskan Native Corporation Owned Firm","code":"05"},{"name":"Alaskan @@ -24,29 +24,27 @@ interactions: American Owned","code":"FR"},{"name":"Black American Owned","code":"OY"}]}' headers: CF-RAY: - - 99f88ca22d29ad17-MSP + - 9d71a7919c1da1d9-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:16 GMT + - Wed, 04 Mar 2026 14:43:40 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=4xYKzbxhdurGdkpgrJ6Uywm8vMOjnNdWio5Y5hS7K7NtJ4ijaq0S%2FxVIipcFHofHFrOlgVXxRj1CJPQ%2B5bWD7%2FuPL3Ok2TmBkz6JirsusILCFdSDSuEwBIIqbg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Av%2FVm6qg6e75M04do%2Blhl%2FGmcEWATuozKaf8BMq%2FI6RmZ71UThSEINihVlXN0Pv8vVirJbfuMXhNq4UC5snzrww64k2K2W0HBH0CBFEBSJkEmE6Y%2Blww9%2Bxm"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '606' + - '607' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.018s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '8' + - '914' x-ratelimit-burst-reset: - - '59' + - '8' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '84' + - '1999674' x-ratelimit-daily-reset: - - '73213' + - '84968' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '8' + - '914' x-ratelimit-reset: - - '59' + - '8' status: code: 200 message: OK diff --git a/tests/cassettes/TestBusinessTypesIntegration.test_business_type_parsing_consistency b/tests/cassettes/TestBusinessTypesIntegration.test_business_type_parsing_consistency index 3c421ee..aa8f6de 100644 --- a/tests/cassettes/TestBusinessTypesIntegration.test_business_type_parsing_consistency +++ b/tests/cassettes/TestBusinessTypesIntegration.test_business_type_parsing_consistency @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/business_types/?page=1&limit=25 response: body: - string: '{"count":78,"next":"http://tango.makegov.com/api/business_types/?limit=25&page=2","previous":null,"results":[{"name":"1862 + string: '{"count":78,"next":"https://tango.makegov.com/api/business_types/?limit=25&page=2","previous":null,"results":[{"name":"1862 Land Grant College","code":"G6"},{"name":"1890 Land Grant College","code":"G7"},{"name":"1994 Land Grant College","code":"G8"},{"name":"AbilityOne Non-Profit Agency","code":"A7"},{"name":"Airport Authority","code":"TR"},{"name":"Alaskan Native Corporation Owned Firm","code":"05"},{"name":"Alaskan @@ -32,29 +32,27 @@ interactions: Government","code":"CY"},{"name":"Foreign Owned","code":"20"}]}' headers: CF-RAY: - - 99f88ca359176a43-MSP + - 9d71a7934dc9511f-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:16 GMT + - Wed, 04 Mar 2026 14:43:40 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=aYxoz9eKuyyNhmDjL6JdkOdnhc2rTW8Cj0cFzXZ62cBpOU864buD2vkfNKiAGvIVqeb%2FFj6dyzXjdzqWJubPVDptJGACgRtwZhF%2FNUBTUeB%2BQDfijz0eXFFfoA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=at5HuJrKFLY8dHqOm%2BOBS67QgxOqB0b53BEwnpQiC%2BZHWyHt3OF%2BBh%2FIu2wTjw2GJ4%2B43Q4kQrbkWKTGEpy53V3XbGqzFSKLAl0itXA1Y1fZv1Us3EGraANZ"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1367' + - '1368' cross-origin-opener-policy: - same-origin referrer-policy: @@ -64,27 +62,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.015s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '7' + - '913' x-ratelimit-burst-reset: - - '59' + - '8' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '83' + - '1999673' x-ratelimit-daily-reset: - - '73213' + - '84968' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '7' + - '913' x-ratelimit-reset: - - '59' + - '8' status: code: 200 message: OK diff --git a/tests/cassettes/TestBusinessTypesIntegration.test_list_business_types b/tests/cassettes/TestBusinessTypesIntegration.test_list_business_types index 3aac0be..673619d 100644 --- a/tests/cassettes/TestBusinessTypesIntegration.test_list_business_types +++ b/tests/cassettes/TestBusinessTypesIntegration.test_list_business_types @@ -16,35 +16,33 @@ interactions: uri: https://tango.makegov.com/api/business_types/?page=1&limit=5 response: body: - string: '{"count":78,"next":"http://tango.makegov.com/api/business_types/?limit=5&page=2","previous":null,"results":[{"name":"1862 + string: '{"count":78,"next":"https://tango.makegov.com/api/business_types/?limit=5&page=2","previous":null,"results":[{"name":"1862 Land Grant College","code":"G6"},{"name":"1890 Land Grant College","code":"G7"},{"name":"1994 Land Grant College","code":"G8"},{"name":"AbilityOne Non-Profit Agency","code":"A7"},{"name":"Airport Authority","code":"TR"}]}' headers: CF-RAY: - - 99f88ca0e902acee-MSP + - 9d71a78fd8cca212-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:16 GMT + - Wed, 04 Mar 2026 14:43:40 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=PD0tKr4PP4uihP44ycd9GZw9Nl9bJQlOaHr0%2B30G8mK4eoNm3RZcERA9jL1y4Z8%2F7JFwyOEJhww%2BHlf7q5rjAJeEK5vrAP7JV7MgE1xusEaQQA9z56G9MG9tUw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=R5QxB1SsmIN7cLbECagaZX9XU5TnCh2et9dSxY3FwrgMqCvudec8o3Cpw069Lqw0kqpPKP0bfkl76qGE3hqOrsZPNvCGzcPG3xUoW8F5QLPtnh4P5Q0gHqiX"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '343' + - '344' cross-origin-opener-policy: - same-origin referrer-policy: @@ -54,27 +52,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.014s + - 0.024s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '9' + - '915' x-ratelimit-burst-reset: - - '59' + - '8' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '85' + - '1999675' x-ratelimit-daily-reset: - - '73213' + - '84968' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '9' + - '915' x-ratelimit-reset: - - '59' + - '8' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_combined_filters_work_together b/tests/cassettes/TestContractsIntegration.test_combined_filters_work_together index 1d7a628..f7a71ba 100644 --- a/tests/cassettes/TestContractsIntegration.test_combined_filters_work_together +++ b/tests/cassettes/TestContractsIntegration.test_combined_filters_work_together @@ -13,49 +13,33 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&fiscal_year=2024&award_type=A&awarding_agency=4700 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_type=A&awarding_agency=4700&fiscal_year=2024&search=software response: body: - string: '{"count":21,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&fiscal_year=2024&award_type=A&awarding_agency=4700&cursor=WyIyMDI0LTA4LTI4IiwgIkNPTlRfQVdEXzQ3UVNTQzI0RkRaSEhfNDczMl80N1FTSEEyMUEwMDBEXzQ3MzIiXQ%3D%3D","cursor":"WyIyMDI0LTA4LTI4IiwgIkNPTlRfQVdEXzQ3UVNTQzI0RkRaSEhfNDczMl80N1FTSEEyMUEwMDBEXzQ3MzIiXQ==","results":[{"key":"CONT_AWD_47PD0524F0118_4740_47PN0323A0001_4740","piid":"47PD0524F0118","award_date":"2024-09-23","description":"BAS - SOFTWARE UPGRADE 116 NORTH MAIN STREET, HARRISONBURG, VA 22802, VA0686ZZ","total_contract_value":150184.34,"recipient":{"display_name":"DAE - SUNG LLC"}},{"key":"CONT_AWD_47QPCA24F0064_4732_47QPCA21A0008_4732","piid":"47QPCA24F0064","award_date":"2024-09-18","description":"LOGINGOV - SOFTWARE DEVELOPMENT SERVICES TOTAL CALL ORDER","total_contract_value":1471057.09,"recipient":{"display_name":"BIXAL - SOLUTIONS INCORPORATED"}},{"key":"CONT_AWD_47PD0424F0077_4740_47PD0319A0008_4740","piid":"47PD0424F0077","award_date":"2024-09-16","description":"THE - CONTRACTOR SHALL PROVIDE ALL MATERIAL, TOOLS, LABOR, EQUIPMENT AND SUPERVISION - TO REPLACE 1 MOTION CONTROL SCR OUTPUT SOFTWARE BOARD IN ELEVATOR 2 IN THE - POST OFFICE BUILDING 401 MARKET ST CAMDEN NJ 08102-1568 NJ0015ZZ","total_contract_value":3762.0,"recipient":{"display_name":"RAVEN - SERVICES CORP"}},{"key":"CONT_AWD_47QFAA24F0008_4732_47QFAA21A0002_4732","piid":"47QFAA24F0008","award_date":"2024-09-04","description":"NDMS SOFTWARE - DEVELOPMENT SUPPORT SERVICES IV","total_contract_value":10730405.97,"recipient":{"display_name":"DELOITTE - & TOUCHE LLP"}},{"key":"CONT_AWD_47QSSC24FDZHH_4732_47QSHA21A000D_4732","piid":"47QSSC24FDZHH","award_date":"2024-08-28","description":"INSTALLATION - TOOL, FIN: FRONT WIDTH: 2 INCHES HANDLE WIDTH: 1 INCH OVERALL LENGTH: 6-1/2 - INCHES MATERIAL: STEEL SPECTRUM SCIENCES AND SOFTWARE INC. SP548005-103 OR - EQUAL. (PARTIAL DESCRIPTION)","total_contract_value":2511.32,"recipient":{"display_name":"WRIGHT - TOOL COMPANY, LLC"}}],"count_type":"approximate"}' + string: '{"count":0,"next":null,"previous":null,"cursor":null,"previous_cursor":null,"results":[],"count_type":"approximate"}' headers: CF-RAY: - - 99f9bad1b99bb1e4-YYZ + - 9d71a6616e81a22d-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:27:34 GMT + - Wed, 04 Mar 2026 14:43:17 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=eSvfyiWH5soLXpt1tCgGAG2zwDn6f64Nhv%2BgzZuMcFJbDDdEs1ogZCirDxYnbothRGaUv8%2FEhlEuOmxdAtGDdqpazq5nGwZ0YALbDAN4XTxAtZyMX3jb2dmjOw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ZPxeXJ3eg%2BjtspA%2BkdQOR53TrPuQgYORNPnttYCybO6Y028dD1iX5WE%2B2aD6KrXNJK6Q4xLyICn7tEGfdQQ4BN67YnxNvoXKuedc8T%2BQzSaVqXm4BktzJfx%2F"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '2114' + - '116' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +49,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.022s + - 25.845s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '995' + - '992' x-ratelimit-burst-reset: - - '28' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999002' + - '1999757' x-ratelimit-daily-reset: - - '12' + - '84991' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '995' + - '992' x-ratelimit-reset: - - '28' + - '3' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_contract_cursor_pagination b/tests/cassettes/TestContractsIntegration.test_contract_cursor_pagination index a9323bf..3c82b30 100644 --- a/tests/cassettes/TestContractsIntegration.test_contract_cursor_pagination +++ b/tests/cassettes/TestContractsIntegration.test_contract_cursor_pagination @@ -16,30 +16,30 @@ interactions: uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":82287104,"next":"http://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAxLTI1IiwgImMwNmNjMTdlLWVhYjEtNTcxYi04M2ZiLWU2YTg1OTlkNTBmZiJd","previous":null,"cursor":"WyIyMDI2LTAxLTI1IiwgImMwNmNjMTdlLWVhYjEtNTcxYi04M2ZiLWU2YTg1OTlkNTBmZiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_15B51926F00000066_1540_36W79720D0001_3600","piid":"15B51926F00000066","award_date":"2026-01-25","description":"FCC - POLLOCK PHARMACY FRIDGE ITEMS","total_contract_value":163478.97,"recipient":{"display_name":"MCKESSON - CORPORATION"}},{"key":"CONT_AWD_36C26226N0339_3600_36C26025A0006_3600","piid":"36C26226N0339","award_date":"2026-01-25","description":"PATIENT - BED MAINTENANCE SERVICE CONTRACT","total_contract_value":368125.0,"recipient":{"display_name":"LE3 - LLC"}},{"key":"CONT_AWD_36C24526N0261_3600_36C24526D0024_3600","piid":"36C24526N0261","award_date":"2026-01-25","description":"IDIQ - FOR WATER INTRUSION REPAIRS","total_contract_value":89975.0,"recipient":{"display_name":"VENERGY - GROUP LLC"}},{"key":"CONT_AWD_15B51926F00000065_1540_36W79720D0001_3600","piid":"15B51926F00000065","award_date":"2026-01-25","description":"FCC - POLLOC EPCLUSA","total_contract_value":52148.25,"recipient":{"display_name":"MCKESSON - CORPORATION"}},{"key":"CONT_AWD_19JA8026P0451_1900_-NONE-_-NONE-","piid":"19JA8026P0451","award_date":"2026-01-25","description":"TOKYO-MINATO - WARD LAND PERMIT PAYMENT","total_contract_value":95432.2,"recipient":{"display_name":"MISCELLANEOUS - FOREIGN AWARDEES"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9c428df59983114a-ORD + - 9d71a704b9c0510a-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 19:53:06 GMT + - Wed, 04 Mar 2026 14:43:17 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=vSYACAc2%2Fn8TfRvdVOmJ4dIpaA2%2BsSAnQ%2Bg4FJvPPgC6p4SNKWLgQA84tK3BW9vNFzwkcDgJhx5D6ZBC%2Brtrrs3fylXLZVObYeDRGLAyXC7xQrzxBdHB3jqRfwQ%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ua%2FFsbhZ4D2BgMeFg7ebMzcnb8NuFQCywvKp4sIYpYNjevn%2BnBVgpczE3WLIu9fAj9DHAlBfV%2BzL%2FgJbeQv5yc7UYLSHDB%2BbRyApDPJLjUOF3Krsi%2Ft6ViG0"}]}' Server: - cloudflare Transfer-Encoding: @@ -49,7 +49,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '1620' + - '1649' cross-origin-opener-policy: - same-origin referrer-policy: @@ -59,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.041s + - 0.039s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '997' + - '991' x-ratelimit-burst-reset: - - '29' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999959' + - '1999756' x-ratelimit-daily-reset: - - '61635' + - '84991' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '997' + - '991' x-ratelimit-reset: - - '29' + - '3' status: code: 200 message: OK @@ -97,32 +97,37 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?limit=5&cursor=WyIyMDI2LTAxLTI1IiwgImMwNmNjMTdlLWVhYjEtNTcxYi04M2ZiLWU2YTg1OTlkNTBmZiJd&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=5&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":82287104,"next":"http://tango.makegov.com/api/contracts/?limit=5&cursor=WyIyMDI2LTAxLTI0IiwgImZmZjE2N2QxLTE5MjctNWEyOC05NmJmLTExYWM0MGRmN2M3OCJd&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value","previous":"http://tango.makegov.com/api/contracts/?limit=5&cursor=eyJ2IjogWyIyMDI2LTAxLTI1IiwgImI4ZTA4N2U2LTAyZWQtNTkyZS04Yzc3LWY1NjI5NzZiYTNkNyJdLCAiZCI6ICJwcmV2In0%3D&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value","cursor":"WyIyMDI2LTAxLTI0IiwgImZmZjE2N2QxLTE5MjctNWEyOC05NmJmLTExYWM0MGRmN2M3OCJd","previous_cursor":"eyJ2IjogWyIyMDI2LTAxLTI1IiwgImI4ZTA4N2U2LTAyZWQtNTkyZS04Yzc3LWY1NjI5NzZiYTNkNyJdLCAiZCI6ICJwcmV2In0=","results":[{"key":"CONT_AWD_36C78626N0155_3600_36C78624D0009_3600","piid":"36C78626N0155","award_date":"2026-01-25","description":"CONCRETE - GRAVE LINERS","total_contract_value":1980.0,"recipient":{"display_name":"WILBERT - FUNERAL SERVICES, INC."}},{"key":"CONT_AWD_15B51926F00000068_1540_36W79720D0001_3600","piid":"15B51926F00000068","award_date":"2026-01-25","description":"CONTROLLED - SUBS PO 3755","total_contract_value":5464.38,"recipient":{"display_name":"MCKESSON - CORPORATION"}},{"key":"CONT_AWD_36C24826P0388_3600_-NONE-_-NONE-","piid":"36C24826P0388","award_date":"2026-01-25","description":"IMPLANT - HIP","total_contract_value":172502.17,"recipient":{"display_name":"RED ONE - MEDICAL DEVICES LLC"}},{"key":"CONT_AWD_36C24826N0317_3600_36F79718D0437_3600","piid":"36C24826N0317","award_date":"2026-01-25","description":"WHEELCHAIR","total_contract_value":24108.3,"recipient":{"display_name":"PERMOBIL, - INC."}},{"key":"CONT_AWD_47QSSC26F37FG_4732_47QSEA21A0009_4732","piid":"47QSSC26F37FG","award_date":"2026-01-24","description":"BAG,PAPER - (GROCERS) 10-14 DAYS ARO","total_contract_value":71.26,"recipient":{"display_name":"CAPP - LLC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&cursor=WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value","previous":"https://tango.makegov.com/api/contracts/?limit=5&cursor=eyJ2IjogWyIyMDI2LTAzLTAzIiwgImZkODcwOTZlLTljMDctNWNlNC05NjVlLWI5ZmFiOTc5NTAzZSJdLCAiZCI6ICJwcmV2In0%3D&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value","cursor":"WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous_cursor":"eyJ2IjogWyIyMDI2LTAzLTAzIiwgImZkODcwOTZlLTljMDctNWNlNC05NjVlLWI5ZmFiOTc5NTAzZSJdLCAiZCI6ICJwcmV2In0=","results":[{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","description":"TITLE: + AT&T FIRST NET / 15 IPHONES & 2 TABLETS\nREQUESTOR: VEDA S FARMER\nREF AWARD/BPA: + 15F06720A0001516\nPOP DATES: 05/01/2026 TO 04/30/2027","total_contract_value":4786.76,"recipient":{"display_name":"ATT + MOBILITY LLC"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","description":"DISPATCH + SERVICES FOR CUMBERLAND GAP NATIONAL HISTORIC PARK","total_contract_value":22000.0,"recipient":{"display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","description":"EMCC002595EBM\nENHANCED + MOBILE SATELLITE SERVICES (EMSS) EQUIPMENT/ACTIVATION/REPAIR","total_contract_value":102.26,"recipient":{"display_name":"TRACE + SYSTEMS INC."}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":53379.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","description":"FBSU + TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBASE WITH FOUR OPTION + YEARS\nFBSU TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBILLINGS + ID/IQ MEDICAL SUPPORT SERVICES \nBASE OBLIGATED AMOUNT: $ 289,553.28\nAGGREGATE + AMOUNT:","total_contract_value":1554054.48,"recipient":{"display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9c428df72b65114a-ORD + - 9d71a7059ada510a-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 19:53:06 GMT + - Wed, 04 Mar 2026 14:43:18 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=YKHmVJbthFs4ESHbRKzDkkxKlg3eIMXGgPIE8je1JNdfiadrunCjplqfRnFH0D3K8tXAppMr%2BHdzRSJQZ2xodA0b%2BbT0bCeTreQ8twYk7woQnlXcGCBg127TOhA%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Ku882IlwvV%2B%2FI3V1Wi6kSfbL3bLA7TmSaGjVKxn3fX3W2l8x36V%2FHmAfYkoOWlvG6U%2BVj3yntbeCrwkY84G1elaeqd2ONjgn1Bi2JT%2BKrMohSdj8ASvsrjrM"}]}' Server: - cloudflare Transfer-Encoding: @@ -132,7 +137,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '1894' + - '2395' cross-origin-opener-policy: - same-origin referrer-policy: @@ -142,27 +147,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.051s + - 0.032s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '996' + - '990' x-ratelimit-burst-reset: - - '29' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999958' + - '1999755' x-ratelimit-daily-reset: - - '61635' + - '84991' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '996' + - '990' x-ratelimit-reset: - - '29' + - '3' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_contract_data_object_parsing b/tests/cassettes/TestContractsIntegration.test_contract_data_object_parsing index c07674f..b7719e1 100644 --- a/tests/cassettes/TestContractsIntegration.test_contract_data_object_parsing +++ b/tests/cassettes/TestContractsIntegration.test_contract_data_object_parsing @@ -13,49 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c1fc850e02b-MSP + - 9d71a5669960a1e2-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:55 GMT + - Wed, 04 Mar 2026 14:42:11 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=jlkCPnU7ioBdM1Ap5Z8GMKHV8VCH1maUszsBzKcYp16nbH%2FeVu6%2FfGfTJozOB28F%2Fo%2FuksOoQZZKNzZW5VwSKM8KAncTezMboYp%2BpIF2GlOObD3oqr9qOv2tXw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=HGAmSqJkqgfhzsY362%2Bd7yhAOzaIZZd6HFKU7Ypea7HPKG3TDXUaZNLqkMRZ6NYWUvGoHnEAkUwvPTTg9PjAOi6HeheyN5LyaWg25s9ciAEr7rC0zw1aLCiB"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1974' + - '1649' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.024s + - 0.037s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '988' + - '954' x-ratelimit-burst-reset: - - '57' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998681' + - '1999766' x-ratelimit-daily-reset: - - '90' + - '85057' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '988' + - '954' x-ratelimit-reset: - - '57' + - '3' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_contract_field_types b/tests/cassettes/TestContractsIntegration.test_contract_field_types index add7181..ef9674f 100644 --- a/tests/cassettes/TestContractsIntegration.test_contract_field_types +++ b/tests/cassettes/TestContractsIntegration.test_contract_field_types @@ -13,59 +13,57 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Crecipient%28display_name%29%2Cnaics_code%2Cpsc_code + uri: https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Crecipient%28display_name%29%2Cnaics_code%2Cpsc_code response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Crecipient%28display_name%29%2Cnaics_code%2Cpsc_code&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ==","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"naics_code":561612,"psc_code":"S206","recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"naics_code":236220,"psc_code":"Z2NB","recipient":{"display_name":"ONSITE - CONSTRUCTION GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"naics_code":541519,"psc_code":"DA01","recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"naics_code":541820,"psc_code":"R699","recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"naics_code":541519,"psc_code":"DA10","recipient":{"display_name":"REGENCY - CONSULTING INC"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","award_date":"2025-11-14","description":"COMPREHENSIVE - RISK ASSESSMENT AND MITIGATION - OCFO","total_contract_value":1499803.54,"naics_code":541211,"psc_code":"R408","recipient":{"display_name":"ERNST - & YOUNG LLP"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","award_date":"2025-11-14","description":"F5 - NETWORK MAINTENANCE RENEWAL","total_contract_value":73050.0,"naics_code":541519,"psc_code":"DA10","recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","award_date":"2025-11-14","description":"XSI - HARDWARE MAINTENANCE RENEWAL FY26","total_contract_value":21711.76,"naics_code":541519,"psc_code":"DA10","recipient":{"display_name":"GOVPLACE, - LLC"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","award_date":"2025-11-14","description":"TELLABS - STANDARD SUPPORT & PANORAMA INM","total_contract_value":13390.73,"naics_code":541519,"psc_code":"DE01","recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","description":"CISCO - NASA CISCO REMOTE VPN OBSOLESCENCE REPLACEMENT","total_contract_value":99974.58,"naics_code":541519,"psc_code":"7G20","recipient":{"display_name":"FCN - INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Crecipient%28display_name%29%2Cnaics_code%2Cpsc_code&cursor=WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"naics_code":541511,"psc_code":"DA01","recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"naics_code":513120,"psc_code":"7610","recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"naics_code":334516,"psc_code":"Q301","recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"naics_code":334516,"psc_code":"6550","recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"naics_code":322291,"psc_code":"8540","recipient":{"display_name":"Federal + Prison Industries, Inc"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","description":"TITLE: + AT&T FIRST NET / 15 IPHONES & 2 TABLETS\nREQUESTOR: VEDA S FARMER\nREF AWARD/BPA: + 15F06720A0001516\nPOP DATES: 05/01/2026 TO 04/30/2027","total_contract_value":4786.76,"naics_code":517312,"psc_code":"DG10","recipient":{"display_name":"ATT + MOBILITY LLC"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","description":"DISPATCH + SERVICES FOR CUMBERLAND GAP NATIONAL HISTORIC PARK","total_contract_value":22000.0,"naics_code":921190,"psc_code":"DG11","recipient":{"display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","description":"EMCC002595EBM\nENHANCED + MOBILE SATELLITE SERVICES (EMSS) EQUIPMENT/ACTIVATION/REPAIR","total_contract_value":102.26,"naics_code":517410,"psc_code":"7G22","recipient":{"display_name":"TRACE + SYSTEMS INC."}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":53379.0,"naics_code":334516,"psc_code":"6550","recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","description":"FBSU + TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBASE WITH FOUR OPTION + YEARS\nFBSU TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBILLINGS + ID/IQ MEDICAL SUPPORT SERVICES \nBASE OBLIGATED AMOUNT: $ 289,553.28\nAGGREGATE + AMOUNT:","total_contract_value":1554054.48,"naics_code":541990,"psc_code":"Q702","recipient":{"display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c1e8c1c511a-MSP + - 9d71a5653ef2acfc-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:55 GMT + - Wed, 04 Mar 2026 14:42:11 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ubQy9blFb7SfN%2FwKeYD%2BkqrSD2Ln61RPZ1LYCWuhclVCVViuPnU7Ch3IkKQCDK8HAHYg9PbLjoY1Zdg6O17blapMcKs1Z1hnh5T3rAPrmYTjn0dVmsp6E3qdPA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=EXPigEOcY3YT3Fo7S3E1N%2FQE9OrGJDMAVaOnAC2NQB2SXFyHpD%2BS2tlCpUTuZfvQ2OkvGozxBpIT%2BcxFu8O9DflB%2Bdrtztyl15Oa1mskLiqLCi3ExsYq4qlo"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '3594' + - '3683' cross-origin-opener-policy: - same-origin referrer-policy: @@ -75,27 +73,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.040s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '989' + - '955' x-ratelimit-burst-reset: - - '58' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998682' + - '1999767' x-ratelimit-daily-reset: - - '90' + - '85057' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '989' + - '955' x-ratelimit-reset: - - '58' + - '3' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[keyword-software] b/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[keyword-software] index 926ba36..d2a1296 100644 --- a/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[keyword-software] +++ b/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[keyword-software] @@ -13,48 +13,51 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software response: body: - string: '{"count":367674,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&cursor=WyIyMDI1LTEwLTI0IiwgIkNPTlRfQVdEXzM2QzI0ODI2RjAwMzNfMzYwMF9HUzM1RjA0MDhYXzQ3MzIiXQ%3D%3D","cursor":"WyIyMDI1LTEwLTI0IiwgIkNPTlRfQVdEXzM2QzI0ODI2RjAwMzNfMzYwMF9HUzM1RjA0MDhYXzQ3MzIiXQ==","results":[{"key":"CONT_AWD_36C25926N0050_3600_36C25922A0038_3600","piid":"36C25926N0050","award_date":"2025-10-27","description":"ACUSTAF - LABOR MANAGEMENT SOFTWARE","total_contract_value":1555761.6,"recipient":{"display_name":"ACUSTAF - DEVELOPMENT CORP"}},{"key":"CONT_AWD_2032H526P00006_2050_-NONE-_-NONE-","piid":"2032H526P00006","award_date":"2025-10-27","description":"THIS - REQUIREMENT IS FOR PENETRATION COLLABORATION TESTING SOFTWARE.","total_contract_value":12400.0,"recipient":{"display_name":"FCN - INC"}},{"key":"CONT_AWD_697DCK26F00006_6920_697DCK22D00001_6920","piid":"697DCK26F00006","award_date":"2025-10-24","description":"OPENTEXT - SOFTWARE RENEWAL","total_contract_value":53148.18,"recipient":{"display_name":"CDW - GOVERNMENT LLC"}},{"key":"CONT_AWD_47QSSC26P0759_4732_-NONE-_-NONE-","piid":"47QSSC26P0759","award_date":"2025-10-24","description":"IAW - RFQ 47QSSC25Q0249 & Q-373816, ANY NON-GSA SCHEDULE COMMERCIAL SOFTWARE IS - SUBJECT TO ANSYS GENERAL TERMS AND CONDITIONS (AGTC) AND ANY ADDITIONAL TERMS - APPLICABLE TO THE OFFER TYPE ON THE QUOTE. AGTC AND ADDITIONAL TERMS ARE AT - WWW.ANSYS.COM/AGTC","total_contract_value":55891.46,"recipient":{"display_name":"ANSYS - INC"}},{"key":"CONT_AWD_36C24826F0033_3600_GS35F0408X_4732","piid":"36C24826F0033","award_date":"2025-10-24","description":"ACUSTAF - LABOR MANAGEMENT SOFTWARE","total_contract_value":76648.0,"recipient":{"display_name":"ACUSTAF - DEVELOPMENT CORP"}}],"count_type":"approximate"}' + string: '{"count":364823,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&cursor=WyIyMDI2LTAzLTAyIiwgImZhY2YyZmRkLTU1NGEtNTYwOS1hNGZiLTIxMGQ5N2YyNGFkNiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAyIiwgImZhY2YyZmRkLTU1NGEtNTYwOS1hNGZiLTIxMGQ5N2YyNGFkNiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_11316026F0008OAS_1100_NNG15SC23B_8000","piid":"11316026F0008OAS","award_date":"2026-03-03","description":"SOFTWARE + LICENSING","total_contract_value":1230281.3,"recipient":{"display_name":"ACCESSAGILITY + LLC"}},{"key":"CONT_AWD_12639526F0284_12K3_GS07F0564X_4732","piid":"12639526F0284","award_date":"2026-03-03","description":"AGILENT + 8890 GAS CHROMATOGRAPH SYSTEM; 7650 ALS 50 VIAL AUTOMATIC LIQUID SAMPLER; + OPENLAB CHEMSTATION PC BUNDLE; INCLUDES SOFTWARE, CORE LICENSE AND PC; OPENLAB + CDS INSTRUMENT DRIVER FOR AGILENT GC LICENSE ONLY. ONE LICENSE REQUIRED PER + INSTRUMENT; I","total_contract_value":61611.94,"recipient":{"display_name":"AGILENT + TECHNOLOGIES INC"}},{"key":"CONT_AWD_697DCK26F00263_6920_697DCK22D00001_6920","piid":"697DCK26F00263","award_date":"2026-03-03","description":"PURCHASE + OF AUTOCAD SOFTWARE LICENSE RENEWAL","total_contract_value":38858.2,"recipient":{"display_name":"CDW + Government LLC"}},{"key":"CONT_AWD_28321326P00050025_2800_-NONE-_-NONE-","piid":"28321326P00050025","award_date":"2026-03-03","description":"ERAI + SOFTWARE SERVICE RENEWAL OF PO 28321325P00050043. THESE LICENSES PROVIDE THE + CYBER SUPPLY CHAIN TEAM ACCESS TO A COMPREHENSIVE DATABASE OF REPORTED COUNTERFEIT + INCIDENTS, RISK SUPPLIERS, AND SUSPECT PARTS.","total_contract_value":28750.0,"recipient":{"display_name":"ERAI, + INC."}},{"key":"CONT_AWD_47QSSC26F4SJH_4732_GS02FW0003_4730","piid":"47QSSC26F4SJH","award_date":"2026-03-02","description":"MOUSE, + DATA ENTRY: ITEMNAME MOUSE, OPTICAL SENSOR, 3-BUTTON SHAPE ERGONOMIC SHAPE + TYPE OPTICALDESIGN 800DPI BUTTON OPTIONS 2 NAVIGATION BUTTONS AND A SCROLL + WHEEL COLOR BLACK AND GREY SOFTWARE PLUG & PLAY PORT TYPE USB PORT OPERATING + SYSTEM ANY PC/ W","total_contract_value":163.6,"recipient":{"display_name":"NATIONAL + INDUSTRIES FOR THE BLIND"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f9b9208bd8a214-YYZ + - 9d71a568588aa1c4-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:26:24 GMT + - Wed, 04 Mar 2026 14:42:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=p9mBmV5CQqVQ1b2fws6tlzLhdhGUzxLGW3Tql8D4nV%2BrnNL0UJdBJoJjSK21AY%2BsYQ7tHe2a9I%2B55OFiHbqc91MdQ1cj0aW0GDhlHV6e1b5QTpzooIWGIbWA7w%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=etFCfsUC9p3daXHnhrYudogOLW3Y4foaT%2FYdMkn9IOd9V2Agh9u%2F5%2Boa3h7atUUBIkXILhZccsnCO163j6CJ7dAj4Pwt1bAEGEM8qxjwn%2FKYp0f6P8eX8Rg4"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1840' + - '2244' cross-origin-opener-policy: - same-origin referrer-policy: @@ -64,116 +67,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.023s + - 9.213s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '998' + - '984' x-ratelimit-burst-reset: - - '41' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999019' + - '1999765' x-ratelimit-daily-reset: - - '11' + - '85047' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '998' + - '984' x-ratelimit-reset: - - '41' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software - response: - body: - string: '{"count":367674,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&cursor=WyIyMDI1LTEwLTI0IiwgIkNPTlRfQVdEXzM2QzI0ODI2RjAwMzNfMzYwMF9HUzM1RjA0MDhYXzQ3MzIiXQ%3D%3D","cursor":"WyIyMDI1LTEwLTI0IiwgIkNPTlRfQVdEXzM2QzI0ODI2RjAwMzNfMzYwMF9HUzM1RjA0MDhYXzQ3MzIiXQ==","results":[{"key":"CONT_AWD_36C25926N0050_3600_36C25922A0038_3600","piid":"36C25926N0050","award_date":"2025-10-27","description":"ACUSTAF - LABOR MANAGEMENT SOFTWARE","total_contract_value":1555761.6,"recipient":{"display_name":"ACUSTAF - DEVELOPMENT CORP"}},{"key":"CONT_AWD_2032H526P00006_2050_-NONE-_-NONE-","piid":"2032H526P00006","award_date":"2025-10-27","description":"THIS - REQUIREMENT IS FOR PENETRATION COLLABORATION TESTING SOFTWARE.","total_contract_value":12400.0,"recipient":{"display_name":"FCN - INC"}},{"key":"CONT_AWD_697DCK26F00006_6920_697DCK22D00001_6920","piid":"697DCK26F00006","award_date":"2025-10-24","description":"OPENTEXT - SOFTWARE RENEWAL","total_contract_value":53148.18,"recipient":{"display_name":"CDW - GOVERNMENT LLC"}},{"key":"CONT_AWD_47QSSC26P0759_4732_-NONE-_-NONE-","piid":"47QSSC26P0759","award_date":"2025-10-24","description":"IAW - RFQ 47QSSC25Q0249 & Q-373816, ANY NON-GSA SCHEDULE COMMERCIAL SOFTWARE IS - SUBJECT TO ANSYS GENERAL TERMS AND CONDITIONS (AGTC) AND ANY ADDITIONAL TERMS - APPLICABLE TO THE OFFER TYPE ON THE QUOTE. AGTC AND ADDITIONAL TERMS ARE AT - WWW.ANSYS.COM/AGTC","total_contract_value":55891.46,"recipient":{"display_name":"ANSYS - INC"}},{"key":"CONT_AWD_36C24826F0033_3600_GS35F0408X_4732","piid":"36C24826F0033","award_date":"2025-10-24","description":"ACUSTAF - LABOR MANAGEMENT SOFTWARE","total_contract_value":76648.0,"recipient":{"display_name":"ACUSTAF - DEVELOPMENT CORP"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b949de6f543d-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Lk%2B2nEQUX3T3xm7%2FSLWUrrDKGP%2Bvnx4ux7MqyPpwKrsFabol7vmyg00sVYyOdjAgKAaPbR6OS5f%2BPNMzp2HCYBNJuzHfHLnxYsYD%2F0uj6u9cexYllDxKZKQYFA%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '1840' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.022s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '988' - x-ratelimit-burst-reset: - - '35' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999009' - x-ratelimit-daily-reset: - - '4' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '988' - x-ratelimit-reset: - - '35' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[psc_code-R425] b/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[psc_code-R425] index 885f2ba..3f66c94 100644 --- a/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[psc_code-R425] +++ b/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[psc_code-R425] @@ -13,48 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&psc=R425 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&psc=R425 response: body: - string: '{"count":184419,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&psc=R425&cursor=WyIyMDI1LTExLTA3IiwgIkNPTlRfQVdEXzM2Qzc3NjI2TjAwNDhfMzYwMF8zNkMxMEYyMkQwMDEzXzM2MDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTA3IiwgIkNPTlRfQVdEXzM2Qzc3NjI2TjAwNDhfMzYwMF8zNkMxMEYyMkQwMDEzXzM2MDAiXQ==","results":[{"key":"CONT_AWD_36C26326P0102_3600_-NONE-_-NONE-","piid":"36C26326P0102","award_date":"2025-11-14","description":"LIFE - SAFETY EVALUATIONS AND STATEMENT OF CONDITIONS SERVICE CONTRACT","total_contract_value":103600.0,"recipient":{"display_name":"HEIDELBERG - RESOURCES, LLC"}},{"key":"CONT_AWD_6913G626F40007N_6901_6913G621D300001_6901","piid":"6913G626F40007N","award_date":"2025-11-13","description":"MISSION - INFORMATION TECHNOLOGY SUPPORT (MITS) SUPPORT SERVICES; ARPA-I X-BRIDGE PROGRAM - SUPPORT","total_contract_value":187268.28,"recipient":{"display_name":"KBR - WYLE SERVICES, LLC"}},{"key":"CONT_AWD_68HERC26F0036_6800_68HERC25D0007_6800","piid":"68HERC26F0036","award_date":"2025-11-10","description":"PSC- - R425 NEW TASK ORDER \"INTEGRATION, DEVELOPMENT, AND SUPPORT OF ELECTRONIC - ENGINE CONTROLS\" COST-PLUS FIXED-FEE (CPFF) TERM-TYPE, 12-MONTH PERIOD OF - PERFORMANCE","total_contract_value":1337051.0,"recipient":{"display_name":"SOUTHWEST - RESEARCH INSTITUTE"}},{"key":"CONT_AWD_36C77626N0054_3600_36C10F22D0012_3600","piid":"36C77626N0054","award_date":"2025-11-07","description":"CMS - PROFESSIONAL SERVICES LEBANON PA","total_contract_value":2053771.2,"recipient":{"display_name":"SSPC - LLC"}},{"key":"CONT_AWD_36C77626N0048_3600_36C10F22D0013_3600","piid":"36C77626N0048","award_date":"2025-11-07","description":"CMS - PROFESSIONAL SERVICES HOUSTON, TX","total_contract_value":1231450.24,"recipient":{"display_name":"VALI - COOPER INTERNATIONAL, LLC"}}],"count_type":"approximate"}' + string: '{"count":195980,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&psc=R425&cursor=WyIyMDI2LTAzLTAyIiwgIjVhZGNmYjEwLWJkZGQtNTVjMS1iZWI5LTdmMWFkYzUxNzZlYiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAyIiwgIjVhZGNmYjEwLWJkZGQtNTVjMS1iZWI5LTdmMWFkYzUxNzZlYiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_68HERW26F0043_6800_68HERC23D0011_6800","piid":"68HERW26F0043","award_date":"2026-03-03","description":"R425 + - SUPPORT FOR IMPLEMENTING THE PFAS OUTREACH INITIATIVE","total_contract_value":2176071.0,"recipient":{"display_name":"CADMUS + GROUP LLC, THE"}},{"key":"CONT_AWD_140G0126P0047_1434_-NONE-_-NONE-","piid":"140G0126P0047","award_date":"2026-03-03","description":"STUDENT + SERVICE CONTRACT-DO","total_contract_value":225000.0,"recipient":{"display_name":"CAMILLE + DO"}},{"key":"CONT_AWD_36C77626N0279_3600_36C77622D0029_3600","piid":"36C77626N0279","award_date":"2026-03-03","description":"EHRM + SUPPORT SERVICES","total_contract_value":901798.0,"recipient":{"display_name":"DAV + ENERGY SOLUTIONS, INC."}},{"key":"CONT_AWD_19FR6326P0620_1900_-NONE-_-NONE-","piid":"19FR6326P0620","award_date":"2026-03-02","description":"OBO + MSGR SEWER CONNECTION COMPLIANCE WORKS 7115","total_contract_value":18630.46,"recipient":{"display_name":"MISCELLANEOUS + FOREIGN AWARDEES"}},{"key":"CONT_AWD_140G0226P0014_1434_-NONE-_-NONE-","piid":"140G0226P0014","award_date":"2026-03-02","description":"STUDENT + SERVICES CONTRACT - ANYA CHRISTOFFERSON","total_contract_value":9728.04,"recipient":{"display_name":"Anya + Christofferson"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f9b92289e5a24a-YYZ + - 9d71a5a368fe348b-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:26:25 GMT + - Wed, 04 Mar 2026 14:42:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=dt%2BCBkOvsiXGBF4SCwGRIbTWzGIr6%2Bx%2BxaMkYaND1y0cSjynRz5F7mi90LIAM5Mhbhv9P1YPry9UtMdILmsjmaP5%2BbYXMJcXRVoZK7dSxCtNY2ZFwRE%2Bhiuitw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AMyU1IlrVXBTGcN33eWklVjjCLdPmojSXmKevumohoy1ciWg44wXaEBVIFT3uhOXpFI5wl80jSI20%2Bv%2FffRK9RMarMQAxm9I%2BajWETKDG4t0d7Eeg2KO7aaV"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1880' + - '1657' cross-origin-opener-policy: - same-origin referrer-policy: @@ -64,116 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.027s + - 0.044s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '997' + - '984' x-ratelimit-burst-reset: - - '41' + - '46' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999018' + - '1999764' x-ratelimit-daily-reset: - - '10' + - '85047' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '997' + - '984' x-ratelimit-reset: - - '41' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&psc=R425 - response: - body: - string: '{"count":184419,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&psc=R425&cursor=WyIyMDI1LTExLTA3IiwgIkNPTlRfQVdEXzM2Qzc3NjI2TjAwNDhfMzYwMF8zNkMxMEYyMkQwMDEzXzM2MDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTA3IiwgIkNPTlRfQVdEXzM2Qzc3NjI2TjAwNDhfMzYwMF8zNkMxMEYyMkQwMDEzXzM2MDAiXQ==","results":[{"key":"CONT_AWD_36C26326P0102_3600_-NONE-_-NONE-","piid":"36C26326P0102","award_date":"2025-11-14","description":"LIFE - SAFETY EVALUATIONS AND STATEMENT OF CONDITIONS SERVICE CONTRACT","total_contract_value":103600.0,"recipient":{"display_name":"HEIDELBERG - RESOURCES, LLC"}},{"key":"CONT_AWD_6913G626F40007N_6901_6913G621D300001_6901","piid":"6913G626F40007N","award_date":"2025-11-13","description":"MISSION - INFORMATION TECHNOLOGY SUPPORT (MITS) SUPPORT SERVICES; ARPA-I X-BRIDGE PROGRAM - SUPPORT","total_contract_value":187268.28,"recipient":{"display_name":"KBR - WYLE SERVICES, LLC"}},{"key":"CONT_AWD_68HERC26F0036_6800_68HERC25D0007_6800","piid":"68HERC26F0036","award_date":"2025-11-10","description":"PSC- - R425 NEW TASK ORDER \"INTEGRATION, DEVELOPMENT, AND SUPPORT OF ELECTRONIC - ENGINE CONTROLS\" COST-PLUS FIXED-FEE (CPFF) TERM-TYPE, 12-MONTH PERIOD OF - PERFORMANCE","total_contract_value":1337051.0,"recipient":{"display_name":"SOUTHWEST - RESEARCH INSTITUTE"}},{"key":"CONT_AWD_36C77626N0054_3600_36C10F22D0012_3600","piid":"36C77626N0054","award_date":"2025-11-07","description":"CMS - PROFESSIONAL SERVICES LEBANON PA","total_contract_value":2053771.2,"recipient":{"display_name":"SSPC - LLC"}},{"key":"CONT_AWD_36C77626N0048_3600_36C10F22D0013_3600","piid":"36C77626N0048","award_date":"2025-11-07","description":"CMS - PROFESSIONAL SERVICES HOUSTON, TX","total_contract_value":1231450.24,"recipient":{"display_name":"VALI - COOPER INTERNATIONAL, LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b94b6f0da214-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=gQUD0VMLLVhjQdelMxlRrzxHAbP1pJAmnWCpCxTpw%2B6YpoxAgEnBXB1b%2F%2FEin3uFM6wMLnIFTMitepNrgadZ6Uts8UoFVyuEumcKKw14UToExKtidfq8MKhzWA%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '1880' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.020s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '987' - x-ratelimit-burst-reset: - - '35' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999008' - x-ratelimit-daily-reset: - - '4' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '987' - x-ratelimit-reset: - - '35' + - '46' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_awarding_agency_filter b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_awarding_agency_filter index 6656322..dbcf6fa 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_awarding_agency_filter +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_awarding_agency_filter @@ -13,49 +13,48 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&awarding_agency=4700 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&awarding_agency=4700 response: body: - string: '{"count":402447,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&awarding_agency=4700&cursor=WyIyMDI1LTExLTEzIiwgIkNPTlRfQVdEXzQ3UVNXQTI2UDAzSkRfNDczMl8tTk9ORS1fLU5PTkUtIl0%3D","cursor":"WyIyMDI1LTExLTEzIiwgIkNPTlRfQVdEXzQ3UVNXQTI2UDAzSkRfNDczMl8tTk9ORS1fLU5PTkUtIl0=","results":[{"key":"CONT_AWD_47QSWA26P03JH_4732_-NONE-_-NONE-","piid":"47QSWA26P03JH","award_date":"2025-11-13","description":"STONE, - SHARPENING, UN-MOUNTED, NOT OIL IMPREGNATED, NATURAL (NOVACULITE)SQUARE STYLE, - HARD DENSITY, 3.00-3.500 INCH DENSITY, .500 INCH WIDTH, .500 INCH THICKNESS","total_contract_value":187.88,"recipient":{"display_name":"F - & M MICRO PRODUCTS INC"}},{"key":"CONT_AWD_47QSWA26P03JG_4732_-NONE-_-NONE-","piid":"47QSWA26P03JG","award_date":"2025-11-13","description":"FASTENER - TAPE, HOOK & LOOP:BLACK VELCRO HOOK& LOOP FASTENER TAPE W/ADHESIVE BACK. WIDTH-3/4 - IN WIDE, UI: RO/5YD(5 YARDS PER ROLL)","total_contract_value":64.5,"recipient":{"display_name":"MBA - OFFICE SUPPLY, INC."}},{"key":"CONT_AWD_47QSWA26P03JF_4732_-NONE-_-NONE-","piid":"47QSWA26P03JF","award_date":"2025-11-13","description":"CLEANER, - CONDENSER COIL:ACIDIC AIR CONDITIONING COIL CLEANER. FOAMINM BLEND OF SOLVENTS, - WETTING AGENTS AND ACIDS SPECIFICALLY MADE FOR CLEANING ALUMINUM FINNED AIR-COOLED - CONDENSERS. DILUTION RATIO OF 1 PART CLEANER TO 3 PARTS WATER. ONE (1) EACH - FI","total_contract_value":367.37,"recipient":{"display_name":"NOREX GROUP, - LLC"}},{"key":"CONT_AWD_47QSWA26P03JE_4732_-NONE-_-NONE-","piid":"47QSWA26P03JE","award_date":"2025-11-13","description":"CLOTH,CLEANING","total_contract_value":44.85,"recipient":{"display_name":"PREMIER - & COMPANIES, INC."}},{"key":"CONT_AWD_47QSWA26P03JD_4732_-NONE-_-NONE-","piid":"47QSWA26P03JD","award_date":"2025-11-13","description":"FLOUR - SIFTER","total_contract_value":2122.0,"recipient":{"display_name":"F & M MICRO - PRODUCTS INC"}}],"count_type":"approximate"}' + string: '{"count":438863,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&awarding_agency=4700&cursor=WyIyMDI2LTAzLTAzIiwgImQ4MGViMDdkLTRlNjktNTEwNS04NmQ1LWU5NTI4MTJhMTRlNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImQ4MGViMDdkLTRlNjktNTEwNS04NmQ1LWU5NTI4MTJhMTRlNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_47PC5226F0162_4740_47PN0323A0001_4740","piid":"47PC5226F0162","award_date":"2026-03-03","description":"THIS + REQUIREMENT IS TO REPAIR CHILLER #2 AND DESCALING OF CHILLERS #1 AND #2 LOCATED + ON THE 11TH FLOOR OF THE RICHMOND FEDERAL OFFICE BUILDING, 400 N. 8TH STREET + RICHMOND, VA.","total_contract_value":42670.6,"recipient":{"display_name":"DAE + SUNG LLC"}},{"key":"CONT_AWD_47PC5226F0161_4740_47PB0023A0008_4740","piid":"47PC5226F0161","award_date":"2026-03-03","description":"MUSKIE + FEDERAL BUILDING VENTING INSTALLATION, AUGUSTA, ME. THIS PROJECT REMOVES + EXISTING VENTING AND INSTALLS NEW VENTING.","total_contract_value":105712.26,"recipient":{"display_name":"ACTION + FACILITIES MANAGEMENT INC"}},{"key":"CONT_AWD_47PC5426F0097_4740_47PD0319A0008_4740","piid":"47PC5426F0097","award_date":"2026-03-03","description":"BOGGS + PIPE LEAKS","total_contract_value":9761.1,"recipient":{"display_name":"RAVEN + SERVICES CORP"}},{"key":"CONT_AWD_47PD5326F0096_4740_47PF0023A0006_4740","piid":"47PD5326F0096","award_date":"2026-03-03","description":"THE + REPAIR FRONT PARKING LOT SECURITY LED LIGHT FIXTURES WILL BE PERFORMED AT + THE BISHOP HENRY WHIPPLE FEDERAL BUILDING IN 1 FEDERAL DR, FORT SNELLING, + MN 55111-4008.","total_contract_value":32070.5,"recipient":{"display_name":"CMI + MANAGEMENT, LLC"}},{"key":"CONT_AWD_47PC5326F0050_4740_47PB0022A0002_4740","piid":"47PC5326F0050","award_date":"2026-03-03","description":"CIRCUIT + LIGHTING REPAIR","total_contract_value":4396.18,"recipient":{"display_name":"KCORP + TECHNOLOGY SERVICES, INC."}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c18b9f61e27-MSP + - 9d71a55dfb4bacd6-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:54 GMT + - Wed, 04 Mar 2026 14:42:10 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=qlhkNS1%2FHntX%2FIS1n0ZoqhAkM8scYa0plUkcBEH1rd8FZ%2FMxMj0mwLaZeUzpREqnC%2Fb0Qgz2iOsy4BKSTKcohRjQB1rHPsxA9c%2F%2BFp%2F55dSnUAJV5zzioN%2FJ8Q%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=OyVrqRSeNn9pTd%2FO7lGbfpODJ2Jq3PrksZIdpQnENeMlcH2HAfFbRiClygiWkOrPUwu7I9NC6RtBhBOBmPYByIwxgjVZqukOWUtNY0QaUYu64EUSDhWRSvq4"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1994' + - '1989' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,117 +64,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.020s + - 0.047s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '994' + - '960' x-ratelimit-burst-reset: - - '58' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998687' + - '1999772' x-ratelimit-daily-reset: - - '91' + - '85058' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '994' + - '960' x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&awarding_agency=4700 - response: - body: - string: '{"count":402447,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&awarding_agency=4700&cursor=WyIyMDI1LTExLTEzIiwgIkNPTlRfQVdEXzQ3UVNXQTI2UDAzSkRfNDczMl8tTk9ORS1fLU5PTkUtIl0%3D","cursor":"WyIyMDI1LTExLTEzIiwgIkNPTlRfQVdEXzQ3UVNXQTI2UDAzSkRfNDczMl8tTk9ORS1fLU5PTkUtIl0=","results":[{"key":"CONT_AWD_47QSWA26P03JH_4732_-NONE-_-NONE-","piid":"47QSWA26P03JH","award_date":"2025-11-13","description":"STONE, - SHARPENING, UN-MOUNTED, NOT OIL IMPREGNATED, NATURAL (NOVACULITE)SQUARE STYLE, - HARD DENSITY, 3.00-3.500 INCH DENSITY, .500 INCH WIDTH, .500 INCH THICKNESS","total_contract_value":187.88,"recipient":{"display_name":"F - & M MICRO PRODUCTS INC"}},{"key":"CONT_AWD_47QSWA26P03JG_4732_-NONE-_-NONE-","piid":"47QSWA26P03JG","award_date":"2025-11-13","description":"FASTENER - TAPE, HOOK & LOOP:BLACK VELCRO HOOK& LOOP FASTENER TAPE W/ADHESIVE BACK. WIDTH-3/4 - IN WIDE, UI: RO/5YD(5 YARDS PER ROLL)","total_contract_value":64.5,"recipient":{"display_name":"MBA - OFFICE SUPPLY, INC."}},{"key":"CONT_AWD_47QSWA26P03JF_4732_-NONE-_-NONE-","piid":"47QSWA26P03JF","award_date":"2025-11-13","description":"CLEANER, - CONDENSER COIL:ACIDIC AIR CONDITIONING COIL CLEANER. FOAMINM BLEND OF SOLVENTS, - WETTING AGENTS AND ACIDS SPECIFICALLY MADE FOR CLEANING ALUMINUM FINNED AIR-COOLED - CONDENSERS. DILUTION RATIO OF 1 PART CLEANER TO 3 PARTS WATER. ONE (1) EACH - FI","total_contract_value":367.37,"recipient":{"display_name":"NOREX GROUP, - LLC"}},{"key":"CONT_AWD_47QSWA26P03JE_4732_-NONE-_-NONE-","piid":"47QSWA26P03JE","award_date":"2025-11-13","description":"CLOTH,CLEANING","total_contract_value":44.85,"recipient":{"display_name":"PREMIER - & COMPANIES, INC."}},{"key":"CONT_AWD_47QSWA26P03JD_4732_-NONE-_-NONE-","piid":"47QSWA26P03JD","award_date":"2025-11-13","description":"FLOUR - SIFTER","total_contract_value":2122.0,"recipient":{"display_name":"F & M MICRO - PRODUCTS INC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b9430da65425-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:30 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=DCQup15PEKHEUV%2F7TNM5Cdh1UXA2KtOart%2BSzS7Ha7Pv3zAxJ8cdkdyrhWCdXP9nFElVirvLw0Eu48tPb6LlybU%2FYzML8qSF6KfmIH4XGi%2FUYMWHLEwPhrvUyQ%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '1994' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.021s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '993' - x-ratelimit-burst-reset: - - '36' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999014' - x-ratelimit-daily-reset: - - '5' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '993' - x-ratelimit-reset: - - '36' + - '4' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_date_range_filter b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_date_range_filter index f3752eb..de32e6d 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_date_range_filter +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_date_range_filter @@ -13,45 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31 response: body: - string: '{"count":5547902,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31&cursor=WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ%3D%3D","cursor":"WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ==","results":[{"key":"CONT_AWD_W91QVN24F5018_9700_W91QVN23A0015_9700","piid":"W91QVN24F5018","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":2718.57,"recipient":{"display_name":"PAJU - SANITATION CORP."}},{"key":"CONT_AWD_W91QVN24F5017_9700_W91QVN19D0046_9700","piid":"W91QVN24F5017","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":7889.61,"recipient":{"display_name":"KOREA - HOUSING MANAGEMENT CO.,LTD"}},{"key":"CONT_AWD_W912PF24PV002_9700_-NONE-_-NONE-","piid":"W912PF24PV002","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN USD.","total_contract_value":126244.26,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W912PF24PV001_9700_-NONE-_-NONE-","piid":"W912PF24PV001","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN EUR.","total_contract_value":232440.24,"recipient":{"display_name":"GPC - FOREIGN CONTRACTOR CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W9113M24F0005_9700_W52P1J16D0019_9700","piid":"W9113M24F0005","award_date":"2023-12-31","description":"RENEWAL - FY24 NUTANIX LICENSE","total_contract_value":520635.33,"recipient":{"display_name":"GOVERNMENT - ACQUISITIONS INC"}}],"count_type":"approximate"}' + string: '{"count":726293,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31&cursor=WyIyMDIzLTEyLTMxIiwgImZlMDM5MzUxLWNkYzMtNWEyOC05OTc4LTc5NmIyYTIwZTM5YSJd","previous":null,"cursor":"WyIyMDIzLTEyLTMxIiwgImZlMDM5MzUxLWNkYzMtNWEyOC05OTc4LTc5NmIyYTIwZTM5YSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_SPE30024FHDVS_9700_SPE30022DA000_9700","piid":"SPE30024FHDVS","award_date":"2023-12-31","description":"4563205804!DOUGHNUTS, + FRESH, VARIETY PACK,","total_contract_value":185.92,"recipient":{"display_name":"GLOBAL + FOOD SERVICES COMPANY"}},{"key":"CONT_AWD_SPE2DV24FTNFB_9700_SPE2DV17D0200_9700","piid":"SPE2DV24FTNFB","award_date":"2023-12-31","description":"4563205985!KIT + FOL CATH TMM-FC 1S","total_contract_value":242.16,"recipient":{"display_name":"CARDINAL + HEALTH 200, LLC"}},{"key":"CONT_AWD_SPE2DV24FTNFT_9700_SPE2DV17D0200_9700","piid":"SPE2DV24FTNFT","award_date":"2023-12-31","description":"4563205978!INSOLE + CUST SZ A 2S","total_contract_value":468.0,"recipient":{"display_name":"CARDINAL + HEALTH 200, LLC"}},{"key":"CONT_AWD_SPE2D924F1092_9700_SPE2DX15D0022_9700","piid":"SPE2D924F1092","award_date":"2023-12-31","description":"8510360826!ASPIRIN + TABLETS,USP","total_contract_value":1.22,"recipient":{"display_name":"Cardinal + Health, Inc."}},{"key":"CONT_AWD_47QSSC24F23L7_4732_47QSHA21A0017_4732","piid":"47QSSC24F23L7","award_date":"2023-12-31","description":"CEILING + TILE 24 W 24 L 5/8 THICK PK16","total_contract_value":1400.4,"recipient":{"display_name":"W.W. + GRAINGER, INC."}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c19d9251e27-MSP + - 9d71a55f4b06ad02-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:54 GMT + - Wed, 04 Mar 2026 14:42:10 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=TAISzhKyLbhmdGYWwjQiYlqmze%2FIbUv5vHCWLeUt01ztkHcH4AgWCHAB5Ay4D8P70%2B32qDAR0Js1cV%2FsZsiTDPA5Y8Jh15T6WwXna0fJJ0UJNOJ6on4BJLUa8Q%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=X6kcH095LMxwHooOS8H%2BKClS4gmUSLUvUoL9v9GtsckmCKftOuOdGUiUgWWB06oc6SPA82W2XRzId8iAonlB00kj8O7g3qsovJ89NlpFZPU1NgvAc3NUEqgl"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1792' + - '1682' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,113 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.047s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '993' + - '959' x-ratelimit-burst-reset: - - '58' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998686' + - '1999771' x-ratelimit-daily-reset: - - '91' + - '85058' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '993' + - '959' x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31 - response: - body: - string: '{"count":5547902,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31&cursor=WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ%3D%3D","cursor":"WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ==","results":[{"key":"CONT_AWD_W91QVN24F5018_9700_W91QVN23A0015_9700","piid":"W91QVN24F5018","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":2718.57,"recipient":{"display_name":"PAJU - SANITATION CORP."}},{"key":"CONT_AWD_W91QVN24F5017_9700_W91QVN19D0046_9700","piid":"W91QVN24F5017","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":7889.61,"recipient":{"display_name":"KOREA - HOUSING MANAGEMENT CO.,LTD"}},{"key":"CONT_AWD_W912PF24PV002_9700_-NONE-_-NONE-","piid":"W912PF24PV002","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN USD.","total_contract_value":126244.26,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W912PF24PV001_9700_-NONE-_-NONE-","piid":"W912PF24PV001","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN EUR.","total_contract_value":232440.24,"recipient":{"display_name":"GPC - FOREIGN CONTRACTOR CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W9113M24F0005_9700_W52P1J16D0019_9700","piid":"W9113M24F0005","award_date":"2023-12-31","description":"RENEWAL - FY24 NUTANIX LICENSE","total_contract_value":520635.33,"recipient":{"display_name":"GOVERNMENT - ACQUISITIONS INC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b94489d836a4-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:30 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=nu2kdJY%2B8AXAtwh7nBDqLgAw%2F%2BrU6qmcy6H3jOrScOOM%2Bs%2BxKQosZu64b1PCHhHbeSG8ntxOGW1SRoJuH%2FzuKvx%2F3LySd3Ih%2BV83l2p2jN%2B%2FvXggrMCTdhqEgg%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '1792' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.021s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '992' - x-ratelimit-burst-reset: - - '36' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999013' - x-ratelimit-daily-reset: - - '5' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '992' - x-ratelimit-reset: - - '36' + - '4' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_flat b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_flat index 7cb6f92..5ef5cc1 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_flat +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_flat @@ -13,49 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient.display_name":"REDCON - SOLUTIONS GROUP LLC"},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient.display_name":"ONSITE CONSTRUCTION - GROUP LLC"},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient.display_name":"MERLIN - INTERNATIONAL, INC."},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient.display_name":"RACK-WILDNER - & REESE, INC."},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient.display_name":"REGENCY - CONSULTING INC"}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient.display_name":"PEOPLE + DESIGNS INC"},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient.display_name":"ELSEVIER + INC."},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient.display_name":"PHAMATECH, + INCORPORATED"},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient.display_name":"BIOMERIEUX + INC"},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient.display_name":"Federal + Prison Industries, Inc"}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c176bd2a219-MSP + - 9d71a55c1b98a1f1-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:54 GMT + - Wed, 04 Mar 2026 14:42:10 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=lxAu6fed8Gi3OJwyQOyVfYe2eJUYt98YkXxSUMhZmlZ1zkkYv07jhX7Vh8LqKhOrlGRgVCYC08oEk%2BL3GEgwHuErsCQ7pYbwuP9p9Hvw5%2BNi7Z2feNj%2BhGMloA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CPIDZMdZy5qmeQQg5k8j9ijT2Ywkx0WhfoDSF4JoRK5SrhuapIgxTihmOl581Xjo5xHCl5yhMBcapGXPEZAqnHxDzv%2FAnxtGqFFa3bTugYUiitKRfTKx%2Fm1R"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1964' + - '1639' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.043s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '995' + - '961' x-ratelimit-burst-reset: - - '59' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998688' + - '1999773' x-ratelimit-daily-reset: - - '92' + - '85059' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '995' + - '961' x-ratelimit-reset: - - '59' + - '4' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_naics_code_filter b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_naics_code_filter index 9a708e9..f0d8435 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_naics_code_filter +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_naics_code_filter @@ -13,59 +13,57 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ==","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","award_date":"2025-11-14","description":"COMPREHENSIVE - RISK ASSESSMENT AND MITIGATION - OCFO","total_contract_value":1499803.54,"recipient":{"display_name":"ERNST - & YOUNG LLP"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","award_date":"2025-11-14","description":"F5 - NETWORK MAINTENANCE RENEWAL","total_contract_value":73050.0,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","award_date":"2025-11-14","description":"XSI - HARDWARE MAINTENANCE RENEWAL FY26","total_contract_value":21711.76,"recipient":{"display_name":"GOVPLACE, - LLC"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","award_date":"2025-11-14","description":"TELLABS - STANDARD SUPPORT & PANORAMA INM","total_contract_value":13390.73,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","description":"CISCO - NASA CISCO REMOTE VPN OBSOLESCENCE REPLACEMENT","total_contract_value":99974.58,"recipient":{"display_name":"FCN - INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","description":"TITLE: + AT&T FIRST NET / 15 IPHONES & 2 TABLETS\nREQUESTOR: VEDA S FARMER\nREF AWARD/BPA: + 15F06720A0001516\nPOP DATES: 05/01/2026 TO 04/30/2027","total_contract_value":4786.76,"recipient":{"display_name":"ATT + MOBILITY LLC"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","description":"DISPATCH + SERVICES FOR CUMBERLAND GAP NATIONAL HISTORIC PARK","total_contract_value":22000.0,"recipient":{"display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","description":"EMCC002595EBM\nENHANCED + MOBILE SATELLITE SERVICES (EMSS) EQUIPMENT/ACTIVATION/REPAIR","total_contract_value":102.26,"recipient":{"display_name":"TRACE + SYSTEMS INC."}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":53379.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","description":"FBSU + TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBASE WITH FOUR OPTION + YEARS\nFBSU TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBILLINGS + ID/IQ MEDICAL SUPPORT SERVICES \nBASE OBLIGATED AMOUNT: $ 289,553.28\nAGGREGATE + AMOUNT:","total_contract_value":1554054.48,"recipient":{"display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c1c8cb7a1cd-MSP + - 9d71a5629819ad1d-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:55 GMT + - Wed, 04 Mar 2026 14:42:11 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=K9lUwO5uArUDGQ1NjITTlohr45LmFnqqgwNodusTKTSc0rMDn6SeaQC96fswU5O0Ln3QTFDuA6Jt%2BGDxZR%2Bc%2FAvXs%2Bi7z2E8Aee%2BO5neTEkR0Hzxi%2BeYbOLKvg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=0GnMpTLIhcd97kFr%2BO5ipZZ9fpJmu03y389BxCxGV%2F4LCyN0ZCMXR%2FDIOKNtcnC%2FGwajL041u1gA22nGI2g3d58xeV%2Fd7kA6WM0ZR%2BkDjGECYlewcf2HbE3P"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '3190' + - '3279' cross-origin-opener-policy: - same-origin referrer-policy: @@ -75,27 +73,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.020s + - 0.050s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '991' + - '957' x-ratelimit-burst-reset: - - '58' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998684' + - '1999769' x-ratelimit-daily-reset: - - '91' + - '85058' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '991' + - '957' x-ratelimit-reset: - - '58' + - '3' status: code: 200 message: OK @@ -113,62 +111,55 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cnaics_code&naics=541511 + uri: https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cnaics_code&naics=541511 response: body: - string: '{"count":108453,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cnaics_code&naics=541511&cursor=WyIyMDI1LTExLTA2IiwgIkNPTlRfQVdEXzM2QzI2MjI2TjAxNjBfMzYwMF8zNkMxMEcyMUEwMDAzXzM2MDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTA2IiwgIkNPTlRfQVdEXzM2QzI2MjI2TjAxNjBfMzYwMF8zNkMxMEcyMUEwMDAzXzM2MDAiXQ==","results":[{"key":"CONT_AWD_36C25926N0113_3600_36C10G23A0004_3600","piid":"36C25926N0113","award_date":"2025-11-14","description":"INNOVIAN - PROFESSIONALSERVICES-CLINICAL/TRAINING","total_contract_value":13280.0,"naics_code":541511,"recipient":{"display_name":"DRAEGER - INC"}},{"key":"CONT_AWD_2033H626F00020_2036_2033H622D00003_2036","piid":"2033H626F00020","award_date":"2025-11-14","description":"SALESFORCE - PROFESSIONAL SERVICES - OPERATION & MAINTENANCE (O&M)","total_contract_value":1547899.0,"naics_code":541511,"recipient":{"display_name":"SOUTHPOINT - CONSULTING, INC."}},{"key":"CONT_AWD_70Z04026P60414Y00_7008_-NONE-_-NONE-","piid":"70Z04026P60414Y00","award_date":"2025-11-13","description":"SIX-MONTH - PROTOTYPE DEVELOPMENT AND TESTING OF FLOORGANISE''S FLOOR2PLAN TIME KEEPING - MODULE AT CG YARD","total_contract_value":50000.0,"naics_code":541511,"recipient":{"display_name":"FLOORGANISE - USA INC"}},{"key":"CONT_AWD_36C26126N0206_3600_36C10G21A0003_3600","piid":"36C26126N0206","award_date":"2025-11-13","description":"MEDICAL - RECORD CODING","total_contract_value":112395.0,"naics_code":541511,"recipient":{"display_name":"COOPER - THOMAS LLC"}},{"key":"CONT_AWD_75R60226C00001_7526_-NONE-_-NONE-","piid":"75R60226C00001","award_date":"2025-11-12","description":"HSB115 - C 7520 OPTN CLOUD MIGRATION AND HARDWARE: THE PURPOSE OF THIS CONTRACT IS - TO PROVIDE ALL PERSONNEL, MANAGEMENT, MATERIALS, EQUIPMENT, AND SERVICES NECESSARY - TO MIGRATE THE ORGAN PROCUREMENT AND TRANSPLANTATION NETWORK (OPTN) INFORMATION - TECHNO","total_contract_value":12250000.0,"naics_code":541511,"recipient":{"display_name":"UNITED - NETWORK FOR ORGAN SHARING"}},{"key":"CONT_AWD_36C26326N0244_3600_36C26325A0002_3600","piid":"36C26326N0244","award_date":"2025-11-12","description":"MEDICAL - CODING TASK ORDER FOR THE VA NEBRASKA-WESTERN IOWA HEALTH CARE SYSTEM","total_contract_value":375737.24,"naics_code":541511,"recipient":{"display_name":"SIERRA7, - INC."}},{"key":"CONT_AWD_15B10626P00000047_1540_-NONE-_-NONE-","piid":"15B10626P00000047","award_date":"2025-11-12","description":"TELCOR: - STAT STRIP GLUCOSE SOFTWARE SUPPORT DOS: OCTOBER 1, 2025 THRU SEPTEMBER 30, - 2026 FUNDS WILL BE OBLIGATED THROUGH A MOD UPON THE OFFICIAL ANNOUNCEMENT - OF THE CR DATE AND/OR WHEN THE BUDGET IS PASSED.","total_contract_value":2638.89,"naics_code":541511,"recipient":{"display_name":"TELCOR - INC"}},{"key":"CONT_AWD_36C25526P0013_3600_-NONE-_-NONE-","piid":"36C25526P0013","award_date":"2025-11-10","description":"SOFTWARE - SUPPORT AND MAINTENANCE","total_contract_value":175500.0,"naics_code":541511,"recipient":{"display_name":"ELEKTA - INC"}},{"key":"CONT_AWD_205AE926C00004_2050_-NONE-_-NONE-","piid":"205AE926C00004","award_date":"2025-11-07","description":"CORPORATE - DATA AND INTERNAL REVENUE SERVICE INFORMATION SYSTEMS SUPPORT. FIRM-FIXED - PRICE. BASE AND TWO OPTION PERIODS.","total_contract_value":9179526.24,"naics_code":541511,"recipient":{"display_name":"NTVI - SOLUTIONS, LLC"}},{"key":"CONT_AWD_36C26226N0160_3600_36C10G21A0003_3600","piid":"36C26226N0160","award_date":"2025-11-06","description":"OY4 - - MEDICAL CODING SERVICES","total_contract_value":204040.0,"naics_code":541511,"recipient":{"display_name":"COOPER - THOMAS LLC"}}],"count_type":"approximate"}' + string: '{"count":130895,"next":"https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cnaics_code&naics=541511&cursor=WyIyMDI2LTAyLTI3IiwgIjNlZDViNzYyLTBkYWMtNTg1Ny04MGU3LTRiMGI1MjE0NDczNyJd","previous":null,"cursor":"WyIyMDI2LTAyLTI3IiwgIjNlZDViNzYyLTBkYWMtNTg1Ny04MGU3LTRiMGI1MjE0NDczNyJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"naics_code":541511,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_15JPSS26F00000836_1501_15JPSS24A00000036_1501","piid":"15JPSS26F00000836","award_date":"2026-03-03","description":"FY26 + NETWORK OPS SERVICES","total_contract_value":25050112.0,"naics_code":541511,"recipient":{"display_name":"THE + ONE 23 GROUP INC."}},{"key":"CONT_AWD_70T05026F6116N001_7013_70T03024A7667N001_7013","piid":"70T05026F6116N001","award_date":"2026-03-02","description":"LAW + ENFORCEMENT OFFICER FLYING ARMED (LEOFA) HOSTED AND MANAGED ON THE JUVARE + UNIFIED COMMAND PLATFORM (UCP) AND WEBEOC MIGRATION TO THE JUVARE UCP","total_contract_value":13868034.88,"naics_code":541511,"recipient":{"display_name":"DEV + TECHNOLOGY GROUP INC"}},{"key":"CONT_AWD_86615426F00001_8600_47QTCA19D00LJ_4732","piid":"86615426F00001","award_date":"2026-02-27","description":"ACQUISITION + MODERNIZATION SUPPORT SERVICES (AMSS)","total_contract_value":6730780.2,"naics_code":541511,"recipient":{"display_name":"PYRAMID + SYSTEMS, INC."}},{"key":"CONT_AWD_47QACA26F0118_4732_47QTSA25A0060_4732","piid":"47QACA26F0118","award_date":"2026-02-27","description":"73351024F0095 + AUDIT REMEDIATION PROFESSIONAL SUPPORT SERVICES","total_contract_value":3501219.65,"naics_code":541511,"recipient":{"display_name":"SIGNIFICANCE + INC"}},{"key":"CONT_AWD_36C24626N0489_3600_GS35F235BA_4732","piid":"36C24626N0489","award_date":"2026-02-27","description":"VIRTUAL + MONITORING ALL NECESSARY HARDWARE, SOFTWARE, INSTALLATION, AND TRAINING.","total_contract_value":537003.72,"naics_code":541511,"recipient":{"display_name":"SIERRA7, + INC."}},{"key":"CONT_AWD_7571MN26F67013_7571_75P00121A00001_7570","piid":"7571MN26F67013","award_date":"2026-02-27","description":"OPERATIONS + AND MAINTENANCE (O&M), MODERNIZATION, AND ENHANCEMENT SUPPORT FOR FMP''S CORE + FINANCIAL SYSTEMS","total_contract_value":16252496.0,"naics_code":541511,"recipient":{"display_name":"RIVA + SOLUTIONS INC"}},{"key":"CONT_AWD_140D0426F0095_1406_GS35F386DA_4732","piid":"140D0426F0095","award_date":"2026-02-27","description":"NIH + NIAID CYBER SECURITY PROGRAM RISK MANAGEMENT FRAMEWORK (CSP-RMF) SUPPORT BRIDGE","total_contract_value":1193026.35,"naics_code":541511,"recipient":{"display_name":"BOOZ + ALLEN HAMILTON INC"}},{"key":"CONT_AWD_49100426P0004_4900_-NONE-_-NONE-","piid":"49100426P0004","award_date":"2026-02-27","description":"ZOOM + FOR GOVERNMENT LICENSES","total_contract_value":180275.32,"naics_code":541511,"recipient":{"display_name":"NEOTECH + SOLUTIONS INC."}},{"key":"CONT_AWD_36C10D26F0019_3600_47QTCA18D00CS_4732","piid":"36C10D26F0019","award_date":"2026-02-27","description":"BTSOS + FSS TASK ORDER AWARD","total_contract_value":67727936.03,"naics_code":541511,"recipient":{"display_name":"HLINC + CORP"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c1d4e40a1cd-MSP + - 9d71a56389c4ad1d-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:55 GMT + - Wed, 04 Mar 2026 14:42:11 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=pIYnKuY8zpxwzELSaJ7WR11R3TqkNLG1kGJBb%2FEpzwd%2BMz8JY2obDFdJ%2BC49x3BwZhZuLYVd26g9%2Fs15kMWW2NTBH1CUebCI1YmFtrwQFMq6Bp%2B7mG3969CWGw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=VPLni0q8u50nTrNztpyr7n49KmXkQW5bmoiIxbmJVTZ%2BcBlGCnylacrL0sRLlXswomf4PKVxsCPV8KSMsRTazGwIsGC%2F5rf1KTp3NNiQGEJs758%2FSf6SFw%2Fm"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '3638' + - '3377' cross-origin-opener-policy: - same-origin referrer-policy: @@ -178,230 +169,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.023s + - 0.074s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '990' + - '956' x-ratelimit-burst-reset: - - '58' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998683' + - '1999768' x-ratelimit-daily-reset: - - '91' + - '85057' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '990' + - '956' x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value - response: - body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ==","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","award_date":"2025-11-14","description":"COMPREHENSIVE - RISK ASSESSMENT AND MITIGATION - OCFO","total_contract_value":1499803.54,"recipient":{"display_name":"ERNST - & YOUNG LLP"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","award_date":"2025-11-14","description":"F5 - NETWORK MAINTENANCE RENEWAL","total_contract_value":73050.0,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","award_date":"2025-11-14","description":"XSI - HARDWARE MAINTENANCE RENEWAL FY26","total_contract_value":21711.76,"recipient":{"display_name":"GOVPLACE, - LLC"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","award_date":"2025-11-14","description":"TELLABS - STANDARD SUPPORT & PANORAMA INM","total_contract_value":13390.73,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","description":"CISCO - NASA CISCO REMOTE VPN OBSOLESCENCE REPLACEMENT","total_contract_value":99974.58,"recipient":{"display_name":"FCN - INC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b9478e52a246-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Q3Ga41VdrgK4svGk%2F1hiKjWlPEKII0WUQhxfbq5vWc%2B%2FXTRtaVbNBfx1okT8EJisZeY6nUH2ngtYwavrziOOht%2BmcOOIfoa%2FZ8KmpLNA6kCz1PqQ5Bx3zABXAg%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '3190' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.021s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '990' - x-ratelimit-burst-reset: - - '35' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999011' - x-ratelimit-daily-reset: - - '5' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '990' - x-ratelimit-reset: - - '35' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cnaics_code&naics=541511 - response: - body: - string: '{"count":108453,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cnaics_code&naics=541511&cursor=WyIyMDI1LTExLTA2IiwgIkNPTlRfQVdEXzM2QzI2MjI2TjAxNjBfMzYwMF8zNkMxMEcyMUEwMDAzXzM2MDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTA2IiwgIkNPTlRfQVdEXzM2QzI2MjI2TjAxNjBfMzYwMF8zNkMxMEcyMUEwMDAzXzM2MDAiXQ==","results":[{"key":"CONT_AWD_36C25926N0113_3600_36C10G23A0004_3600","piid":"36C25926N0113","award_date":"2025-11-14","description":"INNOVIAN - PROFESSIONALSERVICES-CLINICAL/TRAINING","total_contract_value":13280.0,"naics_code":541511,"recipient":{"display_name":"DRAEGER - INC"}},{"key":"CONT_AWD_2033H626F00020_2036_2033H622D00003_2036","piid":"2033H626F00020","award_date":"2025-11-14","description":"SALESFORCE - PROFESSIONAL SERVICES - OPERATION & MAINTENANCE (O&M)","total_contract_value":1547899.0,"naics_code":541511,"recipient":{"display_name":"SOUTHPOINT - CONSULTING, INC."}},{"key":"CONT_AWD_70Z04026P60414Y00_7008_-NONE-_-NONE-","piid":"70Z04026P60414Y00","award_date":"2025-11-13","description":"SIX-MONTH - PROTOTYPE DEVELOPMENT AND TESTING OF FLOORGANISE''S FLOOR2PLAN TIME KEEPING - MODULE AT CG YARD","total_contract_value":50000.0,"naics_code":541511,"recipient":{"display_name":"FLOORGANISE - USA INC"}},{"key":"CONT_AWD_36C26126N0206_3600_36C10G21A0003_3600","piid":"36C26126N0206","award_date":"2025-11-13","description":"MEDICAL - RECORD CODING","total_contract_value":112395.0,"naics_code":541511,"recipient":{"display_name":"COOPER - THOMAS LLC"}},{"key":"CONT_AWD_75R60226C00001_7526_-NONE-_-NONE-","piid":"75R60226C00001","award_date":"2025-11-12","description":"HSB115 - C 7520 OPTN CLOUD MIGRATION AND HARDWARE: THE PURPOSE OF THIS CONTRACT IS - TO PROVIDE ALL PERSONNEL, MANAGEMENT, MATERIALS, EQUIPMENT, AND SERVICES NECESSARY - TO MIGRATE THE ORGAN PROCUREMENT AND TRANSPLANTATION NETWORK (OPTN) INFORMATION - TECHNO","total_contract_value":12250000.0,"naics_code":541511,"recipient":{"display_name":"UNITED - NETWORK FOR ORGAN SHARING"}},{"key":"CONT_AWD_36C26326N0244_3600_36C26325A0002_3600","piid":"36C26326N0244","award_date":"2025-11-12","description":"MEDICAL - CODING TASK ORDER FOR THE VA NEBRASKA-WESTERN IOWA HEALTH CARE SYSTEM","total_contract_value":375737.24,"naics_code":541511,"recipient":{"display_name":"SIERRA7, - INC."}},{"key":"CONT_AWD_15B10626P00000047_1540_-NONE-_-NONE-","piid":"15B10626P00000047","award_date":"2025-11-12","description":"TELCOR: - STAT STRIP GLUCOSE SOFTWARE SUPPORT DOS: OCTOBER 1, 2025 THRU SEPTEMBER 30, - 2026 FUNDS WILL BE OBLIGATED THROUGH A MOD UPON THE OFFICIAL ANNOUNCEMENT - OF THE CR DATE AND/OR WHEN THE BUDGET IS PASSED.","total_contract_value":2638.89,"naics_code":541511,"recipient":{"display_name":"TELCOR - INC"}},{"key":"CONT_AWD_36C25526P0013_3600_-NONE-_-NONE-","piid":"36C25526P0013","award_date":"2025-11-10","description":"SOFTWARE - SUPPORT AND MAINTENANCE","total_contract_value":175500.0,"naics_code":541511,"recipient":{"display_name":"ELEKTA - INC"}},{"key":"CONT_AWD_205AE926C00004_2050_-NONE-_-NONE-","piid":"205AE926C00004","award_date":"2025-11-07","description":"CORPORATE - DATA AND INTERNAL REVENUE SERVICE INFORMATION SYSTEMS SUPPORT. FIRM-FIXED - PRICE. BASE AND TWO OPTION PERIODS.","total_contract_value":9179526.24,"naics_code":541511,"recipient":{"display_name":"NTVI - SOLUTIONS, LLC"}},{"key":"CONT_AWD_36C26226N0160_3600_36C10G21A0003_3600","piid":"36C26226N0160","award_date":"2025-11-06","description":"OY4 - - MEDICAL CODING SERVICES","total_contract_value":204040.0,"naics_code":541511,"recipient":{"display_name":"COOPER - THOMAS LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b9484ef3a246-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5hzfarrPrlMq%2BgMA8jdVAH%2FtBiqQilBlOrfikd4FklzaRb0Cu3Pb5KPbe4K0yAjbhh7sdfVedKv7vVv4IKDBoVViZzm3SRj2m4Ca7MydI0D4bej6O532eqNyfw%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '3638' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.020s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '989' - x-ratelimit-burst-reset: - - '35' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999010' - x-ratelimit-daily-reset: - - '4' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '989' - x-ratelimit-reset: - - '35' + - '3' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[custom-key,piid,recipient(display_name),total_contract_value,award_date] b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[custom-key,piid,recipient(display_name),total_contract_value,award_date] index 91dad6c..3f1faa6 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[custom-key,piid,recipient(display_name),total_contract_value,award_date] +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[custom-key,piid,recipient(display_name),total_contract_value,award_date] @@ -13,40 +13,38 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value%2Caward_date + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value%2Caward_date response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value%2Caward_date&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","total_contract_value":1089550.8,"award_date":"2025-11-15","recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","total_contract_value":17351.59,"award_date":"2025-11-15","recipient":{"display_name":"ONSITE - CONSTRUCTION GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","total_contract_value":1371325.32,"award_date":"2025-11-14","recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","total_contract_value":4387892.04,"award_date":"2025-11-14","recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","total_contract_value":24732.97,"award_date":"2025-11-14","recipient":{"display_name":"REGENCY - CONSULTING INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value%2Caward_date&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","total_contract_value":122510.0,"award_date":"2026-03-03","recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","total_contract_value":945638.46,"award_date":"2026-03-03","recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","total_contract_value":255.0,"award_date":"2026-03-03","recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","total_contract_value":36904.0,"award_date":"2026-03-03","recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","total_contract_value":8865.0,"award_date":"2026-03-03","recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c14cc41a1cf-MSP + - 9d71a558f9f3348b-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:53 GMT + - Wed, 04 Mar 2026 14:42:09 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=RdpQ8AKZVQPvnpvsYs9%2Bti1c59X99BvYU6%2BQQBQvylJ1ULcBu0b0rOAfceFlVSNZJDrNhnya9VKH1n9Ndfe0oYwOiq31DJ9jFRN7yEF0PuTyEX1KB8ynlsoJHg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=hB701E8P6REseg3OOxBNy9hhYPIYJDJmEqVyU%2BDDseuBgB0aYzIUc0T8L3kPyNjDYVyA0t%2B1vpuhuF0%2FN%2FBzUav2Rr4oAXSLx64FIVjIysdjwhtBYwREJh3d"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1410' + - '1367' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.039s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '997' + - '963' x-ratelimit-burst-reset: - - '59' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998690' + - '1999775' x-ratelimit-daily-reset: - - '92' + - '85059' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '997' + - '963' x-ratelimit-reset: - - '59' + - '5' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[default-None] b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[default-None] index eb1f0e8..e6a92fb 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[default-None] +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[default-None] @@ -13,49 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c122aa5a1f5-MSP + - 9d71a555df4d5110-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:53 GMT + - Wed, 04 Mar 2026 14:42:09 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=zYWLg28ZUzSLX8xF6kkS556O0NBGlSwUJT6o4jylNtlLh6hBUVmIHPP9oz4OUcdlXl3MmBl9hwQ632MxyeK4GY3nzy27FRJbyFZRIWUUd2LhEZmiSY%2F%2FugLWkw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=IxnDrcGmW%2F94v%2BUFpMvKYtuU73K%2B6%2Bh%2BQH6RexWQn2vz5qp8%2BR%2Bb95%2FzU8zWzjWd41TxBLZ%2FUj%2F6yhHeG%2FGxkumJYEcbSP%2FhMYFQ8fWSRfJNQgzRKZSmvUMN"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1974' + - '1649' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.020s + - 0.038s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '999' + - '965' x-ratelimit-burst-reset: - - '59' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998692' + - '1999777' x-ratelimit-daily-reset: - - '92' + - '85060' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '999' + - '965' x-ratelimit-reset: - - '59' + - '5' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[detailed-key,piid,award_date,description,total_contract_value,obligated,fiscal_year,set_aside,recipient(display_name,uei),awarding_office(-),place_of_performa...ce114a3c47e2037aaa3c15d00b7031bd b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[detailed-key,piid,award_date,description,total_contract_value,obligated,fiscal_year,set_aside,recipient(display_name,uei),awarding_office(-),place_of_performa...ce114a3c47e2037aaa3c15d00b7031bd index 533a7f9..6b33297 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[detailed-key,piid,award_date,description,total_contract_value,obligated,fiscal_year,set_aside,recipient(display_name,uei),awarding_office(-),place_of_performa...ce114a3c47e2037aaa3c15d00b7031bd +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[detailed-key,piid,award_date,description,total_contract_value,obligated,fiscal_year,set_aside,recipient(display_name,uei),awarding_office(-),place_of_performa...ce114a3c47e2037aaa3c15d00b7031bd @@ -13,67 +13,57 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cfiscal_year%2Cset_aside%2Crecipient%28display_name%2Cuei%29%2Cawarding_office%28%2A%29%2Cplace_of_performance%28city_name%2Cstate_code%2Cstate_name%2Ccountry_code%2Ccountry_name%29%2Cnaics_code%2Cpsc_code + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cfiscal_year%2Cset_aside%2Crecipient%28display_name%2Cuei%29%2Cawarding_office%28%2A%29%2Cplace_of_performance%28city_name%2Cstate_code%2Cstate_name%2Ccountry_code%2Ccountry_name%29%2Cnaics_code%2Cpsc_code response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cfiscal_year%2Cset_aside%2Crecipient%28display_name%2Cuei%29%2Cawarding_office%28%2A%29%2Cplace_of_performance%28city_name%2Cstate_code%2Cstate_name%2Ccountry_code%2Ccountry_name%29%2Cnaics_code%2Cpsc_code&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"obligated":1089550.8,"fiscal_year":2026,"set_aside":"NONE","naics_code":561612,"psc_code":"S206","recipient":{"uei":"HQXXAB4DV7H3","display_name":"REDCON - SOLUTIONS GROUP LLC"},"awarding_office":{"office_code":"70FBR4","office_name":"REGION - 4: EMERGENCY PREPAREDNESS AN","agency_code":"7022","agency_name":"Federal - Emergency Management Agency","department_code":70,"department_name":"Department - of Homeland Security"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"GA","state_name":"GEORGIA","city_name":"ATLANTA"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"obligated":17351.59,"fiscal_year":2026,"set_aside":null,"naics_code":236220,"psc_code":"Z2NB","recipient":{"uei":"MR6FELMMCJ31","display_name":"ONSITE - CONSTRUCTION GROUP LLC"},"awarding_office":{"office_code":"36C255","office_name":"255-NETWORK - CONTRACT OFFICE 15 (36C255)","agency_code":"3600","agency_name":"Department - of Veterans Affairs","department_code":36,"department_name":"Department of - Veterans Affairs"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"KS","state_name":"KANSAS","city_name":"LEAVENWORTH"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"obligated":0.0,"fiscal_year":2026,"set_aside":"NONE","naics_code":541519,"psc_code":"DA01","recipient":{"uei":"GDQLRDFJNRD3","display_name":"MERLIN - INTERNATIONAL, INC."},"awarding_office":{"office_code":"9523ZY","office_name":"COMMODITY - FUTURES TRADING COMM","agency_code":"9507","agency_name":"Commodity Futures - Trading Commission","department_code":339,"department_name":"Commodity Futures - Trading Commission"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"VA","state_name":"VIRGINIA","city_name":"VIENNA"}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"obligated":500000.0,"fiscal_year":2026,"set_aside":"SBA","naics_code":541820,"psc_code":"R699","recipient":{"uei":"U3M3JLGJLQ63","display_name":"RACK-WILDNER - & REESE, INC."},"awarding_office":{"office_code":"892434","office_name":"GOLDEN - FIELD OFFICE","agency_code":"8900","agency_name":"Department of Energy","department_code":89,"department_name":"Department - of Energy"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"PA","state_name":"PENNSYLVANIA","city_name":"PITTSBURGH"}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"obligated":24732.97,"fiscal_year":2026,"set_aside":null,"naics_code":541519,"psc_code":"DA10","recipient":{"uei":"SC8LMLWA6H51","display_name":"REGENCY - CONSULTING INC"},"awarding_office":{"office_code":"892433","office_name":"NATIONAL - ENERGY TECHNOLOGY LABORATORY","agency_code":"8900","agency_name":"Department - of Energy","department_code":89,"department_name":"Department of Energy"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"WV","state_name":"WEST VIRGINIA","city_name":"MORGANTOWN"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cfiscal_year%2Cset_aside%2Crecipient%28display_name%2Cuei%29%2Cawarding_office%28%2A%29%2Cplace_of_performance%28city_name%2Cstate_code%2Cstate_name%2Ccountry_code%2Ccountry_name%29%2Cnaics_code%2Cpsc_code&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"obligated":122510.0,"fiscal_year":2026,"set_aside":"NONE","naics_code":541511,"psc_code":"DA01","recipient":{"uei":"GMHBZNNNPWN6","display_name":"PEOPLE + DESIGNS INC"},"awarding_office":{"office_code":"75N980","office_name":"NATIONAL + INSTITUTES OF HEALTH OLAO","agency_code":"7529","agency_name":"NATIONAL INSTITUTES + OF HEALTH","department_code":"075","department_name":"HEALTH AND HUMAN SERVICES, + DEPARTMENT OF"},"place_of_performance":{"country_code":"USA","country_name":"UNITED + STATES","state_code":"MD","state_name":"MARYLAND","city_name":"ROCKVILLE"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"obligated":945638.46,"fiscal_year":2026,"set_aside":"NONE","naics_code":513120,"psc_code":"7610","recipient":{"uei":"S9UYLMMXE6X8","display_name":"ELSEVIER + INC."},"awarding_office":{"office_code":"491004","office_name":"DIV OF ACQ + AND COOPERATIVE SUPPORT","agency_code":"4900","agency_name":"NATIONAL SCIENCE + FOUNDATION","department_code":"049","department_name":"NATIONAL SCIENCE FOUNDATION"},"place_of_performance":{"country_code":"USA","country_name":"UNITED + STATES","state_code":"VA","state_name":"VIRGINIA","city_name":"ALEXANDRIA"}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"obligated":255.0,"fiscal_year":2026,"set_aside":null,"naics_code":334516,"psc_code":"Q301","recipient":{"uei":"NTBNTF5W31H5","display_name":"PHAMATECH, + INCORPORATED"},"awarding_office":{"office_code":"15B109","office_name":"LEXINGTON, + FMC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"},"place_of_performance":{"country_code":"USA","country_name":"UNITED + STATES","state_code":"CA","state_name":"CALIFORNIA","city_name":"SAN DIEGO"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"obligated":36904.0,"fiscal_year":2026,"set_aside":null,"naics_code":334516,"psc_code":"6550","recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"awarding_office":{},"place_of_performance":{"country_code":"USA","country_name":"UNITED + STATES","state_code":"UT","state_name":"UTAH","city_name":"SALT LAKE CITY"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"obligated":8865.0,"fiscal_year":2026,"set_aside":"NONE","naics_code":322291,"psc_code":"8540","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"awarding_office":{"office_code":"15B505","office_name":"CARSWELL, + FMC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"},"place_of_performance":{"country_code":"USA","country_name":"UNITED + STATES","state_code":"TX","state_name":"TEXAS","city_name":"NAVAL AIR STATION/JRB"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c161a5aa1e8-MSP + - 9d71a55aba04a221-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:54 GMT + - Wed, 04 Mar 2026 14:42:09 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Qi9UM8cJZReHmHM%2BQu%2FKenyRY17oP4Q0GdD233Kq2PvQEZvyJIUFxusCPpY%2BVsLQZX%2BkR0b7azV8jKfajToagEYL5g6%2FjFS461NuBmZK1IoJmbHk75TekDME9Q%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5ZUnWNLZ3E57dvlj3FPOM%2BWLhhKRP6YBQ%2FZRl3EEC1TmsRg7NW6oN4pkpoNTAgcvRMpGfI7EajHwknglu1YxkQV789%2BAkMgp3IVt%2FuwiktDkmsTL%2BgOHaGWW"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '4603' + - '4084' cross-origin-opener-policy: - same-origin referrer-policy: @@ -83,135 +73,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.022s + - 0.048s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '996' + - '962' x-ratelimit-burst-reset: - - '59' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998689' + - '1999774' x-ratelimit-daily-reset: - - '92' + - '85059' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '996' + - '962' x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cfiscal_year%2Cset_aside%2Crecipient%28display_name%2Cuei%29%2Cawarding_office%28%2A%29%2Cplace_of_performance%28city_name%2Cstate_code%2Cstate_name%2Ccountry_code%2Ccountry_name%29%2Cnaics_code%2Cpsc_code - response: - body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cfiscal_year%2Cset_aside%2Crecipient%28display_name%2Cuei%29%2Cawarding_office%28%2A%29%2Cplace_of_performance%28city_name%2Cstate_code%2Cstate_name%2Ccountry_code%2Ccountry_name%29%2Cnaics_code%2Cpsc_code&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"obligated":1089550.8,"fiscal_year":2026,"set_aside":"NONE","naics_code":561612,"psc_code":"S206","recipient":{"uei":"HQXXAB4DV7H3","display_name":"REDCON - SOLUTIONS GROUP LLC"},"awarding_office":{"office_code":"70FBR4","office_name":"REGION - 4: EMERGENCY PREPAREDNESS AN","agency_code":"7022","agency_name":"Federal - Emergency Management Agency","department_code":70,"department_name":"Department - of Homeland Security"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"GA","state_name":"GEORGIA","city_name":"ATLANTA"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"obligated":17351.59,"fiscal_year":2026,"set_aside":null,"naics_code":236220,"psc_code":"Z2NB","recipient":{"uei":"MR6FELMMCJ31","display_name":"ONSITE - CONSTRUCTION GROUP LLC"},"awarding_office":{"office_code":"36C255","office_name":"255-NETWORK - CONTRACT OFFICE 15 (36C255)","agency_code":"3600","agency_name":"Department - of Veterans Affairs","department_code":36,"department_name":"Department of - Veterans Affairs"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"KS","state_name":"KANSAS","city_name":"LEAVENWORTH"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"obligated":0.0,"fiscal_year":2026,"set_aside":"NONE","naics_code":541519,"psc_code":"DA01","recipient":{"uei":"GDQLRDFJNRD3","display_name":"MERLIN - INTERNATIONAL, INC."},"awarding_office":{"office_code":"9523ZY","office_name":"COMMODITY - FUTURES TRADING COMM","agency_code":"9507","agency_name":"Commodity Futures - Trading Commission","department_code":339,"department_name":"Commodity Futures - Trading Commission"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"VA","state_name":"VIRGINIA","city_name":"VIENNA"}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"obligated":500000.0,"fiscal_year":2026,"set_aside":"SBA","naics_code":541820,"psc_code":"R699","recipient":{"uei":"U3M3JLGJLQ63","display_name":"RACK-WILDNER - & REESE, INC."},"awarding_office":{"office_code":"892434","office_name":"GOLDEN - FIELD OFFICE","agency_code":"8900","agency_name":"Department of Energy","department_code":89,"department_name":"Department - of Energy"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"PA","state_name":"PENNSYLVANIA","city_name":"PITTSBURGH"}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"obligated":24732.97,"fiscal_year":2026,"set_aside":null,"naics_code":541519,"psc_code":"DA10","recipient":{"uei":"SC8LMLWA6H51","display_name":"REGENCY - CONSULTING INC"},"awarding_office":{"office_code":"892433","office_name":"NATIONAL - ENERGY TECHNOLOGY LABORATORY","agency_code":"8900","agency_name":"Department - of Energy","department_code":89,"department_name":"Department of Energy"},"place_of_performance":{"country_code":"USA","country_name":"UNITED - STATES","state_code":"WV","state_name":"WEST VIRGINIA","city_name":"MORGANTOWN"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b94189bcaeb6-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:30 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=B4l%2Bt9efDa3eoQ3M5aLVuNHSddUpu8%2FMMOKKL7z1DVFxXH6mV%2Ftl0C3oyk%2Fr5S4dPZNXlnpqtcyoYbWhNJfO9vD6Ed1fXW64OXW%2BRglZOfcPQz58Bh%2F3RNfxzg%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '4603' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.021s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '994' - x-ratelimit-burst-reset: - - '36' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999015' - x-ratelimit-daily-reset: - '5' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '994' - x-ratelimit-reset: - - '36' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] index 41e309e..68c9b4c 100644 --- a/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] +++ b/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] @@ -13,49 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c137da6a1d6-MSP + - 9d71a557af9fad02-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:53 GMT + - Wed, 04 Mar 2026 14:42:09 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=TQniDcVa4AWWJ5ndK29Kir4sRRWQJLN1UlrmaoW2bKcihz%2B%2B8ougteHHyzxwoTbWG3t%2BYB020myGHFBaubQcA%2Fq2YGTb6RaR%2BxXR198PR4Wkrio0SWfGisXYHQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=xzffBGDK68aLESkhRCAZ7FHGpQU271wDwTsj4fIbWTsxeRh08ku41KPmtFURH7SLihDCByvO%2F9yPOEvkMX4r44ZMU3N4vfbxObO6t2YUl7adW0ubl12%2BUc4g"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1974' + - '1649' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.030s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '998' + - '964' x-ratelimit-burst-reset: - - '59' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998691' + - '1999776' x-ratelimit-daily-reset: - - '92' + - '85059' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '998' + - '964' x-ratelimit-reset: - - '59' + - '5' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_new_expiring_filters b/tests/cassettes/TestContractsIntegration.test_new_expiring_filters index 7b94904..1c7ff44 100644 --- a/tests/cassettes/TestContractsIntegration.test_new_expiring_filters +++ b/tests/cassettes/TestContractsIntegration.test_new_expiring_filters @@ -13,45 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&expiring_gte=2025-01-01&expiring_lte=2025-12-31 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&expiring_gte=2025-01-01&expiring_lte=2025-12-31 response: body: - string: '{"count":4015598,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&expiring_gte=2025-01-01&expiring_lte=2025-12-31&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzcwWjAzODI2UEYwMDAzMDAyXzcwMDhfLU5PTkUtXy1OT05FLSJd","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzcwWjAzODI2UEYwMDAzMDAyXzcwMDhfLU5PTkUtXy1OT05FLSJd","results":[{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","description":"CISCO - NASA CISCO REMOTE VPN OBSOLESCENCE REPLACEMENT","total_contract_value":99974.58,"recipient":{"display_name":"FCN - INC"}},{"key":"CONT_AWD_75H71226F80002_7527_36F79724D0071_3600","piid":"75H71226F80002","award_date":"2025-11-14","description":"ZOLL - MEDICAL CORPORATION DEFIBRILLATOR EQUIPMENT","total_contract_value":630011.67,"recipient":{"display_name":"AFTER - ACTION MEDICAL AND DENTAL SUPPLY, LLC"}},{"key":"CONT_AWD_70Z04026P60355Y00_7008_-NONE-_-NONE-","piid":"70Z04026P60355Y00","award_date":"2025-11-14","description":"VALVE, - 4\" IPS, GATE, BRONZE","total_contract_value":23751.0,"recipient":{"display_name":"JA - MOODY LLC"}},{"key":"CONT_AWD_70Z03826PF0003002_7008_-NONE-_-NONE-","piid":"70Z03826PF0003002","award_date":"2025-11-14","description":"PROCUREMENT - OF INDUSTRIAL STEEL SHELVES AND CABINETS USED FOR STORAGE OF AIRCRAFT PARTS.","total_contract_value":48909.32,"recipient":{"display_name":"TECH - SERVICE SOLUTIONS LLC"}}],"count_type":"approximate"}' + string: '{"count":5026220,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&expiring_gte=2025-01-01&expiring_lte=2025-12-31&cursor=WyIyMDI2LTAyLTI2IiwgIjczZjliYWIxLThiOTctNTFjYS04M2MyLTNkNzkzZmYyNDdiMCJd","previous":null,"cursor":"WyIyMDI2LTAyLTI2IiwgIjczZjliYWIxLThiOTctNTFjYS04M2MyLTNkNzkzZmYyNDdiMCJd","previous_cursor":null,"results":[{"key":"CONT_AWD_36C79126K0078_3600_36C79120D0016_3600","piid":"36C79126K0078","award_date":"2026-03-03","description":"EXPRESS + REPORT: FPDS REPORT_JUNE_2025_BATTERIES 2020 PROGRAM","total_contract_value":4691.4,"recipient":{"display_name":"VARTA + MICROBATTERY, INC."}},{"key":"CONT_AWD_36C79126K0080_3600_36C79120D0019_3600","piid":"36C79126K0080","award_date":"2026-03-03","description":"EXPRESS + REPORT: JUNE_2025_BATTERIES 2020 PROCUREMENT PROGRAM","total_contract_value":92093.76,"recipient":{"display_name":"Energizer, + LLC"}},{"key":"CONT_AWD_36C79126K0079_3600_36C79120D0018_3600","piid":"36C79126K0079","award_date":"2026-03-03","description":"EXPRESS + REPORT: JUNE_2025_BATTERIES 2020 PROGRAM","total_contract_value":4257.8,"recipient":{"display_name":"EASTERN + CAROLINA VOCATIONAL CENTER INC"}},{"key":"CONT_AWD_36C79126K0077_3600_36C79120D0015_3600","piid":"36C79126K0077","award_date":"2026-02-26","description":"FPDS + EXPRESS REPORT: JUNE 2025_BATTERIES 2020 PROGRAM","total_contract_value":2688.0,"recipient":{"display_name":"Energizer, + LLC"}},{"key":"CONT_AWD_15B50426F00000079_1540_47PA0419D0007_4740","piid":"15B50426F00000079","award_date":"2026-02-26","description":"ATMOS + GAS BRY FY26 P4 DECEMBER","total_contract_value":10010.17,"recipient":{"display_name":"ATMOS + ENERGY CORPORATION"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f9bcb5acada1f2-YYZ + - 9d71a5a82a71acfa-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:29:16 GMT + - Wed, 04 Mar 2026 14:42:23 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=y7UadM8c0zgIPSBpaDWFbbCex4VHKopag7elRnKB48W2UlDxzkLnKFr%2FQxZqUWHq%2B0Bm5jGg0RFnGjOaedFEpgsvbe4gQmp4mViBB5KNlfzWPMFzNpV12cEfkw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=zNlusSo2SfxlZwgE0dfMNPvtB4MKgwvlPlhkXObfNKbw7eEv7rR5Lr78byCByhpAJLE%2FkoIqhNB27Y1j81b1wJe27Edkgly6kSy%2FlQVzN1eRRzThm67QYiiC"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1736' + - '1771' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 25.005s + - 0.932s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '998' + - '981' x-ratelimit-burst-reset: - - '4' + - '45' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999005' + - '1999761' x-ratelimit-daily-reset: - - '7' + - '85046' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '998' + - '981' x-ratelimit-reset: - - '4' + - '45' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_new_fiscal_year_range_filters b/tests/cassettes/TestContractsIntegration.test_new_fiscal_year_range_filters index f8f48fb..230515a 100644 --- a/tests/cassettes/TestContractsIntegration.test_new_fiscal_year_range_filters +++ b/tests/cassettes/TestContractsIntegration.test_new_fiscal_year_range_filters @@ -13,76 +13,109 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&fiscal_year_gte=2020&fiscal_year_lte=2024 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&fiscal_year_gte=2020&fiscal_year_lte=2024 response: body: - string: '{"count":26520260,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&fiscal_year_gte=2020&fiscal_year_lte=2024&cursor=WyIyMDI0LTA5LTMwIiwgIkNPTlRfQVdEX1c5MVdGVTI0RjAwNjBfOTcwMF9XOTFXRlUyMkEwMDAyXzk3MDAiXQ%3D%3D","cursor":"WyIyMDI0LTA5LTMwIiwgIkNPTlRfQVdEX1c5MVdGVTI0RjAwNjBfOTcwMF9XOTFXRlUyMkEwMDAyXzk3MDAiXQ==","results":[{"key":"CONT_AWD_W91ZLK24F0263_9700_W91ZLK20D0002_9700","piid":"W91ZLK24F0263","award_date":"2024-09-30","description":"PURCHASE - OF 236 (EA) AC ADSORBER 24\"X24\"X16\" HEGA-AC-16","total_contract_value":600235.32,"recipient":{"display_name":"RSE - INC"}},{"key":"CONT_AWD_W91WFU24P0009_9700_-NONE-_-NONE-","piid":"W91WFU24P0009","award_date":"2024-09-30","description":"FORCE - PROTECTION ATVS","total_contract_value":88965.16,"recipient":{"display_name":"FUDURIC - GMBH & CO. KG"}},{"key":"CONT_AWD_W91WFU24F0062_9700_W91WFU23A0001_9700","piid":"W91WFU24F0062","award_date":"2024-09-30","description":"PANZER - BUILDING 2915 MATERIALS","total_contract_value":376219.32,"recipient":{"display_name":"M.C. - DEAN EUROPE GMBH"}},{"key":"CONT_AWD_W91WFU24F0061_9700_W91WFU22A0002_9700","piid":"W91WFU24F0061","award_date":"2024-09-30","description":"650 - MI ESS","total_contract_value":425106.93,"recipient":{"display_name":"M. C. - DEAN, INC."}},{"key":"CONT_AWD_W91WFU24F0060_9700_W91WFU22A0002_9700","piid":"W91WFU24F0060","award_date":"2024-09-30","description":"MWR - KELLEY ARMS ROOM ESS INSTALL","total_contract_value":127537.49,"recipient":{"display_name":"M. - C. DEAN, INC."}}],"count_type":"approximate"}' + string: "\n\n\n\n \n\n\nmakegov.com | 504: Gateway + time-out\n\n\n\n\n\n\n\n\n
\n
\n
\n

\n Gateway time-out\n Error + code 504\n

\n
\n Visit + cloudflare.com for more + information.\n
\n
2026-03-04 + 14:42:48 UTC
\n
\n
\n + \
\n
\n
\n
\n \n \n \n + \ \n
\n You\n

\n + \ \n Browser\n \n

\n \n Working\n + \ \n
\n
\n \n Minneapolis\n + \

\n \n Cloudflare\n \n

\n + \ \n Working\n + \ \n
\n
\n
\n \n \n \n + \ \n
\n tango.makegov.com\n + \

\n \n Host\n \n

\n \n Error\n \n
\n
\n + \
\n
\n\n
\n
\n
\n + \

What + happened?

\n

The web server reported a gateway time-out + error.

\n
\n
\n

What can I do?

\n

Please + try again in a few minutes.

\n
\n
\n + \
\n\n \n\n
\n
\n\n" headers: CF-RAY: - - 99f9bacd2ba136b7-YYZ + - 9d71a5af2f9cad12-MSP + Cache-Control: + - private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Connection: - keep-alive + Content-Length: + - '6461' Content-Type: - - application/json + - text/html; charset=UTF-8 Date: - - Sun, 16 Nov 2025 20:27:33 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=dSKG2Se0dDGaTIzdrdnwpt4eTYieE38V23%2B50sDxnDanuHaK%2FgU%2BYiH4pbGrI8UTCrqYMgeA1VC1Qrn0qRuMabivMUxp%2B0uE1ecO8eSGty5OCdFCYlsY7MhvCQ%3D%3D"}]}' + - Wed, 04 Mar 2026 14:42:48 GMT + Expires: + - Thu, 01 Jan 1970 00:00:01 GMT Server: - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '1626' - cross-origin-opener-policy: - - same-origin referrer-policy: - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.023s x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '998' - x-ratelimit-burst-reset: - - '29' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999005' - x-ratelimit-daily-reset: - - '13' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '998' - x-ratelimit-reset: - - '29' + - SAMEORIGIN status: - code: 200 - message: OK + code: 504 + message: Gateway Timeout version: 1 diff --git a/tests/cassettes/TestContractsIntegration.test_new_identifier_filters b/tests/cassettes/TestContractsIntegration.test_new_identifier_filters index 9770467..b02246a 100644 --- a/tests/cassettes/TestContractsIntegration.test_new_identifier_filters +++ b/tests/cassettes/TestContractsIntegration.test_new_identifier_filters @@ -13,35 +13,33 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&piid=GS00Q14OADU130 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&piid=GS00Q14OADU130 response: body: - string: '{"count":0,"next":null,"cursor":null,"results":[],"count_type":"approximate"}' + string: '{"count":0,"next":null,"previous":null,"cursor":null,"previous_cursor":null,"results":[],"count_type":"approximate"}' headers: CF-RAY: - - 99f9baceaa1336b3-YYZ + - 9d71a64fbcc71e27-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:27:33 GMT + - Wed, 04 Mar 2026 14:42:49 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rVeZN4yyQo1bxUfd7pOEIeI18L%2FJbFWa6wj1fFJ7aDeIkXCKL76LG3OMgxFh7C2TNKdGnl%2Fp96JRe3mbQ%2Bnv2y2qw3F8EmmVyV6bwgo6Wu07NrbPqiGdYDMxVg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=hFTOmdJibKVa88iXGrilpQ12hX34CsGvqg9vEjmFco4ytExm3aTWCs35mKgZXhvyRkTqlqI3B7gJ7%2Bvlw0XegmBev5KGKMNfktlaLgWW6Pv1pqB7Ga3GirdW"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '77' + - '116' cross-origin-opener-policy: - same-origin referrer-policy: @@ -51,27 +49,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.020s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '997' + - '979' x-ratelimit-burst-reset: - - '29' + - '19' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999004' + - '1999759' x-ratelimit-daily-reset: - - '13' + - '85020' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '997' + - '979' x-ratelimit-reset: - - '29' + - '19' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_search_contracts_with_filters b/tests/cassettes/TestContractsIntegration.test_search_contracts_with_filters index 6e640b4..7ff8641 100644 --- a/tests/cassettes/TestContractsIntegration.test_search_contracts_with_filters +++ b/tests/cassettes/TestContractsIntegration.test_search_contracts_with_filters @@ -13,45 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31 response: body: - string: '{"count":5547902,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31&cursor=WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ%3D%3D","cursor":"WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ==","results":[{"key":"CONT_AWD_W91QVN24F5018_9700_W91QVN23A0015_9700","piid":"W91QVN24F5018","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":2718.57,"recipient":{"display_name":"PAJU - SANITATION CORP."}},{"key":"CONT_AWD_W91QVN24F5017_9700_W91QVN19D0046_9700","piid":"W91QVN24F5017","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":7889.61,"recipient":{"display_name":"KOREA - HOUSING MANAGEMENT CO.,LTD"}},{"key":"CONT_AWD_W912PF24PV002_9700_-NONE-_-NONE-","piid":"W912PF24PV002","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN USD.","total_contract_value":126244.26,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W912PF24PV001_9700_-NONE-_-NONE-","piid":"W912PF24PV001","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN EUR.","total_contract_value":232440.24,"recipient":{"display_name":"GPC - FOREIGN CONTRACTOR CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W9113M24F0005_9700_W52P1J16D0019_9700","piid":"W9113M24F0005","award_date":"2023-12-31","description":"RENEWAL - FY24 NUTANIX LICENSE","total_contract_value":520635.33,"recipient":{"display_name":"GOVERNMENT - ACQUISITIONS INC"}}],"count_type":"approximate"}' + string: '{"count":726293,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31&cursor=WyIyMDIzLTEyLTMxIiwgImZlMDM5MzUxLWNkYzMtNWEyOC05OTc4LTc5NmIyYTIwZTM5YSJd","previous":null,"cursor":"WyIyMDIzLTEyLTMxIiwgImZlMDM5MzUxLWNkYzMtNWEyOC05OTc4LTc5NmIyYTIwZTM5YSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_SPE30024FHDVS_9700_SPE30022DA000_9700","piid":"SPE30024FHDVS","award_date":"2023-12-31","description":"4563205804!DOUGHNUTS, + FRESH, VARIETY PACK,","total_contract_value":185.92,"recipient":{"display_name":"GLOBAL + FOOD SERVICES COMPANY"}},{"key":"CONT_AWD_SPE2DV24FTNFB_9700_SPE2DV17D0200_9700","piid":"SPE2DV24FTNFB","award_date":"2023-12-31","description":"4563205985!KIT + FOL CATH TMM-FC 1S","total_contract_value":242.16,"recipient":{"display_name":"CARDINAL + HEALTH 200, LLC"}},{"key":"CONT_AWD_SPE2DV24FTNFT_9700_SPE2DV17D0200_9700","piid":"SPE2DV24FTNFT","award_date":"2023-12-31","description":"4563205978!INSOLE + CUST SZ A 2S","total_contract_value":468.0,"recipient":{"display_name":"CARDINAL + HEALTH 200, LLC"}},{"key":"CONT_AWD_SPE2D924F1092_9700_SPE2DX15D0022_9700","piid":"SPE2D924F1092","award_date":"2023-12-31","description":"8510360826!ASPIRIN + TABLETS,USP","total_contract_value":1.22,"recipient":{"display_name":"Cardinal + Health, Inc."}},{"key":"CONT_AWD_47QSSC24F23L7_4732_47QSHA21A0017_4732","piid":"47QSSC24F23L7","award_date":"2023-12-31","description":"CEILING + TILE 24 W 24 L 5/8 THICK PK16","total_contract_value":1400.4,"recipient":{"display_name":"W.W. + GRAINGER, INC."}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c1b39de4c9c-MSP + - 9d71a5613872a1cf-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:55 GMT + - Wed, 04 Mar 2026 14:42:10 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=hGm8lTYgR7eSC0kVdco4zL1J%2F7iO82E1VLGPssIiKoVlf6fnJDbHeL482M31zRHfKBJ9um9ZDhH5zJxVAA0e%2BFLZsHV4K5FOD8ORIEdbvRMhuBvqgpe%2FZzvT8g%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CfBZhxy7K3jWT6yC0e4Tw96UcUKepfffIemNOzdM5tkuKnTq3Bk5Lf9XLklGNfGStRJApGZs4KwZTQMhZQp2nhupWt1yjSASbcvOr6J5W%2BB3yCGotuaZwCYo"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1792' + - '1682' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,113 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.024s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '992' + - '958' x-ratelimit-burst-reset: - - '58' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998685' + - '1999770' x-ratelimit-daily-reset: - - '91' + - '85058' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '992' + - '958' x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31 - response: - body: - string: '{"count":5547902,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2023-01-01&award_date_lte=2023-12-31&cursor=WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ%3D%3D","cursor":"WyIyMDIzLTEyLTMxIiwgIkNPTlRfQVdEX1c5MTEzTTI0RjAwMDVfOTcwMF9XNTJQMUoxNkQwMDE5Xzk3MDAiXQ==","results":[{"key":"CONT_AWD_W91QVN24F5018_9700_W91QVN23A0015_9700","piid":"W91QVN24F5018","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":2718.57,"recipient":{"display_name":"PAJU - SANITATION CORP."}},{"key":"CONT_AWD_W91QVN24F5017_9700_W91QVN19D0046_9700","piid":"W91QVN24F5017","award_date":"2023-12-31","description":"STAND - ALONE CAR DEC 2023","total_contract_value":7889.61,"recipient":{"display_name":"KOREA - HOUSING MANAGEMENT CO.,LTD"}},{"key":"CONT_AWD_W912PF24PV002_9700_-NONE-_-NONE-","piid":"W912PF24PV002","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN USD.","total_contract_value":126244.26,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W912PF24PV001_9700_-NONE-_-NONE-","piid":"W912PF24PV001","award_date":"2023-12-31","description":"CONSOLIDATED - QUARTERLY (1QFY24) REPORTING OF GPC PURCHASES ABOVE THE MPT MADE IN EUR.","total_contract_value":232440.24,"recipient":{"display_name":"GPC - FOREIGN CONTRACTOR CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W9113M24F0005_9700_W52P1J16D0019_9700","piid":"W9113M24F0005","award_date":"2023-12-31","description":"RENEWAL - FY24 NUTANIX LICENSE","total_contract_value":520635.33,"recipient":{"display_name":"GOVERNMENT - ACQUISITIONS INC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 99f9b9460de0a1d8-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 20:26:30 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rKKjc0OZUw%2Bl3Z7fPOmMN17Rp7S%2BsJAlgsGx9gLeyA3ou5fprS47oZRt0CWjevwfWWkPdmBI%2FeYUiedjr6pY9FLa2tHI2%2FjrHvGtwkUzJhKzJ7NUBHXU1Spqug%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '1792' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.019s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '991' - x-ratelimit-burst-reset: - - '35' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999012' - x-ratelimit-daily-reset: - - '5' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '991' - x-ratelimit-reset: - - '35' + - '4' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_search_filters_object_with_new_parameters b/tests/cassettes/TestContractsIntegration.test_search_filters_object_with_new_parameters index cdc2cdd..00b7286 100644 --- a/tests/cassettes/TestContractsIntegration.test_search_filters_object_with_new_parameters +++ b/tests/cassettes/TestContractsIntegration.test_search_filters_object_with_new_parameters @@ -13,45 +13,46 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&pop_start_date_gte=2024-01-01&expiring_lte=2025-12-31&fiscal_year=2024 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&pop_start_date_gte=2024-01-01&expiring_lte=2025-12-31&fiscal_year=2024 response: body: - string: '{"count":19897,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&pop_start_date_gte=2024-01-01&expiring_lte=2025-12-31&fiscal_year=2024&cursor=WyIyMDI0LTA5LTMwIiwgIkNPTlRfQVdEX040MjE1ODI0UDAwNjZfOTcwMF8tTk9ORS1fLU5PTkUtIl0%3D","cursor":"WyIyMDI0LTA5LTMwIiwgIkNPTlRfQVdEX040MjE1ODI0UDAwNjZfOTcwMF8tTk9ORS1fLU5PTkUtIl0=","results":[{"key":"CONT_AWD_W9124P24P0111_9700_-NONE-_-NONE-","piid":"W9124P24P0111","award_date":"2024-09-30","description":"VAULT - STANDARD SOFTWARE","total_contract_value":5691.7,"recipient":{"display_name":"SOURCEGEAR - LLC"}},{"key":"CONT_AWD_W9124P24F0836_9700_W52P1J16D0010_9700","piid":"W9124P24F0836","award_date":"2024-09-30","description":"HARDWARE - 4 COMPUTE AND STORE SERVERS AND SOFTWARE AND ACCESSORIES","total_contract_value":110430.08,"recipient":{"display_name":"DELL - FEDERAL SYSTEMS L.P"}},{"key":"CONT_AWD_W58RGZ24F0485_9700_W58RGZ20D0028_9700","piid":"W58RGZ24F0485","award_date":"2024-09-30","description":"TAIWAN - SOFTWARE LOAD ORDERING PERIOD FIVE","total_contract_value":3180.0,"recipient":{"display_name":"SIKORSKY - AIRCRAFT CORPORATION"}},{"key":"CONT_AWD_N6133124P1133_9700_-NONE-_-NONE-","piid":"N6133124P1133","award_date":"2024-09-30","description":"INTERMAPHICS - SINGLE DEVELOPER SOFTWARE LICENSE RENEWALS","total_contract_value":35471.0,"recipient":{"display_name":"KONGSBERG - GEOSPATIAL LTD."}},{"key":"CONT_AWD_N4215824P0066_9700_-NONE-_-NONE-","piid":"N4215824P0066","award_date":"2024-09-30","description":"MAINTENANCE - RENEWAL FOR CUTWORKS SOFTWAR","total_contract_value":26312.0,"recipient":{"display_name":"Gerber - Technology LLC"}}],"count_type":"approximate"}' + string: '{"count":3838,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&search=software&pop_start_date_gte=2024-01-01&expiring_lte=2025-12-31&fiscal_year=2024&cursor=WyIyMDI0LTA5LTMwIiwgImY3OWM0ZGJmLTM4ZTQtNWRiNi04MTU4LTMxNjdhNTk1YjgzZCJd","previous":null,"cursor":"WyIyMDI0LTA5LTMwIiwgImY3OWM0ZGJmLTM4ZTQtNWRiNi04MTU4LTMxNjdhNTk1YjgzZCJd","previous_cursor":null,"results":[{"key":"CONT_AWD_47QSSC24FFY0X_4732_GS02FW0003_4730","piid":"47QSSC24FFY0X","award_date":"2024-09-30","description":"MOUSE, + DATA ENTRY: ITEMNAME MOUSE, OPTICAL SENSOR, 3-BUTTON SHAPE ERGONOMIC SHAPE + TYPE OPTICALDESIGN 800DPI BUTTON OPTIONS 2 NAVIGATION BUTTONS AND A SCROLL + WHEEL COLOR BLACK AND GREY SOFTWARE PLUG & PLAY PORT TYPE USB PORT OPERATING + SYSTEM ANY PC/ W","total_contract_value":409.0,"recipient":{"display_name":"NATIONAL + INDUSTRIES FOR THE BLIND"}},{"key":"CONT_AWD_FA521524FG044_9700_NNG15SC82B_8000","piid":"FA521524FG044","award_date":"2024-09-30","description":"IT + AND TELECOM -BUSINESS APPLICATION SOFTWARE","total_contract_value":24990.0,"recipient":{"display_name":"NEW + TECH SOLUTIONS, INC."}},{"key":"CONT_AWD_15JCRT24F00000065_1501_NNG15SD39B_8000","piid":"15JCRT24F00000065","award_date":"2024-09-30","description":"SOFTWARE + SUBSCRIPTION VMWARE CLOUD FOUNDATION 5 (VSAN)","total_contract_value":67165.5,"recipient":{"display_name":"REGAN + TECHNOLOGIES CORP"}},{"key":"CONT_AWD_HTC71124FD085_9700_N6600121A0031_9700","piid":"HTC71124FD085","award_date":"2024-09-30","description":"FLEXERA + DATA PLATFORM SOFTWARE AND IMPLEMENTATION AND TRAINING SERVICES","total_contract_value":97292.6,"recipient":{"display_name":"CARAHSOFT + TECHNOLOGY CORP."}},{"key":"CONT_AWD_HQ003424F0803_9700_HQ003420D0002_9700","piid":"HQ003424F0803","award_date":"2024-09-30","description":"SOFTWARE-AS-A-SERVICE + PLATFORM LICENSES","total_contract_value":3750000.0,"recipient":{"display_name":"POPLICUS + INCORPORATED"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f9bad0193653dd-YYZ + - 9d71a6510e96a1f5-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:27:33 GMT + - Wed, 04 Mar 2026 14:42:51 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=SRyRdoiP9hOuJaVXkasmQbhwoXzbLuUxGdXOVKEfkq07PwiW%2BGiUTC5WLvBBHMNP8eWthb%2F0hZe4jpvHj5WiF1w4zGfrKxGy5CrIlILosVybiMf85AvITMEtGw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=qCOlGs58pPjl54W6jecs3lQES%2FzCr4LErkvBjrxry6dVVNWCUjNy%2FxEhMooMKW27byIgQ%2BgGzESlxhOaI3Ugj8Vy%2FqM2X6Badx8Leze%2B6axu7k8FKH%2FJ2b8y"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1736' + - '2021' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +62,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.022s + - 2.380s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '996' + - '978' x-ratelimit-burst-reset: - - '29' + - '16' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999003' + - '1999758' x-ratelimit-daily-reset: - - '13' + - '85017' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '996' + - '978' x-ratelimit-reset: - - '29' + - '16' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[asc-] b/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[asc-] index 94f061f..4724bdb 100644 --- a/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[asc-] +++ b/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[asc-] @@ -13,45 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=award_date + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=award_date response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=award_date&cursor=WyIyMDI0LTEwLTAxIiwgIkNPTlRfQVdEX1c5MVpMSzI1UFYwMDA4Xzk3MDBfLU5PTkUtXy1OT05FLSJd","cursor":"WyIyMDI0LTEwLTAxIiwgIkNPTlRfQVdEX1c5MVpMSzI1UFYwMDA4Xzk3MDBfLU5PTkUtXy1OT05FLSJd","results":[{"key":"CONT_AWD_W91ZLK25PV0012_9700_-NONE-_-NONE-","piid":"W91ZLK25PV0012","award_date":"2024-10-01","description":"CONSOLIDATED - MONTHLY GOVERNMENT PURCHASE CARD TRANSACTIONS ABOVE THE MICRO-PURCHASE THRESHOLD.","total_contract_value":694435.17,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W91ZLK25PV0011_9700_-NONE-_-NONE-","piid":"W91ZLK25PV0011","award_date":"2024-10-01","description":"CONSOLIDATED - MONTHLY GOVERNMENT PURCHASE CARD TRANSACTIONS ABOVE THE MICRO-PURCHASE THRESHOLD.","total_contract_value":856590.91,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W91ZLK25PV0010_9700_-NONE-_-NONE-","piid":"W91ZLK25PV0010","award_date":"2024-10-01","description":"CONSOLIDATED - MONTHLY GOVERNMENT PURCHASE CARD TRANSACTIONS ABOVE THE MICRO-PURCHASE THRESHOLD.","total_contract_value":1652994.57,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W91ZLK25PV0009_9700_-NONE-_-NONE-","piid":"W91ZLK25PV0009","award_date":"2024-10-01","description":"CONSOLIDATED - MONTHLY GOVERNMENT PURCHASE CARD TRANSACTIONS ABOVE THE MICRO-PURCHASE THRESHOLD.","total_contract_value":2924202.87,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}},{"key":"CONT_AWD_W91ZLK25PV0008_9700_-NONE-_-NONE-","piid":"W91ZLK25PV0008","award_date":"2024-10-01","description":"CONSOLIDATED - MONTHLY GOVERNMENT PURCHASE CARD TRANSACTIONS ABOVE THE MICRO-PURCHASE THRESHOLD.","total_contract_value":1660531.17,"recipient":{"display_name":"GPC - CONSOLIDATED REPORTING"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=award_date&cursor=WyIxOTgxLTAzLTE1IiwgImRkMmFlMjQ4LTlkNDktNWI3Zi04MWJmLWQxNDA4Njg2NjBiYiJd","previous":null,"cursor":"WyIxOTgxLTAzLTE1IiwgImRkMmFlMjQ4LTlkNDktNWI3Zi04MWJmLWQxNDA4Njg2NjBiYiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_N6871167C0149_9700_-NONE-_-NONE-","piid":"N6871167C0149","award_date":"1967-01-01","description":null,"total_contract_value":35397.0,"recipient":{"display_name":"NV + ENERGY INC"}},{"key":"CONT_AWD_N6871170C1205_9700_-NONE-_-NONE-","piid":"N6871170C1205","award_date":"1970-06-07","description":null,"total_contract_value":1644571.58,"recipient":{"display_name":"IMPERIAL + IRRIGATION DISTRICT"}},{"key":"CONT_AWD_N6871177F7668_9700_-NONE-_-NONE-","piid":"N6871177F7668","award_date":"1977-06-01","description":null,"total_contract_value":62000.0,"recipient":{"display_name":"SOUTHWEST + GAS CORPORATION"}},{"key":"CONT_AWD_N6274268C0001_9700_-NONE-_-NONE-","piid":"N6274268C0001","award_date":"1979-10-01","description":"200112!000326!5700!CA12 !30 + CONS/LGC !N6274268C0001 !A!N!*!N!QW02 !20010923!20010930!031754690!006926927!103901773!N!HAWAIIAN + ELECTRIC COMPANY, INC!821 WARD AVENUE !HONOLULU !HI!96840!22700!009!15!KAHULUI !MAUI !HAWAII !+000000145373!N!N!000000000000!S112!ELECTRIC + SERVICES !S1 !SERVICES !3000!NOT + DISCERNABLE OR CLASSIFIED !221122!*!*!3! ! ! !*!*!*!B!*!*!N!Z!B !U!J!1!001!N!1E!Z!N!Z! ! !Y!C!N! + ! ! !Z!Z!A!A!000!A!B!N! ! ! ! ! ! !0001!","total_contract_value":47128741.0,"recipient":{"display_name":"HAWAIIAN + ELECTRIC COMPANY, INC."}},{"key":"CONT_AWD_18500198103C05390539GS00C02543_1700_GS00C02543_142F","piid":"18500198103C05390539GS00C02543","award_date":"1981-03-15","description":null,"total_contract_value":0.0,"recipient":{"display_name":"625 + ORLEANS PLACE"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f9b9500ac37091-YYZ + - 9d71a5a4ed53ad1a-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:26:32 GMT + - Wed, 04 Mar 2026 14:42:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Hn6sigbNxA8KjM8jxSWxwWAtxuE%2B4fKymm4c8eZlNM1Y6SLQT6nb8qzV%2BFtq%2BeOvHNjoYx7zntQQd34HrshMi3Rc6vl28F0%2FjsBND2AN339IRSjA%2FkOM2rhMfg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=hOrQlp6nHmL%2BVF83mrFiZO175qqSBBMMVwLa1P6u0KcucHyYCEdoMkdgZ9oDkz1Zg17KzRIwpVc7X%2BMVRMMr265%2Fzde5Aq4NVp4LfCMTEPHhMTUNUIdVnQMv"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1946' + - '2094' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.019s + - 0.052s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '984' + - '983' x-ratelimit-burst-reset: - - '34' + - '46' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999005' + - '1999763' x-ratelimit-daily-reset: - - '3' + - '85047' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '984' + - '983' x-ratelimit-reset: - - '34' + - '46' status: code: 200 message: OK diff --git a/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[desc--] b/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[desc--] index 322ff1e..91cb41d 100644 --- a/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[desc--] +++ b/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[desc--] @@ -13,49 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=-award_date + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=-award_date response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=-award_date&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&ordering=-award_date&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f9b951994053e9-YYZ + - 9d71a5a69b641e27-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 20:26:32 GMT + - Wed, 04 Mar 2026 14:42:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=9Y2zDFnY7GA5JpY1pn%2FEsiYUCn50HpmhDMnJ4Qjny1qBLAxxgigT2NzmPq%2B125NlX4Ty6JgbTKNHWC%2FyS2Igd9dZLXE8P3PeGM9NpxcoToykE1MhjX54Syl9UQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Gzw2IIAbf9vc9z09nEUQoguHWYC9IqpmVx%2ByoIMn9W6ExWaMJ0%2BawENsLXvjkrsSnpsP86ZmuUtokKLk1odMyUB9bfpeLKhweUQBVp5ArOY%2B%2B2r%2B2Df9IBqw"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1995' + - '1670' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.019s + - 0.035s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '983' + - '982' x-ratelimit-burst-reset: - - '34' + - '46' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999004' + - '1999762' x-ratelimit-daily-reset: - - '3' + - '85047' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '983' + - '982' x-ratelimit-reset: - - '34' + - '46' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_contracts b/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_contracts index f2a8d30..8531930 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_contracts +++ b/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_contracts @@ -13,45 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside + uri: https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ==","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","fiscal_year":2026,"total_contract_value":1089550.8,"base_and_exercised_options_value":1089550.8,"naics_code":561612,"set_aside":"NONE","recipient":{"uei":"HQXXAB4DV7H3","display_name":"REDCON - SOLUTIONS GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","fiscal_year":2026,"total_contract_value":17351.59,"base_and_exercised_options_value":17351.59,"naics_code":236220,"set_aside":null,"recipient":{"uei":"MR6FELMMCJ31","display_name":"ONSITE - CONSTRUCTION GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"KS"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1371325.32,"base_and_exercised_options_value":217309.6,"naics_code":541519,"set_aside":"NONE","recipient":{"uei":"GDQLRDFJNRD3","display_name":"MERLIN - INTERNATIONAL, INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":4387892.04,"base_and_exercised_options_value":1460606.88,"naics_code":541820,"set_aside":"SBA","recipient":{"uei":"U3M3JLGJLQ63","display_name":"RACK-WILDNER - & REESE, INC."},"place_of_performance":{"country_code":"USA","state_code":"PA"}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":24732.97,"base_and_exercised_options_value":24732.97,"naics_code":541519,"set_aside":null,"recipient":{"uei":"SC8LMLWA6H51","display_name":"REGENCY - CONSULTING INC"},"place_of_performance":{"country_code":"USA","state_code":"WV"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1499803.54,"base_and_exercised_options_value":0.0,"naics_code":541211,"set_aside":null,"recipient":{"uei":"ECMMFNMSLXM7","display_name":"ERNST - & YOUNG LLP"},"place_of_performance":{"country_code":"USA","state_code":"NY"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":73050.0,"base_and_exercised_options_value":73050.0,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"F4M9NB1HD785","display_name":"COLOSSAL - CONTRACTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":21711.76,"base_and_exercised_options_value":21711.76,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"JMVMGGNJGA29","display_name":"GOVPLACE, - LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":13390.73,"base_and_exercised_options_value":13390.73,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"F4M9NB1HD785","display_name":"COLOSSAL - CONTRACTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":99974.58,"base_and_exercised_options_value":99974.58,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"JEANDJTZ8HJ3","display_name":"FCN - INC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside&cursor=WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":122510.0,"base_and_exercised_options_value":122510.0,"naics_code":541511,"set_aside":"NONE","recipient":{"uei":"GMHBZNNNPWN6","display_name":"PEOPLE + DESIGNS INC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":945638.46,"base_and_exercised_options_value":945638.46,"naics_code":513120,"set_aside":"NONE","recipient":{"uei":"S9UYLMMXE6X8","display_name":"ELSEVIER + INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":255.0,"base_and_exercised_options_value":255.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"NTBNTF5W31H5","display_name":"PHAMATECH, + INCORPORATED"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":36904.0,"base_and_exercised_options_value":36904.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":8865.0,"base_and_exercised_options_value":8865.0,"naics_code":322291,"set_aside":"NONE","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"place_of_performance":{"country_code":"USA","state_code":"TX"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":4786.76,"base_and_exercised_options_value":4786.76,"naics_code":517312,"set_aside":null,"recipient":{"uei":"P2S7GZFBCSJ1","display_name":"ATT + MOBILITY LLC"},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":22000.0,"base_and_exercised_options_value":22000.0,"naics_code":921190,"set_aside":"NONE","recipient":{"uei":"JU6MDNDXZU65","display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"},"place_of_performance":{"country_code":"USA","state_code":"TN"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":102.26,"base_and_exercised_options_value":102.26,"naics_code":517410,"set_aside":null,"recipient":{"uei":"EEL5LCLB97W5","display_name":"TRACE + SYSTEMS INC."},"place_of_performance":{"country_code":"USA","state_code":"AL"}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":53379.0,"base_and_exercised_options_value":53379.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":1554054.48,"base_and_exercised_options_value":289553.28,"naics_code":541990,"set_aside":null,"recipient":{"uei":"LATETAUF84E7","display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MT"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c257e78a225-MSP + - 9d71a70d3a7ba1c7-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:56 GMT + - Wed, 04 Mar 2026 14:43:19 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=BabrvSk9Ci%2F6r8ZGecXuOZfIm0hL4JXLFry%2Fn1tNJUtXjxjmu1Wr1ebgEj9lBrrdmVRisJ%2BUqzYqRHtt3BDNtWhuStZeeyiS00KtsL64dhLGxrEl4uffV%2FAS2w%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ou20X%2BIrcrMFvfWol2iHYWWHuxaKiAYczSYeNnt8a3HRy1QWSoGGiKd1puqcKzVx%2F2kekEFzoHYkL07J4Lx%2BH7Vq25QfturHVhO36NpzXD0DCznb%2FXXnIDWB"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '4322' + - '4337' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.049s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '984' + - '986' x-ratelimit-burst-reset: - - '56' + - '2' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998677' + - '1999751' x-ratelimit-daily-reset: - - '89' + - '84989' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '984' + - '986' x-ratelimit-reset: - - '56' + - '2' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_entities b/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_entities index 943ef1e..0a7250b 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_entities +++ b/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_entities @@ -13,10 +13,17 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/entities/?page=1&limit=10&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district + uri: https://tango.makegov.com/api/entities/?page=1&limit=10&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=10&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=10&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"dba_name\":\"\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}],\"primary_naics\":\"541620\",\"naics_codes\":[{\"code\":\"541620\",\"sba_small_business\":\"Y\"},{\"code\":\"541690\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"B503\",\"B521\"],\"email_address\":null,\"entity_url\":\"https://www.106advisorygroup.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"},\"mailing_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE PRO GLOBAL LLC\",\"dba_name\":\"\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business @@ -27,85 +34,77 @@ interactions: Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"dba_name\":\"Ryan Local Business Concierge\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"primary_naics\":\"561110\",\"naics_codes\":[{\"code\":\"561110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"AF34\",\"B550\"],\"email_address\":null,\"entity_url\":\"https://www.localbusinessconcierge.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"19\"},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"dba_name\":\"ABA\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"dba_name\":\"\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541990\",\"naics_codes\":[{\"code\":\"541990\",\"sba_small_business\":\"Y\"},{\"code\":\"611430\",\"sba_small_business\":\"Y\"},{\"code\":\"813910\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.abofamerica.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"},\"mailing_address\":{\"city\":\"HERNDON\",\"zip_code\":\"20171\",\"country_code\":\"USA\",\"address_line1\":\"13800 - COPPERMINE RD\",\"address_line2\":\"\",\"zip_code_plus4\":\"6163\",\"state_or_province_code\":\"VA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"10\"},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}],\"primary_naics\":\"561720\",\"naics_codes\":[{\"code\":\"561720\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"S201\"],\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Vine + Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"},\"mailing_address\":{\"city\":\"Vine + Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" + AccessIT Group, LLC.\",\"dba_name\":\"\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"541512\",\"naics_codes\":[{\"code\":\"541512\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.accessitgroup.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"King + of Prussia\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"2000 + Valley Forge Cir Ste 106\",\"address_line2\":\"\",\"zip_code_plus4\":\"4526\",\"state_or_province_code\":\"PA\"},\"mailing_address\":{\"city\":\"KING + OF PRUSSIA\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"20106 + VALLEY FORGE CIRCLE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1112\",\"state_or_province_code\":\"PA\"},\"congressional_district\":\"04\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":8,\"subawards_count\":7,\"awards_obligated\":39217.28,\"subawards_obligated\":558846.9},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"dba_name\":\"\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"621340\",\"naics_codes\":[{\"code\":\"621340\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":\"Contact: + HANNAH ANDREWS\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"},\"mailing_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://umanitoba.ca/st-pauls-college/mauro-institute-peace-justice\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"70 Dysart Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"mailing_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"c/o St. Paul's College\",\"address_line2\":\"70 - Dysart Road, Room 252\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" + Dysart Road, Room 252\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"congressional_district\":\"\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"dba_name\":\"CITY CHURCH\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://citync.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"GASTONIA\",\"zip_code\":\"28056\",\"country_code\":\"USA\",\"address_line1\":\"3100 CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"},\"mailing_address\":{\"city\":\"Gastonia\",\"zip_code\":\"28055\",\"country_code\":\"USA\",\"address_line1\":\"P.O. - Box 551387\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NC\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"14\"},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" + Box 551387\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NC\"},\"congressional_district\":\"14\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"dba_name\":\"1080STUDIO\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"541310\",\"naics_codes\":[{\"code\":\"541310\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.1080studio.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 - Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"12\"},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" - Clyde Joseph Enterprises, LLC\",\"dba_name\":\"Blastco\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}],\"primary_naics\":\"332812\",\"naics_codes\":[{\"code\":\"332811\",\"sba_small_business\":\"Y\"},{\"code\":\"332812\",\"sba_small_business\":\"Y\"},{\"code\":\"332813\",\"sba_small_business\":\"Y\"},{\"code\":\"333992\",\"sba_small_business\":\"Y\"},{\"code\":\"811310\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"4940\",\"J010\",\"J012\",\"J015\",\"J016\",\"J017\",\"J019\",\"J020\",\"J022\",\"J023\",\"J024\",\"J025\",\"J026\",\"J031\",\"J034\",\"J035\",\"J036\",\"J037\",\"J038\",\"J041\",\"J042\",\"J043\",\"J044\",\"J045\",\"J046\",\"J047\",\"J048\",\"J049\",\"J053\",\"J054\",\"J056\",\"J059\",\"J061\",\"J066\",\"J071\",\"J072\",\"J073\",\"J080\",\"J081\",\"J093\",\"J094\",\"J095\",\"K038\",\"K049\",\"L049\"],\"email_address\":null,\"entity_url\":\"https://www.blastcoinc.com/\",\"description\":\"Contact: - DRAKE HILL\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 - Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"mailing_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 - Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"03\"},{\"uei\":\"SAYLQCANSYD4\",\"legal_business_name\":\" - Coil-Tran LLC\",\"dba_name\":\"Noratel US\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign - Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}],\"primary_naics\":\"335311\",\"naics_codes\":[{\"code\":\"334416\",\"sba_small_business\":\"N\"},{\"code\":\"335311\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.noratel.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 - S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"mailing_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 - S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"01\"},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" - Cuyuna Range Housing, Inc.\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit - Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 - 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"mailing_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 - 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"08\"},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"dba_name\":\"\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}],\"primary_naics\":\"812111\",\"naics_codes\":[{\"code\":\"812111\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"8405\"],\"email_address\":null,\"entity_url\":\"https://doethebarber23.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"},\"mailing_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"04\"}]}" + Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"congressional_district\":\"12\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"216 + W Ohio St Ste C\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"},\"mailing_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"PO + Box 70\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"dba_name\":\"\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"NARANJITO\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"CARR + 878 KM 3.3 SECTOR LA MAYA\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"},\"mailing_address\":{\"city\":\"Naranjito\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"HC + 75 Box 1816\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"},\"congressional_district\":\"98\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}}]}" headers: CF-RAY: - - 99f88c26e9abacee-MSP + - 9d71a70f0fe3a209-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:56 GMT + - Wed, 04 Mar 2026 14:43:19 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=jCxTt8ve2vdmY%2FEbdeXB1UFyrCEPVH06IyQrDR45zWidDpRRfAMaDlKgJVurTlXFTIBbdSbm5EXo8RekY%2Fpnt1EyG3eYj7q5dRxmCpo6qPywlpWuX8Jc6lRdeg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=2YmdsR3Mqyxa0jbIEE0g2pm1c%2FgfHJGNM4GrO8PWyaCGHTZcTXaqWXIh1HHUwB%2FnE8pszET6zw9ZzjNuLxiiL7NzxYNETK8WFBcdP4RXCzaRs%2BmYMlzsL3E4"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '14093' + - '13101' cross-origin-opener-policy: - same-origin referrer-policy: @@ -115,27 +114,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.050s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '983' + - '985' x-ratelimit-burst-reset: - - '56' + - '1' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998676' + - '1999750' x-ratelimit-daily-reset: - - '89' + - '84989' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '983' + - '985' x-ratelimit-reset: - - '56' + - '1' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_date_field_parsing_edge_cases b/tests/cassettes/TestEdgeCasesIntegration.test_date_field_parsing_edge_cases index e28bf06..3d8b904 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_date_field_parsing_edge_cases +++ b/tests/cassettes/TestEdgeCasesIntegration.test_date_field_parsing_edge_cases @@ -13,100 +13,88 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=25&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=25&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=25&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzc1RkNNQzI2RjAwMTlfNzUzMF83NUZDTUMyMEQwMDE1Xzc1MzAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzc1RkNNQzI2RjAwMTlfNzUzMF83NUZDTUMyMEQwMDE1Xzc1MzAiXQ==","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","fiscal_year":2026,"description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","fiscal_year":2026,"description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","fiscal_year":2026,"description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","fiscal_year":2026,"description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","fiscal_year":2026,"description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","award_date":"2025-11-14","fiscal_year":2026,"description":"COMPREHENSIVE - RISK ASSESSMENT AND MITIGATION - OCFO","total_contract_value":1499803.54,"recipient":{"display_name":"ERNST - & YOUNG LLP"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","award_date":"2025-11-14","fiscal_year":2026,"description":"F5 - NETWORK MAINTENANCE RENEWAL","total_contract_value":73050.0,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","award_date":"2025-11-14","fiscal_year":2026,"description":"XSI - HARDWARE MAINTENANCE RENEWAL FY26","total_contract_value":21711.76,"recipient":{"display_name":"GOVPLACE, - LLC"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","award_date":"2025-11-14","fiscal_year":2026,"description":"TELLABS - STANDARD SUPPORT & PANORAMA INM","total_contract_value":13390.73,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","fiscal_year":2026,"description":"CISCO - NASA CISCO REMOTE VPN OBSOLESCENCE REPLACEMENT","total_contract_value":99974.58,"recipient":{"display_name":"FCN - INC"}},{"key":"CONT_AWD_80HQTR26F7003_8000_80NSSC21D0001_8000","piid":"80HQTR26F7003","award_date":"2025-11-14","fiscal_year":2026,"description":"THIS - TASK ORDER IS TO PURCHASE MATHWORKS MATLAB LICENSES FOR JSC PER QUOTE 13896654 - DATED 11/13/2025.","total_contract_value":14940.34,"recipient":{"display_name":"THE - MATHWORKS, INC."}},{"key":"CONT_AWD_80HQTR26F7002_8000_80NSSC21D0001_8000","piid":"80HQTR26F7002","award_date":"2025-11-14","fiscal_year":2026,"description":"THIS - TASK ORDER IS TO PURCHASE MATHWORKS MATLAB LICENSES FOR GSFC PER QUOTE 13896650 - DATED 11/13/2025.","total_contract_value":2651.0,"recipient":{"display_name":"THE - MATHWORKS, INC."}},{"key":"CONT_AWD_80HQTR26F7001_8000_80NSSC21D0001_8000","piid":"80HQTR26F7001","award_date":"2025-11-14","fiscal_year":2026,"description":"THIS - TASK ORDER IS TO PURCHASE MATHWORKS MATLAB LICENSES PER QUOTE 13896646 DATED - 11/13/2025.","total_contract_value":3140.0,"recipient":{"display_name":"THE - MATHWORKS, INC."}},{"key":"CONT_AWD_80ARC026FA001_8000_80GRC025DA001_8000","piid":"80ARC026FA001","award_date":"2025-11-14","fiscal_year":2026,"description":"TASK - ORDER TO PROVIDE CUSTODIAL SERVICES ABOVE THE BASELINE SERVICES.","total_contract_value":106717.31,"recipient":{"display_name":"AHTNA - INTEGRATED SERVICES LLC"}},{"key":"CONT_AWD_75N93026F00001_7529_HHSN316201500040W_7529","piid":"75N93026F00001","award_date":"2025-11-14","fiscal_year":2026,"description":"AWS - CLOUDLINK SERVICE - RDCF 2X10G (AMBIS 2275621)","total_contract_value":79453.12,"recipient":{"display_name":"NEW - TECH SOLUTIONS, INC."}},{"key":"CONT_AWD_75H71226F80002_7527_36F79724D0071_3600","piid":"75H71226F80002","award_date":"2025-11-14","fiscal_year":2026,"description":"ZOLL - MEDICAL CORPORATION DEFIBRILLATOR EQUIPMENT","total_contract_value":630011.67,"recipient":{"display_name":"AFTER - ACTION MEDICAL AND DENTAL SUPPLY, LLC"}},{"key":"CONT_AWD_75H71226F28005_7527_75H71224A00019_7527","piid":"75H71226F28005","award_date":"2025-11-14","fiscal_year":2026,"description":"BPA - CALL FOR CRSU. TELERADIOLOGY SERVICES","total_contract_value":256875.0,"recipient":{"display_name":"VETMED - GROUP LLC"}},{"key":"CONT_AWD_75H71126P00002_7527_-NONE-_-NONE-","piid":"75H71126P00002","award_date":"2025-11-14","fiscal_year":2026,"description":"PITNEY - BOWES POSTAGE REFILL FOR LAWTON INDIAN HOSPITAL.","total_contract_value":25000.0,"recipient":{"display_name":"THE - PITNEY BOWES BANK, INC."}},{"key":"CONT_AWD_75H71126F27002_7527_75H71126D00001_7527","piid":"75H71126F27002","award_date":"2025-11-14","fiscal_year":2026,"description":"LAB - AND PATHOLOGY - OCAO","total_contract_value":35000.0,"recipient":{"display_name":"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC"}},{"key":"CONT_AWD_75H71126F27001_7527_75H71126D00001_7527","piid":"75H71126F27001","award_date":"2025-11-14","fiscal_year":2026,"description":"LAB - AND PATHOLOGY - OCAO","total_contract_value":198000.0,"recipient":{"display_name":"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC"}},{"key":"CONT_AWD_75H70726P00003_7527_-NONE-_-NONE-","piid":"75H70726P00003","award_date":"2025-11-14","fiscal_year":2026,"description":"LICENSED - CLINICAL SOCIAL WORKER (LCSW) - NSRTC","total_contract_value":899491.87,"recipient":{"display_name":"TESTUDO - LOGISTICS LLC"}},{"key":"CONT_AWD_75H70626P00018_7527_-NONE-_-NONE-","piid":"75H70626P00018","award_date":"2025-11-14","fiscal_year":2026,"description":"REGISTERED - NURSE SERVICES FOR THE INPATIENT AND EMERGENCY ROOM DEPARTMENT AT THE CHEYENNE - RIVER HEALTH CENTER LOCATED IN EAGLE BUTTE, SD. PERIOD OF PERFORMANCE IS 90 - DAYS FROM DATE AWARDED.","total_contract_value":405600.0,"recipient":{"display_name":"BAY - AREA ANESTHESIA LLC"}},{"key":"CONT_AWD_75H70426F80001_7527_140A1624D0044_1450","piid":"75H70426F80001","award_date":"2025-11-14","fiscal_year":2026,"description":"INFRASTRUCTURE - & PLATFORM SUPPORT SERVICES FOR RESOURCE AND PATIENT MANAGEMENT SYSTEM (CSMT - O&M)","total_contract_value":10481443.48,"recipient":{"display_name":"WICHITA - TRIBAL ENTERPRISES, LLC"}},{"key":"CONT_AWD_75H70326F08037_7527_75H70323D00002_7527","piid":"75H70326F08037","award_date":"2025-11-14","fiscal_year":2026,"description":"THE - CONTRACTOR SHALL PROVIDE ALL LABOR, MATERIALS, EQUIPMENT, TOOLS, TRANSPORTATION, - AND SUPERVISION NECESSARY TO FURNISH AND COMPLETE THE WORK AS SPECIFIED AT - SANTA YSABEL SAN DIEGO, CA","total_contract_value":43763.4,"recipient":{"display_name":"AMA - DIVERSIFIED CONSTRUCTION GROUP"}},{"key":"CONT_AWD_75FCMC26F0019_7530_75FCMC20D0015_7530","piid":"75FCMC26F0019","award_date":"2025-11-14","fiscal_year":2026,"description":"CMS - WILL UTILIZE THIS TASK ORDER AS A PART OF THE OVERALL PROVIDER ENROLLMENT - AND OVERSIGHT, INDEFINITE DELIVERY, INDEFINITE QUANTITY CONTRACT (PEO-IDIQ) - TO DETECT, PREVENT, AND PROACTIVELY DETER FRAUD, WASTE AND ABUSE IN THE MEDICARE - AND/OR MEDICAID","total_contract_value":27298525.06,"recipient":{"display_name":"SIGNATURE - CONSULTING GROUP LLC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=25&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImY0YzVjMGQ3LTg1NmEtNWNlNS1iYzk3LTQxYjM1NjRhNzY2ZSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImY0YzVjMGQ3LTg1NmEtNWNlNS1iYzk3LTQxYjM1NjRhNzY2ZSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","fiscal_year":2026,"description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","fiscal_year":2026,"description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","fiscal_year":2026,"description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","fiscal_year":2026,"description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","fiscal_year":2026,"description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","fiscal_year":2026,"description":"TITLE: + AT&T FIRST NET / 15 IPHONES & 2 TABLETS\nREQUESTOR: VEDA S FARMER\nREF AWARD/BPA: + 15F06720A0001516\nPOP DATES: 05/01/2026 TO 04/30/2027","total_contract_value":4786.76,"recipient":{"display_name":"ATT + MOBILITY LLC"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","fiscal_year":2026,"description":"DISPATCH + SERVICES FOR CUMBERLAND GAP NATIONAL HISTORIC PARK","total_contract_value":22000.0,"recipient":{"display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","fiscal_year":2026,"description":"EMCC002595EBM\nENHANCED + MOBILE SATELLITE SERVICES (EMSS) EQUIPMENT/ACTIVATION/REPAIR","total_contract_value":102.26,"recipient":{"display_name":"TRACE + SYSTEMS INC."}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","fiscal_year":2026,"description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":53379.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","fiscal_year":2026,"description":"FBSU + TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBASE WITH FOUR OPTION + YEARS\nFBSU TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBILLINGS + ID/IQ MEDICAL SUPPORT SERVICES \nBASE OBLIGATED AMOUNT: $ 289,553.28\nAGGREGATE + AMOUNT:","total_contract_value":1554054.48,"recipient":{"display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"}},{"key":"CONT_AWD_121NTP26C0037_12K2_-NONE-_-NONE-","piid":"121NTP26C0037","award_date":"2026-03-03","fiscal_year":2026,"description":"COMMODITIES + FOR USG FOOD DONATIONS: 2000011195/4210007509/RICE, 5/20 LG, W-MLD, FORT BAG-50 + KG","total_contract_value":232336.8,"recipient":{"display_name":"FARMERS RICE + MILLING CO LLC"}},{"key":"CONT_AWD_15JUST26F00000001_1501_15JUST25A00000004_1501","piid":"15JUST26F00000001","award_date":"2026-03-03","fiscal_year":2026,"description":"TEMPORARY + PARALEGAL SERVICES (TPS)","total_contract_value":102692.72,"recipient":{"display_name":"ARDELLE + ASSOCIATES, INC."}},{"key":"CONT_AWD_12314426F0088_1205_NNG15SC27B_8000","piid":"12314426F0088","award_date":"2026-03-03","fiscal_year":2026,"description":"OFFICE + OF CHIEF INFORMATION OFFICER (OCIO) DIGITAL INFRASTRUCTURE\nSERVICES DIVISION + (DISC) USDA","total_contract_value":1825268.82,"recipient":{"display_name":"CARAHSOFT + TECHNOLOGY CORP."}},{"key":"CONT_AWD_36C25226N0267_3600_36C25223A0024_3600","piid":"36C25226N0267","award_date":"2026-03-03","fiscal_year":2026,"description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":5272.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_89503626PSW000279_8900_-NONE-_-NONE-","piid":"89503626PSW000279","award_date":"2026-03-03","fiscal_year":2026,"description":"TRANSFORMER + DISPOSAL","total_contract_value":33299.59,"recipient":{"display_name":"ACCURATE + STRUCTURAL INC."}},{"key":"CONT_AWD_15B51926P00000105_1540_-NONE-_-NONE-","piid":"15B51926P00000105","award_date":"2026-03-03","fiscal_year":2026,"description":"NATIONAL + FOOD GROUP","total_contract_value":8500.0,"recipient":{"display_name":"NATIONAL + FOOD GROUP INC"}},{"key":"CONT_AWD_15B40326F00000061_1540_15JPSS25D00000293_1501","piid":"15B40326F00000061","award_date":"2026-03-03","fiscal_year":2026,"description":"FY26 + M2 FEDEX DELIVERY SERVICES\nDOJ CONTRACT 15JPSS25D00000293\nDELIVERY ORDER + PERIOD OF PERFORMANCE: OCTOBER 1, 2025 - SEPTEMBER 30, 2026","total_contract_value":690.01,"recipient":{"display_name":"FEDERAL + EXPRESS CORPORATION"}},{"key":"CONT_AWD_697DCK26F00246_6920_697DCK22D00001_6920","piid":"697DCK26F00246","award_date":"2026-03-03","fiscal_year":2026,"description":"ZSCALER + FOR ANNUAL RENEWAL.","total_contract_value":10349981.0,"recipient":{"display_name":"CDW + Government LLC"}},{"key":"CONT_AWD_75D30126C20873_7523_-NONE-_-NONE-","piid":"75D30126C20873","award_date":"2026-03-03","fiscal_year":2026,"description":"EMORY + EMERGENCY SERVICES","total_contract_value":7576879.8,"recipient":{"display_name":"EMORY + UNIVERSITY"}},{"key":"CONT_AWD_15B40126F00000075_1540_15BFA025A00000039_1540","piid":"15B40126F00000075","award_date":"2026-03-03","fiscal_year":2026,"description":"MATTRESSES","total_contract_value":15120.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}},{"key":"CONT_AWD_6973GH26F00502_6920_6973GH18D00082_6920","piid":"6973GH26F00502","award_date":"2026-03-03","fiscal_year":2026,"description":"UPS + EQUIPMENT PURCHASE FOR THE INSTALLATION AT LAXN USDE.","total_contract_value":110361.74,"recipient":{"display_name":"EATON + CORPORATION"}},{"key":"CONT_AWD_15USAN26F00000206_1542_15UC0C25D00000775_1542","piid":"15USAN26F00000206","award_date":"2026-03-03","fiscal_year":2026,"description":"PAPER","total_contract_value":53283.65,"recipient":{"display_name":"WESTERN + STATES ENVELOPE CO"}},{"key":"CONT_AWD_140PS126C0003_1443_-NONE-_-NONE-","piid":"140PS126C0003","award_date":"2026-03-03","fiscal_year":2026,"description":"MAINTENANCE + DREDGING OF DAVIS BAYOU DOCK","total_contract_value":374959.2,"recipient":{"display_name":"BREAKWATER + MARINE CONSTRUCTION, LLC"}},{"key":"CONT_AWD_15M10226FA4700078_1544_15F06725D0000479_1549","piid":"15M10226FA4700078","award_date":"2026-03-03","fiscal_year":2026,"description":"MISSION + CRITICAL - APPREHENDING FUGITIVES\nFY26 D80 BUSCH HELMETS (FBI 0479)","total_contract_value":72675.0,"recipient":{"display_name":"PREDICTIVE + BALLISTICS LLC"}},{"key":"CONT_AWD_36C26126P0463_3600_-NONE-_-NONE-","piid":"36C26126P0463","award_date":"2026-03-03","fiscal_year":2026,"description":"PROSTHETICS + - STAIRLIFT","total_contract_value":20625.0,"recipient":{"display_name":"ALOHA + LIFTS LLC"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c2cbd8ca1dc-MSP + - 9d71a715f992a213-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:57 GMT + - Wed, 04 Mar 2026 14:43:20 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=m%2BXfk9Ju6b%2B3QuWMMQEUDYT4p84n7mxhnKhYOv%2FO52N9CYNIEB5aef2h%2B0WFMj5n%2B5By2Wrdti1f0X%2FuKlF74%2BBynN6Ao7eYuvn0XQmhUqjU7bzudFZMtEgB3w%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=E%2BSWXPFay%2FAN3Hy4nhdrvAFOtKmNZKqYotOV8yIrP1HBxlpNQG%2Bp7qgrH8KdX9lMbLv%2FoFcZ3O%2FhKMU2bLGWWZ6lr5fMXmp5JzsBFeYZPdt2c9Gr5CRCGQzz"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '8291' + - '7660' cross-origin-opener-policy: - same-origin referrer-policy: @@ -116,27 +104,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.084s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '979' + - '981' x-ratelimit-burst-reset: - - '55' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998672' + - '1999746' x-ratelimit-daily-reset: - - '88' + - '84988' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '979' + - '981' x-ratelimit-reset: - - '55' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_decimal_field_parsing_edge_cases b/tests/cassettes/TestEdgeCasesIntegration.test_decimal_field_parsing_edge_cases index 88ba52a..49dd9c0 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_decimal_field_parsing_edge_cases +++ b/tests/cassettes/TestEdgeCasesIntegration.test_decimal_field_parsing_edge_cases @@ -13,85 +13,83 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=50&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside + uri: https://tango.makegov.com/api/contracts/?limit=50&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=50&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzY5NzNHSDI2UDAwMDA0XzY5MjBfLU5PTkUtXy1OT05FLSJd","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzY5NzNHSDI2UDAwMDA0XzY5MjBfLU5PTkUtXy1OT05FLSJd","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","fiscal_year":2026,"total_contract_value":1089550.8,"base_and_exercised_options_value":1089550.8,"naics_code":561612,"set_aside":"NONE","recipient":{"uei":"HQXXAB4DV7H3","display_name":"REDCON - SOLUTIONS GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","fiscal_year":2026,"total_contract_value":17351.59,"base_and_exercised_options_value":17351.59,"naics_code":236220,"set_aside":null,"recipient":{"uei":"MR6FELMMCJ31","display_name":"ONSITE - CONSTRUCTION GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"KS"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1371325.32,"base_and_exercised_options_value":217309.6,"naics_code":541519,"set_aside":"NONE","recipient":{"uei":"GDQLRDFJNRD3","display_name":"MERLIN - INTERNATIONAL, INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":4387892.04,"base_and_exercised_options_value":1460606.88,"naics_code":541820,"set_aside":"SBA","recipient":{"uei":"U3M3JLGJLQ63","display_name":"RACK-WILDNER - & REESE, INC."},"place_of_performance":{"country_code":"USA","state_code":"PA"}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":24732.97,"base_and_exercised_options_value":24732.97,"naics_code":541519,"set_aside":null,"recipient":{"uei":"SC8LMLWA6H51","display_name":"REGENCY - CONSULTING INC"},"place_of_performance":{"country_code":"USA","state_code":"WV"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1499803.54,"base_and_exercised_options_value":0.0,"naics_code":541211,"set_aside":null,"recipient":{"uei":"ECMMFNMSLXM7","display_name":"ERNST - & YOUNG LLP"},"place_of_performance":{"country_code":"USA","state_code":"NY"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":73050.0,"base_and_exercised_options_value":73050.0,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"F4M9NB1HD785","display_name":"COLOSSAL - CONTRACTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":21711.76,"base_and_exercised_options_value":21711.76,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"JMVMGGNJGA29","display_name":"GOVPLACE, - LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":13390.73,"base_and_exercised_options_value":13390.73,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"F4M9NB1HD785","display_name":"COLOSSAL - CONTRACTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":99974.58,"base_and_exercised_options_value":99974.58,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"JEANDJTZ8HJ3","display_name":"FCN - INC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80HQTR26F7003_8000_80NSSC21D0001_8000","piid":"80HQTR26F7003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":14940.34,"base_and_exercised_options_value":14940.34,"naics_code":511210,"set_aside":null,"recipient":{"uei":"YQXBZHMXEVE5","display_name":"THE - MATHWORKS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MA"}},{"key":"CONT_AWD_80HQTR26F7002_8000_80NSSC21D0001_8000","piid":"80HQTR26F7002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":2651.0,"base_and_exercised_options_value":2651.0,"naics_code":511210,"set_aside":null,"recipient":{"uei":"YQXBZHMXEVE5","display_name":"THE - MATHWORKS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MA"}},{"key":"CONT_AWD_80HQTR26F7001_8000_80NSSC21D0001_8000","piid":"80HQTR26F7001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":3140.0,"base_and_exercised_options_value":3140.0,"naics_code":511210,"set_aside":null,"recipient":{"uei":"YQXBZHMXEVE5","display_name":"THE - MATHWORKS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MA"}},{"key":"CONT_AWD_80ARC026FA001_8000_80GRC025DA001_8000","piid":"80ARC026FA001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":106717.31,"base_and_exercised_options_value":106717.31,"naics_code":561720,"set_aside":null,"recipient":{"uei":"GD6WB8VPQ3J9","display_name":"AHTNA - INTEGRATED SERVICES LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_75N93026F00001_7529_HHSN316201500040W_7529","piid":"75N93026F00001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":79453.12,"base_and_exercised_options_value":79453.12,"naics_code":541519,"set_aside":null,"recipient":{"uei":"XK11LLUL61A7","display_name":"NEW - TECH SOLUTIONS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_75H71226F80002_7527_36F79724D0071_3600","piid":"75H71226F80002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":630011.67,"base_and_exercised_options_value":630011.67,"naics_code":334510,"set_aside":null,"recipient":{"uei":"G3KKGDBCNSL7","display_name":"AFTER - ACTION MEDICAL AND DENTAL SUPPLY, LLC"},"place_of_performance":{"country_code":"USA","state_code":"AZ"}},{"key":"CONT_AWD_75H71226F28005_7527_75H71224A00019_7527","piid":"75H71226F28005","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":256875.0,"base_and_exercised_options_value":256875.0,"naics_code":621512,"set_aside":"SDVOSBC","recipient":{"uei":"Z7NABFAK25Y7","display_name":"VETMED - GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"AZ"}},{"key":"CONT_AWD_75H71126P00002_7527_-NONE-_-NONE-","piid":"75H71126P00002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":25000.0,"base_and_exercised_options_value":25000.0,"naics_code":491110,"set_aside":"NONE","recipient":{"uei":"V5E8DNCCNH69","display_name":"THE - PITNEY BOWES BANK, INC."},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75H71126F27002_7527_75H71126D00001_7527","piid":"75H71126F27002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":35000.0,"base_and_exercised_options_value":35000.0,"naics_code":621511,"set_aside":null,"recipient":{"uei":"HLQFA6AXYJK5","display_name":"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75H71126F27001_7527_75H71126D00001_7527","piid":"75H71126F27001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":198000.0,"base_and_exercised_options_value":198000.0,"naics_code":621511,"set_aside":null,"recipient":{"uei":"HLQFA6AXYJK5","display_name":"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75H70726P00003_7527_-NONE-_-NONE-","piid":"75H70726P00003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":899491.87,"base_and_exercised_options_value":169848.67,"naics_code":621330,"set_aside":"SBA","recipient":{"uei":"TVKUHNPQ4KJ3","display_name":"TESTUDO - LOGISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"NM"}},{"key":"CONT_AWD_75H70626P00018_7527_-NONE-_-NONE-","piid":"75H70626P00018","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":405600.0,"base_and_exercised_options_value":405600.0,"naics_code":621399,"set_aside":"NONE","recipient":{"uei":"NHBEN7FLTDR8","display_name":"BAY - AREA ANESTHESIA LLC"},"place_of_performance":{"country_code":"USA","state_code":"SD"}},{"key":"CONT_AWD_75H70426F80001_7527_140A1624D0044_1450","piid":"75H70426F80001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":10481443.48,"base_and_exercised_options_value":1974917.4,"naics_code":541519,"set_aside":null,"recipient":{"uei":"M52ELQGPE843","display_name":"WICHITA - TRIBAL ENTERPRISES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_75H70326F08037_7527_75H70323D00002_7527","piid":"75H70326F08037","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":43763.4,"base_and_exercised_options_value":43763.4,"naics_code":237110,"set_aside":null,"recipient":{"uei":"NA7QDG668B66","display_name":"AMA - DIVERSIFIED CONSTRUCTION GROUP"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_75FCMC26F0019_7530_75FCMC20D0015_7530","piid":"75FCMC26F0019","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":27298525.06,"base_and_exercised_options_value":5346719.28,"naics_code":541990,"set_aside":"SBA","recipient":{"uei":"ZE8XMALLRYN5","display_name":"SIGNATURE - CONSULTING GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_75FCMC26F0018_7530_75FCMC21D0001_7530","piid":"75FCMC26F0018","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":18912158.95,"base_and_exercised_options_value":3272263.92,"naics_code":541990,"set_aside":"SBA","recipient":{"uei":"C81ZW3KPFGV9","display_name":"ARCH - SYSTEMS LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z04026P60355Y00_7008_-NONE-_-NONE-","piid":"70Z04026P60355Y00","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":23751.0,"base_and_exercised_options_value":23751.0,"naics_code":336310,"set_aside":"NONE","recipient":{"uei":"LR2HQKYJLDZ7","display_name":"JA - MOODY LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z04026P60353Y00_7008_-NONE-_-NONE-","piid":"70Z04026P60353Y00","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":13650.0,"base_and_exercised_options_value":13650.0,"naics_code":532412,"set_aside":"NONE","recipient":{"uei":"DZ4JXAPAU222","display_name":"UNITED - RENTALS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z03826PZ0000018_7008_-NONE-_-NONE-","piid":"70Z03826PZ0000018","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":34505.0,"base_and_exercised_options_value":13802.0,"naics_code":336413,"set_aside":"SBA","recipient":{"uei":"ZZGWX398RJJ6","display_name":"FSR - CONSULTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"PA"}},{"key":"CONT_AWD_70Z03826PR0000011_7008_-NONE-_-NONE-","piid":"70Z03826PR0000011","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":18960.0,"base_and_exercised_options_value":18960.0,"naics_code":336413,"set_aside":"SBA","recipient":{"uei":"W9UFFHJXD489","display_name":"BROWN - HELICOPTER, INC."},"place_of_performance":{"country_code":"USA","state_code":"FL"}},{"key":"CONT_AWD_70Z03826PF0003002_7008_-NONE-_-NONE-","piid":"70Z03826PF0003002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":48909.32,"base_and_exercised_options_value":48909.32,"naics_code":337214,"set_aside":"NONE","recipient":{"uei":"UKZDZ3TPMLU1","display_name":"TECH - SERVICE SOLUTIONS LLC"},"place_of_performance":{"country_code":"USA","state_code":"AZ"}},{"key":"CONT_AWD_70Z03826FZ0000011_7008_70Z03825DJ0000014_7008","piid":"70Z03826FZ0000011","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":155655.0,"base_and_exercised_options_value":155655.0,"naics_code":336413,"set_aside":null,"recipient":{"uei":"WNG8LVV75EP3","display_name":"AVIATRIX - INC"},"place_of_performance":{"country_code":"USA","state_code":"OR"}},{"key":"CONT_AWD_70Z03826FZ0000010_7008_70Z03823DB0000033_7008","piid":"70Z03826FZ0000010","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1524.0,"base_and_exercised_options_value":1524.0,"naics_code":336413,"set_aside":null,"recipient":{"uei":"WMZDQS99YLT6","display_name":"DENISE - LAMPIGNANO"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_70Z03826FF0003003_7008_GS21F0104W_4730","piid":"70Z03826FF0003003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":19742.25,"base_and_exercised_options_value":19742.25,"naics_code":444130,"set_aside":null,"recipient":{"uei":"C3DYGNCJF9C5","display_name":"HARDWARENOW - LLC"},"place_of_performance":{"country_code":"USA","state_code":"LA"}},{"key":"CONT_AWD_70Z02326PSALC0003_7008_-NONE-_-NONE-","piid":"70Z02326PSALC0003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":41000.0,"base_and_exercised_options_value":41000.0,"naics_code":325520,"set_aside":"NONE","recipient":{"uei":"G3UJV497QGU3","display_name":"FERGUSON - ENTERPRISES LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z02326PSALC0002_7008_-NONE-_-NONE-","piid":"70Z02326PSALC0002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":41000.0,"base_and_exercised_options_value":41000.0,"naics_code":326191,"set_aside":"NONE","recipient":{"uei":"K6HPN25G7FC4","display_name":"INTEGRATED - PROCUREMENT TECHNOLOGIES"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z02326P92200002_7008_-NONE-_-NONE-","piid":"70Z02326P92200002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":8316.16,"base_and_exercised_options_value":8316.16,"naics_code":532111,"set_aside":"NONE","recipient":{"uei":"LCGJCZLHSUK5","display_name":"SIXT - RENT A CAR LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z02326P73120001_7008_-NONE-_-NONE-","piid":"70Z02326P73120001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":13225.0,"base_and_exercised_options_value":13225.0,"naics_code":611430,"set_aside":"NONE","recipient":{"uei":"H5RKZWN8JCT4","display_name":"NATIONAL - ASSOCIATION OF STATE BOATING LAW ADMINISTRATORS, INC"},"place_of_performance":{"country_code":"USA","state_code":"KY"}},{"key":"CONT_AWD_70SBUR26F00000011_7003_47QSMS24D007V_4732","piid":"70SBUR26F00000011","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":27107.0,"base_and_exercised_options_value":27107.0,"naics_code":322291,"set_aside":"EDWOSB","recipient":{"uei":"MAGTJ8T9NQE8","display_name":"ALPHAVETS, - INC"},"place_of_performance":{"country_code":"USA","state_code":"VI"}},{"key":"CONT_AWD_70LGLY26FGLB00003_7015_47QSWA19D001E_4732","piid":"70LGLY26FGLB00003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":16672.0,"base_and_exercised_options_value":16672.0,"naics_code":315990,"set_aside":null,"recipient":{"uei":"RG8WLU64Q6A1","display_name":"DUMMIES - UNLIMITED, INC."},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_70FBR626P00000003_7022_-NONE-_-NONE-","piid":"70FBR626P00000003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":38000.0,"base_and_exercised_options_value":38000.0,"naics_code":424120,"set_aside":"SBA","recipient":{"uei":"QXFZWPP4RHZ4","display_name":"DESTINY - SOLUTIONS INC"},"place_of_performance":{"country_code":"USA","state_code":"TX"}},{"key":"CONT_AWD_70CDCR26FR0000001_7012_N0002325D0004_9700","piid":"70CDCR26FR0000001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1339875022.97,"base_and_exercised_options_value":598444871.04,"naics_code":541614,"set_aside":null,"recipient":{"uei":"Y5U3BSK2G389","display_name":"ACQUISITION - LOGISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"TX"}},{"key":"CONT_AWD_6991PE26F00007N_6938_693JF725D000010_6938","piid":"6991PE26F00007N","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1032110.0,"base_and_exercised_options_value":1032110.0,"naics_code":483111,"set_aside":null,"recipient":{"uei":"S9L9DZ8RBNL6","display_name":"PATRIOT - CONTRACT SERVICES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"WA"}},{"key":"CONT_AWD_6991PE26F00006N_6938_693JF725D000016_6938","piid":"6991PE26F00006N","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":5029282.5,"base_and_exercised_options_value":5029282.5,"naics_code":483111,"set_aside":null,"recipient":{"uei":"UFQGBQM3JDY5","display_name":"TOTE - SERVICES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"OR"}},{"key":"CONT_AWD_697DCK26F00013_6920_697DCK22D00001_6920","piid":"697DCK26F00013","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":67124.93,"base_and_exercised_options_value":67124.93,"naics_code":541512,"set_aside":null,"recipient":{"uei":"PHZDZ8SJ5CM1","display_name":"CDW - GOVERNMENT LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_6973GH26P00296_6920_-NONE-_-NONE-","piid":"6973GH26P00296","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":10800.0,"base_and_exercised_options_value":10800.0,"naics_code":811310,"set_aside":"NONE","recipient":{"uei":"V3GYNR44KT73","display_name":"SIERRA - ENTERPRISES LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_6973GH26P00287_6920_-NONE-_-NONE-","piid":"6973GH26P00287","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":20415.12,"base_and_exercised_options_value":20415.12,"naics_code":334519,"set_aside":"NONE","recipient":{"uei":"FCMPZKYCYKH5","display_name":"VAISALA - INC."},"place_of_performance":{"country_code":"USA","state_code":"CO"}},{"key":"CONT_AWD_6973GH26P00279_6920_-NONE-_-NONE-","piid":"6973GH26P00279","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":19051.5,"base_and_exercised_options_value":19051.5,"naics_code":335139,"set_aside":"NONE","recipient":{"uei":"LHRMMVUCQFB8","display_name":"HUGHEY - & PHILLIPS LLC"},"place_of_performance":{"country_code":"USA","state_code":"OH"}},{"key":"CONT_AWD_6973GH26P00273_6920_-NONE-_-NONE-","piid":"6973GH26P00273","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":31070.0,"base_and_exercised_options_value":31070.0,"naics_code":423690,"set_aside":"NONE","recipient":{"uei":"ELRJA5VU2TC4","display_name":"GIGLI - ENTERPRISES, INC."},"place_of_performance":{"country_code":"USA","state_code":"FL"}},{"key":"CONT_AWD_6973GH26P00004_6920_-NONE-_-NONE-","piid":"6973GH26P00004","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":85555.0,"base_and_exercised_options_value":85555.0,"naics_code":237130,"set_aside":"SBA","recipient":{"uei":"UKJALGAAJB32","display_name":"SHECKLER - CONTRACTING, INC."},"place_of_performance":{"country_code":"USA","state_code":"PA"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=50&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside&cursor=WyIyMDI2LTAzLTAzIiwgImU1YzNkNjA4LTU3YTQtNTY2NS1hOTQ1LWQxMmY4MzE4NmI2YyJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImU1YzNkNjA4LTU3YTQtNTY2NS1hOTQ1LWQxMmY4MzE4NmI2YyJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":122510.0,"base_and_exercised_options_value":122510.0,"naics_code":541511,"set_aside":"NONE","recipient":{"uei":"GMHBZNNNPWN6","display_name":"PEOPLE + DESIGNS INC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":945638.46,"base_and_exercised_options_value":945638.46,"naics_code":513120,"set_aside":"NONE","recipient":{"uei":"S9UYLMMXE6X8","display_name":"ELSEVIER + INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":255.0,"base_and_exercised_options_value":255.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"NTBNTF5W31H5","display_name":"PHAMATECH, + INCORPORATED"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":36904.0,"base_and_exercised_options_value":36904.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":8865.0,"base_and_exercised_options_value":8865.0,"naics_code":322291,"set_aside":"NONE","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"place_of_performance":{"country_code":"USA","state_code":"TX"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":4786.76,"base_and_exercised_options_value":4786.76,"naics_code":517312,"set_aside":null,"recipient":{"uei":"P2S7GZFBCSJ1","display_name":"ATT + MOBILITY LLC"},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":22000.0,"base_and_exercised_options_value":22000.0,"naics_code":921190,"set_aside":"NONE","recipient":{"uei":"JU6MDNDXZU65","display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"},"place_of_performance":{"country_code":"USA","state_code":"TN"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":102.26,"base_and_exercised_options_value":102.26,"naics_code":517410,"set_aside":null,"recipient":{"uei":"EEL5LCLB97W5","display_name":"TRACE + SYSTEMS INC."},"place_of_performance":{"country_code":"USA","state_code":"AL"}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":53379.0,"base_and_exercised_options_value":53379.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":1554054.48,"base_and_exercised_options_value":289553.28,"naics_code":541990,"set_aside":null,"recipient":{"uei":"LATETAUF84E7","display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MT"}},{"key":"CONT_AWD_121NTP26C0037_12K2_-NONE-_-NONE-","piid":"121NTP26C0037","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":232336.8,"base_and_exercised_options_value":232336.8,"naics_code":311212,"set_aside":"SBP","recipient":{"uei":"WCWGJXKWEZ91","display_name":"FARMERS + RICE MILLING CO LLC"},"place_of_performance":{"country_code":"USA","state_code":"LA"}},{"key":"CONT_AWD_15JUST26F00000001_1501_15JUST25A00000004_1501","piid":"15JUST26F00000001","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":102692.72,"base_and_exercised_options_value":102692.72,"naics_code":518111,"set_aside":"SBA","recipient":{"uei":"Y1HWKYJWKJF7","display_name":"ARDELLE + ASSOCIATES, INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_12314426F0088_1205_NNG15SC27B_8000","piid":"12314426F0088","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":1825268.82,"base_and_exercised_options_value":1825268.82,"naics_code":541519,"set_aside":null,"recipient":{"uei":"DT8KJHZXVJH5","display_name":"CARAHSOFT + TECHNOLOGY CORP."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_36C25226N0267_3600_36C25223A0024_3600","piid":"36C25226N0267","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":5272.0,"base_and_exercised_options_value":5272.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_89503626PSW000279_8900_-NONE-_-NONE-","piid":"89503626PSW000279","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":33299.59,"base_and_exercised_options_value":33299.59,"naics_code":562211,"set_aside":"NONE","recipient":{"uei":"CAUHMC2ZW2E3","display_name":"ACCURATE + STRUCTURAL INC."},"place_of_performance":{"country_code":"USA","state_code":"MO"}},{"key":"CONT_AWD_15B51926P00000105_1540_-NONE-_-NONE-","piid":"15B51926P00000105","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":8500.0,"base_and_exercised_options_value":8500.0,"naics_code":311999,"set_aside":"SBA","recipient":{"uei":"W2Y7WG93LRS5","display_name":"NATIONAL + FOOD GROUP INC"},"place_of_performance":{"country_code":"USA","state_code":"MI"}},{"key":"CONT_AWD_15B40326F00000061_1540_15JPSS25D00000293_1501","piid":"15B40326F00000061","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":690.01,"base_and_exercised_options_value":690.01,"naics_code":492110,"set_aside":null,"recipient":{"uei":"EM7LMJJCF6B7","display_name":"FEDERAL + EXPRESS CORPORATION"},"place_of_performance":{"country_code":"USA","state_code":"DC"}},{"key":"CONT_AWD_697DCK26F00246_6920_697DCK22D00001_6920","piid":"697DCK26F00246","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":10349981.0,"base_and_exercised_options_value":10349981.0,"naics_code":541512,"set_aside":null,"recipient":{"uei":"PHZDZ8SJ5CM1","display_name":"CDW + Government LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75D30126C20873_7523_-NONE-_-NONE-","piid":"75D30126C20873","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":7576879.8,"base_and_exercised_options_value":1829221.96,"naics_code":541715,"set_aside":"NONE","recipient":{"uei":"S352L5PJLMP8","display_name":"EMORY + UNIVERSITY"},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_15B40126F00000075_1540_15BFA025A00000039_1540","piid":"15B40126F00000075","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":15120.0,"base_and_exercised_options_value":15120.0,"naics_code":315990,"set_aside":"NONE","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"place_of_performance":{"country_code":"USA","state_code":"KY"}},{"key":"CONT_AWD_6973GH26F00502_6920_6973GH18D00082_6920","piid":"6973GH26F00502","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":110361.74,"base_and_exercised_options_value":110361.74,"naics_code":335999,"set_aside":null,"recipient":{"uei":"NP3NSFVMNUM3","display_name":"EATON + CORPORATION"},"place_of_performance":{"country_code":"USA","state_code":"NC"}},{"key":"CONT_AWD_15USAN26F00000206_1542_15UC0C25D00000775_1542","piid":"15USAN26F00000206","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":53283.65,"base_and_exercised_options_value":53283.65,"naics_code":322120,"set_aside":null,"recipient":{"uei":"JC6BQ183PMB3","display_name":"WESTERN + STATES ENVELOPE CO"},"place_of_performance":{"country_code":"USA","state_code":"WI"}},{"key":"CONT_AWD_140PS126C0003_1443_-NONE-_-NONE-","piid":"140PS126C0003","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":374959.2,"base_and_exercised_options_value":374959.2,"naics_code":237990,"set_aside":"SBA","recipient":{"uei":"DNPHNQPCLHD6","display_name":"BREAKWATER + MARINE CONSTRUCTION, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MS"}},{"key":"CONT_AWD_15M10226FA4700078_1544_15F06725D0000479_1549","piid":"15M10226FA4700078","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":72675.0,"base_and_exercised_options_value":72675.0,"naics_code":315990,"set_aside":null,"recipient":{"uei":"T9NBFA5R24H2","display_name":"PREDICTIVE + BALLISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_36C26126P0463_3600_-NONE-_-NONE-","piid":"36C26126P0463","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":20625.0,"base_and_exercised_options_value":20625.0,"naics_code":339113,"set_aside":"NONE","recipient":{"uei":"YNEDGLKHU789","display_name":"ALOHA + LIFTS LLC"},"place_of_performance":{"country_code":"USA","state_code":"HI"}},{"key":"CONT_AWD_15JENR26P00000079_1501_-NONE-_-NONE-","piid":"15JENR26P00000079","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":314344.0,"base_and_exercised_options_value":314344.0,"naics_code":541199,"set_aside":"NONE","recipient":{"uei":"D1DGQZJFGGK7","display_name":"MORGAN, + ANGEL, BRIGHAM & ASSOCIATES L.L.C."},"place_of_performance":{"country_code":"USA","state_code":"DC"}},{"key":"CONT_AWD_70Z02926PNEWO0032_7008_-NONE-_-NONE-","piid":"70Z02926PNEWO0032","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":17240.0,"base_and_exercised_options_value":17240.0,"naics_code":811310,"set_aside":"SBA","recipient":{"uei":"HAT9THZJ41B3","display_name":"DAVISON + MARINE L.L.C"},"place_of_performance":{"country_code":"USA","state_code":"LA"}},{"key":"CONT_AWD_36C24526F0197_3600_36F79725D0109_3600","piid":"36C24526F0197","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":23668.34,"base_and_exercised_options_value":23668.34,"naics_code":334510,"set_aside":null,"recipient":{"uei":"W8KNL8QJD6H3","display_name":"INSPIRE + MEDICAL SYSTEMS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MN"}},{"key":"CONT_AWD_47PC5226F0162_4740_47PN0323A0001_4740","piid":"47PC5226F0162","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":42670.6,"base_and_exercised_options_value":42670.6,"naics_code":561210,"set_aside":null,"recipient":{"uei":"X6E8D5J5BZF7","display_name":"DAE + SUNG LLC"},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_15B51726P00000091_1540_-NONE-_-NONE-","piid":"15B51726P00000091","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":20592.7,"base_and_exercised_options_value":20592.7,"naics_code":311991,"set_aside":"SBA","recipient":{"uei":"W2Y7WG93LRS5","display_name":"NATIONAL + FOOD GROUP INC"},"place_of_performance":{"country_code":"USA","state_code":"MI"}},{"key":"CONT_AWD_83310126P0013_8300_-NONE-_-NONE-","piid":"83310126P0013","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":2548827.9,"base_and_exercised_options_value":2548827.9,"naics_code":541199,"set_aside":"NONE","recipient":{"uei":"UMU8BY76LSB3","display_name":"VARELLA + & ADVOGADOS ASSOCIADOS"},"place_of_performance":{"country_code":"BRA","state_code":null}},{"key":"CONT_AWD_70Z08426P72110007_7008_-NONE-_-NONE-","piid":"70Z08426P72110007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":18388.67,"base_and_exercised_options_value":18388.67,"naics_code":611699,"set_aside":"NONE","recipient":{"uei":"ZYJEDE2NLAA9","display_name":"ACADEMI + TRAINING CENTER LLC"},"place_of_performance":{"country_code":"USA","state_code":"NC"}},{"key":"CONT_AWD_36C25526P0110_3600_-NONE-_-NONE-","piid":"36C25526P0110","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":15000.0,"base_and_exercised_options_value":15000.0,"naics_code":339113,"set_aside":"NONE","recipient":{"uei":"WCUFLK9J2AG8","display_name":"APPLETON + MEDICAL SERVICES, INC."},"place_of_performance":{"country_code":"USA","state_code":"MO"}},{"key":"CONT_AWD_121NTP26C0035_12K2_-NONE-_-NONE-","piid":"121NTP26C0035","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":51788.61,"base_and_exercised_options_value":51788.61,"naics_code":311225,"set_aside":"NONE","recipient":{"uei":"JBB5Q6BD46T1","display_name":"HEARTLAND + GOODWILL ENTERPRISES"},"place_of_performance":{"country_code":"USA","state_code":"IA"}},{"key":"CONT_AWD_36C25926P0301_3600_-NONE-_-NONE-","piid":"36C25926P0301","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":32146.44,"base_and_exercised_options_value":32146.44,"naics_code":339113,"set_aside":"NONE","recipient":{"uei":"C2WBTZ9TQDG9","display_name":"RED + ONE MEDICAL DEVICES LLC"},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_697DCK26F00245_6920_692M1519D00015_6920","piid":"697DCK26F00245","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":288634.96,"base_and_exercised_options_value":288634.96,"naics_code":334111,"set_aside":null,"recipient":{"uei":"Q2M4FYALZJ89","display_name":"IRON + BOW TECHNOLOGIES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"NJ"}},{"key":"CONT_AWD_36C24826F0079_3600_V797D70087_3600","piid":"36C24826F0079","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":765345.72,"base_and_exercised_options_value":765345.72,"naics_code":339114,"set_aside":null,"recipient":{"uei":"UM2HYYSE69R7","display_name":"A-DEC + INC"},"place_of_performance":{"country_code":"USA","state_code":"OR"}},{"key":"CONT_AWD_36C26026N0208_3600_36C26024A0019_3600","piid":"36C26026N0208","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":182566.44,"base_and_exercised_options_value":182566.44,"naics_code":339112,"set_aside":null,"recipient":{"uei":"L5KFJWTBJDN5","display_name":"OMNICELL, + INC."},"place_of_performance":{"country_code":"USA","state_code":"PA"}},{"key":"CONT_AWD_36C25526K0132_3600_36F79718D0437_3600","piid":"36C25526K0132","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":24080.38,"base_and_exercised_options_value":24080.38,"naics_code":339113,"set_aside":null,"recipient":{"uei":"RM9SQAVLTVH7","display_name":"PERMOBIL, + INC."},"place_of_performance":{"country_code":"USA","state_code":"TN"}},{"key":"CONT_AWD_36C24126N0360_3600_36F79722D0076_3600","piid":"36C24126N0360","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":40572.99,"base_and_exercised_options_value":40572.99,"naics_code":339113,"set_aside":null,"recipient":{"uei":"JXL2LWR67N63","display_name":"ADAPTIVE + DRIVING ALLIANCE, LLC"},"place_of_performance":{"country_code":"USA","state_code":"ME"}},{"key":"CONT_AWD_15B31526P00000068_1540_-NONE-_-NONE-","piid":"15B31526P00000068","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":179396.5,"base_and_exercised_options_value":179396.5,"naics_code":311999,"set_aside":"SBA","recipient":{"uei":"CB67WJHP34K9","display_name":"NORTH + STAR IMPORTS, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MN"}},{"key":"CONT_AWD_36C25526K0133_3600_36F79721D0063_3600","piid":"36C25526K0133","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":25678.88,"base_and_exercised_options_value":25678.88,"naics_code":339113,"set_aside":null,"recipient":{"uei":"FQV3LSJFJ637","display_name":"SUNRISE + MEDICAL (US) LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_15B40326F00000052_1540_15BFA025A00000039_1540","piid":"15B40326F00000052","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":10000.0,"base_and_exercised_options_value":10000.0,"naics_code":315990,"set_aside":"NONE","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"place_of_performance":{"country_code":"USA","state_code":"KY"}},{"key":"CONT_AWD_36C25726N0210_3600_36C25726A0017_3600","piid":"36C25726N0210","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":2489230.28,"base_and_exercised_options_value":2489230.28,"naics_code":621511,"set_aside":null,"recipient":{"uei":"UC5SPMUJF8V3","display_name":"QUEST + DIAGNOSTICS INCORPORATED"},"place_of_performance":{"country_code":"USA","state_code":"NJ"}},{"key":"CONT_AWD_140FS126P0072_1448_-NONE-_-NONE-","piid":"140FS126P0072","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":7504.0,"base_and_exercised_options_value":7504.0,"naics_code":532490,"set_aside":"NONE","recipient":{"uei":"KFWKL4Y3DDX1","display_name":"PETERSON + POWER SYSTEMS, INC."},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_15M10226FA4700077_1544_15F06725D0000479_1549","piid":"15M10226FA4700077","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":13340.0,"base_and_exercised_options_value":13340.0,"naics_code":315990,"set_aside":null,"recipient":{"uei":"T9NBFA5R24H2","display_name":"PREDICTIVE + BALLISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_47PC5226F0161_4740_47PB0023A0008_4740","piid":"47PC5226F0161","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":105712.26,"base_and_exercised_options_value":105712.26,"naics_code":561210,"set_aside":"SBA","recipient":{"uei":"HB9HZZ9R8AX4","display_name":"ACTION + FACILITIES MANAGEMENT INC"},"place_of_performance":{"country_code":"USA","state_code":"ME"}},{"key":"CONT_AWD_11316026F0008OAS_1100_NNG15SC23B_8000","piid":"11316026F0008OAS","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":1230281.3,"base_and_exercised_options_value":235021.3,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"HMXCQJ8ADNL7","display_name":"ACCESSAGILITY + LLC"},"place_of_performance":{"country_code":"USA","state_code":"DC"}},{"key":"CONT_AWD_6973GH26P01160_6920_-NONE-_-NONE-","piid":"6973GH26P01160","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":90754.3,"base_and_exercised_options_value":90754.3,"naics_code":333612,"set_aside":"NONE","recipient":{"uei":"NR9DFQKC4EM8","display_name":"PEERLESS-WINSMITH, + INC."},"place_of_performance":{"country_code":"USA","state_code":"NY"}},{"key":"CONT_AWD_15DDHQ26F00000152_1524_47QSWA18D008F_4732","piid":"15DDHQ26F00000152","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":123642.12,"base_and_exercised_options_value":123642.12,"naics_code":511210,"set_aside":null,"recipient":{"uei":"DT8KJHZXVJH5","display_name":"CARAHSOFT + TECHNOLOGY CORP."},"place_of_performance":{"country_code":"USA","state_code":"VA"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c2b4a08b45f-MSP + - 9d71a713899fad0e-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:57 GMT + - Wed, 04 Mar 2026 14:43:20 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=2e6MMC5EEzGyl7cxaYaiNLoILg59hr%2F%2Fn9y%2BDqp6c4MzaJmM5wqPN7sVqDYMibuR90tGOIWBnspnlGm66vCXOBg%2Fwx8WU9%2FWouJ0lKm5oCVDsFSKxOw2XPL5nA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ukuVbRyeSTL04ClKrWYpDaxqt8sNVlhOjVjdDlW4lJzM4BeZCNueDw3b9AASThXXm4iUFHSs4pPH4hNq6AWe%2F9oHSM1S7gdf%2FgADyEsEBU5LRC%2ByUjG490gG"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '19592' + - '19608' cross-origin-opener-policy: - same-origin referrer-policy: @@ -101,27 +99,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.022s + - 0.172s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '980' + - '982' x-ratelimit-burst-reset: - - '55' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998673' + - '1999747' x-ratelimit-daily-reset: - - '88' + - '84988' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '980' + - '982' x-ratelimit-reset: - - '55' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_empty_list_responses b/tests/cassettes/TestEdgeCasesIntegration.test_empty_list_responses index 4d002f0..d6165e2 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_empty_list_responses +++ b/tests/cassettes/TestEdgeCasesIntegration.test_empty_list_responses @@ -13,35 +13,33 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2099-01-01 + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&award_date_gte=2099-01-01 response: body: - string: '{"count":0,"next":null,"cursor":null,"results":[],"count_type":"approximate"}' + string: '{"count":0,"next":null,"previous":null,"cursor":null,"previous_cursor":null,"results":[],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c2e1e69a20d-MSP + - 9d71a717ace75110-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:58 GMT + - Wed, 04 Mar 2026 14:43:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=My5qT6ZJS4kpHm%2Fu0P1UHphlhaaCiL4qSnuXdJNSeZebD1dPPmgY8VoIyuNFf10ERRHh5%2BR37IsD22gQLTBGBPKNlo39vYGASefYELcwBTiZElAeH31dE6Ofbg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=JoLwyv7VtQDJ6FTjZk15FkN2P35VMrDScY0GYW3UvSyKTFMYuxUInkdQct9Ej5BSQRL2RVDcqLX2grrPJmFw39M1Chh7dAAL3f2t8g9I10%2BsjjFc0HviYfW%2F"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '77' + - '116' cross-origin-opener-policy: - same-origin referrer-policy: @@ -51,27 +49,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.020s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '978' + - '980' x-ratelimit-burst-reset: - - '55' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998671' + - '1999745' x-ratelimit-daily-reset: - - '88' + - '84988' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '978' + - '980' x-ratelimit-reset: - - '55' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_entity_parsing_with_various_address_formats b/tests/cassettes/TestEdgeCasesIntegration.test_entity_parsing_with_various_address_formats index 65fcbcd..d607d1e 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_entity_parsing_with_various_address_formats +++ b/tests/cassettes/TestEdgeCasesIntegration.test_entity_parsing_with_various_address_formats @@ -13,10 +13,17 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district + uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"dba_name\":\"\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}],\"primary_naics\":\"541620\",\"naics_codes\":[{\"code\":\"541620\",\"sba_small_business\":\"Y\"},{\"code\":\"541690\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"B503\",\"B521\"],\"email_address\":null,\"entity_url\":\"https://www.106advisorygroup.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"},\"mailing_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE PRO GLOBAL LLC\",\"dba_name\":\"\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business @@ -27,171 +34,153 @@ interactions: Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"dba_name\":\"Ryan Local Business Concierge\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"dba_name\":\"\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"primary_naics\":\"561110\",\"naics_codes\":[{\"code\":\"561110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"AF34\",\"B550\"],\"email_address\":null,\"entity_url\":\"https://www.localbusinessconcierge.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"19\"},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"dba_name\":\"ABA\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541990\",\"naics_codes\":[{\"code\":\"541990\",\"sba_small_business\":\"Y\"},{\"code\":\"611430\",\"sba_small_business\":\"Y\"},{\"code\":\"813910\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.abofamerica.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"},\"mailing_address\":{\"city\":\"HERNDON\",\"zip_code\":\"20171\",\"country_code\":\"USA\",\"address_line1\":\"13800 - COPPERMINE RD\",\"address_line2\":\"\",\"zip_code_plus4\":\"6163\",\"state_or_province_code\":\"VA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"10\"},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}],\"primary_naics\":\"561720\",\"naics_codes\":[{\"code\":\"561720\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"S201\"],\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Vine + Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"},\"mailing_address\":{\"city\":\"Vine + Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" + AccessIT Group, LLC.\",\"dba_name\":\"\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"541512\",\"naics_codes\":[{\"code\":\"541512\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.accessitgroup.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"King + of Prussia\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"2000 + Valley Forge Cir Ste 106\",\"address_line2\":\"\",\"zip_code_plus4\":\"4526\",\"state_or_province_code\":\"PA\"},\"mailing_address\":{\"city\":\"KING + OF PRUSSIA\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"20106 + VALLEY FORGE CIRCLE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1112\",\"state_or_province_code\":\"PA\"},\"congressional_district\":\"04\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":8,\"subawards_count\":7,\"awards_obligated\":39217.28,\"subawards_obligated\":558846.9},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"dba_name\":\"\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"621340\",\"naics_codes\":[{\"code\":\"621340\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":\"Contact: + HANNAH ANDREWS\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"},\"mailing_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://umanitoba.ca/st-pauls-college/mauro-institute-peace-justice\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"70 Dysart Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"mailing_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"c/o St. Paul's College\",\"address_line2\":\"70 - Dysart Road, Room 252\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" + Dysart Road, Room 252\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"congressional_district\":\"\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"dba_name\":\"CITY CHURCH\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://citync.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"GASTONIA\",\"zip_code\":\"28056\",\"country_code\":\"USA\",\"address_line1\":\"3100 CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"},\"mailing_address\":{\"city\":\"Gastonia\",\"zip_code\":\"28055\",\"country_code\":\"USA\",\"address_line1\":\"P.O. - Box 551387\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NC\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"14\"},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" + Box 551387\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NC\"},\"congressional_district\":\"14\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"dba_name\":\"1080STUDIO\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"541310\",\"naics_codes\":[{\"code\":\"541310\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.1080studio.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 - Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"12\"},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" + Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"congressional_district\":\"12\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"216 + W Ohio St Ste C\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"},\"mailing_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"PO + Box 70\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"dba_name\":\"\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"NARANJITO\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"CARR + 878 KM 3.3 SECTOR LA MAYA\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"},\"mailing_address\":{\"city\":\"Naranjito\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"HC + 75 Box 1816\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"},\"congressional_district\":\"98\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" Clyde Joseph Enterprises, LLC\",\"dba_name\":\"Blastco\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"332812\",\"naics_codes\":[{\"code\":\"332811\",\"sba_small_business\":\"Y\"},{\"code\":\"332812\",\"sba_small_business\":\"Y\"},{\"code\":\"332813\",\"sba_small_business\":\"Y\"},{\"code\":\"333992\",\"sba_small_business\":\"Y\"},{\"code\":\"811310\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"4940\",\"J010\",\"J012\",\"J015\",\"J016\",\"J017\",\"J019\",\"J020\",\"J022\",\"J023\",\"J024\",\"J025\",\"J026\",\"J031\",\"J034\",\"J035\",\"J036\",\"J037\",\"J038\",\"J041\",\"J042\",\"J043\",\"J044\",\"J045\",\"J046\",\"J047\",\"J048\",\"J049\",\"J053\",\"J054\",\"J056\",\"J059\",\"J061\",\"J066\",\"J071\",\"J072\",\"J073\",\"J080\",\"J081\",\"J093\",\"J094\",\"J095\",\"K038\",\"K049\",\"L049\"],\"email_address\":null,\"entity_url\":\"https://www.blastcoinc.com/\",\"description\":\"Contact: DRAKE HILL\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"mailing_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 - Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"03\"},{\"uei\":\"SAYLQCANSYD4\",\"legal_business_name\":\" + Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"congressional_district\":\"03\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":1,\"subawards_count\":0,\"awards_obligated\":10850.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":1,\"awards_obligated\":10850.0}}},{\"uei\":\"SAYLQCANSYD4\",\"legal_business_name\":\" Coil-Tran LLC\",\"dba_name\":\"Noratel US\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}],\"primary_naics\":\"335311\",\"naics_codes\":[{\"code\":\"334416\",\"sba_small_business\":\"N\"},{\"code\":\"335311\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.noratel.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"mailing_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 - S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"01\"},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" + S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"congressional_district\":\"01\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"H3JUKU6643N7\",\"legal_business_name\":\" + Core & Main LP\",\"dba_name\":\"EASTCOM ASSOCIATES\",\"cage_code\":\"0JYE9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"423690\",\"naics_codes\":[{\"code\":\"423610\",\"sba_small_business\":\"Y\"},{\"code\":\"423690\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"6625\"],\"email_address\":null,\"entity_url\":\"https://www.eastcomassoc.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"BRANCHBURG\",\"zip_code\":\"08876\",\"country_code\":\"USA\",\"address_line1\":\"185 + INDUSTRIAL PKWY\",\"address_line2\":\"STE G\",\"zip_code_plus4\":\"3484\",\"state_or_province_code\":\"NJ\"},\"mailing_address\":{\"city\":\"BRANCHBURG\",\"zip_code\":\"08876\",\"country_code\":\"USA\",\"address_line1\":\"185 + INDUSTRIAL PKWY\",\"address_line2\":\"STE G\",\"zip_code_plus4\":\"3484\",\"state_or_province_code\":\"NJ\"},\"congressional_district\":\"07\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":18,\"subawards_count\":1,\"awards_obligated\":204077.35,\"subawards_obligated\":34738.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" Cuyuna Range Housing, Inc.\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"mailing_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 - 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"08\"},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"dba_name\":\"\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}],\"primary_naics\":\"812111\",\"naics_codes\":[{\"code\":\"812111\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"8405\"],\"email_address\":null,\"entity_url\":\"https://doethebarber23.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"},\"mailing_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"04\"},{\"uei\":\"L676QG9DC797\",\"legal_business_name\":\" - Dayna Regina Terrell\",\"dba_name\":\"Law Office of Dayna R. Terrell\",\"cage_code\":\"14UB3\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"primary_naics\":\"541110\",\"naics_codes\":[{\"code\":\"541110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Youngstown\",\"zip_code\":\"44511\",\"country_code\":\"USA\",\"address_line1\":\"933 - Ottawa Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"1418\",\"state_or_province_code\":\"OH\"},\"mailing_address\":{\"city\":\"Youngstown\",\"zip_code\":\"44511\",\"country_code\":\"USA\",\"address_line1\":\"933 - Ottawa Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"1418\",\"state_or_province_code\":\"OH\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"06\"},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" + 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"congressional_district\":\"08\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"GR13H1DLN9Q7\",\"legal_business_name\":\" + DANIEL J ALTHOFF\",\"dba_name\":\"Althoff Farms\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small + Business Joint Venture\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"La + Prairie\",\"zip_code\":\"62346\",\"country_code\":\"USA\",\"address_line1\":\"2737 + E 2903rd Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"4119\",\"state_or_province_code\":\"IL\"},\"mailing_address\":{\"city\":\"La + Prairie\",\"zip_code\":\"62346\",\"country_code\":\"USA\",\"address_line1\":\"2737 + E 2903rd Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"4119\",\"state_or_province_code\":\"IL\"},\"congressional_district\":\"15\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" EVANSVILLE VANDERBURGH PUBLIC LIBRARY\",\"dba_name\":\"\",\"cage_code\":\"6DYM5\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://evpl.org/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Evansville\",\"zip_code\":\"47713\",\"country_code\":\"USA\",\"address_line1\":\"200 SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"},\"mailing_address\":{\"city\":\"EVANSVILLE\",\"zip_code\":\"47713\",\"country_code\":\"USA\",\"address_line1\":\"200 - SE MARTIN LUTHER KING JR BLVD\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":1,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"08\"},{\"uei\":\"DJJSTLWX9BL1\",\"legal_business_name\":\" - FALCONWARE LLC\",\"dba_name\":\"\",\"cage_code\":\"14HC5\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541511\",\"naics_codes\":[{\"code\":\"541511\",\"sba_small_business\":\"Y\"},{\"code\":\"541512\",\"sba_small_business\":\"Y\"},{\"code\":\"541690\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Seattle\",\"zip_code\":\"98109\",\"country_code\":\"USA\",\"address_line1\":\"130 - Boren Ave N Apt 607\",\"address_line2\":\"\",\"zip_code_plus4\":\"6309\",\"state_or_province_code\":\"WA\"},\"mailing_address\":{\"city\":\"Seattle\",\"zip_code\":\"98109\",\"country_code\":\"USA\",\"address_line1\":\"130 - Boren Ave N Apt 607\",\"address_line2\":\"\",\"zip_code_plus4\":\"6309\",\"state_or_province_code\":\"WA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"07\"},{\"uei\":\"UMTSKVL7YM15\",\"legal_business_name\":\" - FIELDREADY SOLUTIONS GROUP, LLC\",\"dba_name\":\"\",\"cage_code\":\"14Q40\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"423450\",\"naics_codes\":[{\"code\":\"339112\",\"sba_small_business\":\"Y\"},{\"code\":\"339113\",\"sba_small_business\":\"Y\"},{\"code\":\"423450\",\"sba_small_business\":\"Y\"},{\"code\":\"423490\",\"sba_small_business\":\"Y\"},{\"code\":\"423910\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"6510\",\"6515\",\"6530\",\"6532\",\"6540\",\"6545\"],\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Bel - Air\",\"zip_code\":\"21014\",\"country_code\":\"USA\",\"address_line1\":\"612 - Wendellwood Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"2832\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Bel - Air\",\"zip_code\":\"21014\",\"country_code\":\"USA\",\"address_line1\":\"612 - Wendellwood Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"2832\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"01\"},{\"uei\":\"MBQMLN5JWEL4\",\"legal_business_name\":\" - Forstrom and Torgerson HS, L.L.C.\",\"dba_name\":\"\",\"cage_code\":\"5LCN9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}],\"primary_naics\":\"721110\",\"naics_codes\":[{\"code\":\"721110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"V231\"],\"email_address\":null,\"entity_url\":\"https://www.hiltonshoreview.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Shoreview\",\"zip_code\":\"55126\",\"country_code\":\"USA\",\"address_line1\":\"1050 - Gramsie Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"2949\",\"state_or_province_code\":\"MN\"},\"mailing_address\":{\"city\":\"Willmar\",\"zip_code\":\"56201\",\"country_code\":\"USA\",\"address_line1\":\"103 - 15TH AVE NW, #200\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":2,\"subawards_count\":0,\"awards_obligated\":21789.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"04\"},{\"uei\":\"J5XPMVA3TKN9\",\"legal_business_name\":\" - Gina A Gallegos\",\"dba_name\":\"A Plus Cleaning Services\",\"cage_code\":\"16E89\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"primary_naics\":\"561720\",\"naics_codes\":[{\"code\":\"561720\",\"sba_small_business\":\"Y\"},{\"code\":\"561740\",\"sba_small_business\":\"Y\"},{\"code\":\"561790\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"S201\",\"S214\",\"S222\",\"S299\"],\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Albuquerque\",\"zip_code\":\"87110\",\"country_code\":\"USA\",\"address_line1\":\"3808 - Candelaria Rd NE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1662\",\"state_or_province_code\":\"NM\"},\"mailing_address\":{\"city\":\"Albuquerque\",\"zip_code\":\"87110\",\"country_code\":\"USA\",\"address_line1\":\"3808 - Candelaria Rd NE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1662\",\"state_or_province_code\":\"NM\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"01\"},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" + SE MARTIN LUTHER KING JR BLVD\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"},\"congressional_district\":\"08\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":1,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"G3THW1KVNFC5\",\"legal_business_name\":\" + Evangelical Environmental Network\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://creationcare.org/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Woodbury\",\"zip_code\":\"55129\",\"country_code\":\"USA\",\"address_line1\":\"4247 + Arbor Bay\",\"address_line2\":\"\",\"zip_code_plus4\":\"4420\",\"state_or_province_code\":\"MN\"},\"mailing_address\":{\"city\":\"Woodbury\",\"zip_code\":\"55125\",\"country_code\":\"USA\",\"address_line1\":\"7595 + Currell Blvd\",\"address_line2\":\"PO Box 25937\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MN\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" Governors Workforce Development Board\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://viwdb.vi.gov/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Christiansted\",\"zip_code\":\"00820\",\"country_code\":\"USA\",\"address_line1\":\"4401 Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"},\"mailing_address\":{\"city\":\"Christiansted\",\"zip_code\":\"00820\",\"country_code\":\"USA\",\"address_line1\":\"4401 - Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"98\"},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" + Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"},\"congressional_district\":\"98\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"L1BFQ1UEC4N5\",\"legal_business_name\":\" + INFINITE VARIATIONS ENGINEERING LLC\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Roslindale\",\"zip_code\":\"02131\",\"country_code\":\"USA\",\"address_line1\":\"120 + Metropolitan Ave\",\"address_line2\":\"\",\"zip_code_plus4\":\"4208\",\"state_or_province_code\":\"MA\"},\"mailing_address\":{\"city\":\"Roslindale\",\"zip_code\":\"02131\",\"country_code\":\"USA\",\"address_line1\":\"120 + Metropolitan Ave\",\"address_line2\":\"\",\"zip_code_plus4\":\"4208\",\"state_or_province_code\":\"MA\"},\"congressional_district\":\"07\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"S5PBXFCDUA53\",\"legal_business_name\":\" + IRISH TRADE SERVICES, LLC\",\"dba_name\":\"\",\"cage_code\":\"198A7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"}],\"primary_naics\":\"238210\",\"naics_codes\":[{\"code\":\"238210\",\"sba_small_business\":\"Y\"},{\"code\":\"238990\",\"sba_small_business\":\"E\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":\"Contact: + DARRAGH MADDEN\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"New + York\",\"zip_code\":\"10022\",\"country_code\":\"USA\",\"address_line1\":\"400 + Park Ave Fl 17\",\"address_line2\":\"\",\"zip_code_plus4\":\"9494\",\"state_or_province_code\":\"NY\"},\"mailing_address\":{\"city\":\"New + York\",\"zip_code\":\"10022\",\"country_code\":\"USA\",\"address_line1\":\"400 + Park Ave Fl 17\",\"address_line2\":\"\",\"zip_code_plus4\":\"9494\",\"state_or_province_code\":\"NY\"},\"congressional_district\":\"12\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" Inner Armor, LLC\",\"dba_name\":\"\",\"cage_code\":\"15GH4\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"525120\",\"naics_codes\":[{\"code\":\"525120\",\"sba_small_business\":\"Y\"},{\"code\":\"541714\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"AN11\",\"Q519\"],\"email_address\":null,\"entity_url\":\"https://www.forgeinnerarmor.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"GRANDVILLE\",\"zip_code\":\"49418\",\"country_code\":\"USA\",\"address_line1\":\"3747 40TH ST SW\",\"address_line2\":\"\",\"zip_code_plus4\":\"3132\",\"state_or_province_code\":\"MI\"},\"mailing_address\":{\"city\":\"Holland\",\"zip_code\":\"49423\",\"country_code\":\"USA\",\"address_line1\":\"240 - E 8th St.\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MI\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" + E 8th St.\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MI\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" JAYRON RATEN CLEMENTE\",\"dba_name\":\"Teufel Hunden Transport\",\"cage_code\":\"SSXS7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"485999\",\"naics_codes\":[{\"code\":\"485999\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"ZARAGOZA\",\"zip_code\":\"\",\"country_code\":\"PHL\",\"address_line1\":\"430 MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"mailing_address\":{\"city\":\"ZARAGOZA\",\"zip_code\":\"\",\"country_code\":\"PHL\",\"address_line1\":\"430 - MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" + MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"congressional_district\":\"\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"P668GUDLTFH6\",\"legal_business_name\":\" + KVG LLC\",\"dba_name\":\"\",\"cage_code\":\"16YE6\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"QF\",\"description\":\"Service + Disabled Veteran Owned Business\"}],\"primary_naics\":\"541614\",\"naics_codes\":[{\"code\":\"541614\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Elizabethtown\",\"zip_code\":\"17022\",\"country_code\":\"USA\",\"address_line1\":\"112 + S Market St\",\"address_line2\":\"\",\"zip_code_plus4\":\"2309\",\"state_or_province_code\":\"PA\"},\"mailing_address\":{\"city\":\"Gettysburg\",\"zip_code\":\"17325\",\"country_code\":\"USA\",\"address_line1\":\"180 + Redding Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PA\"},\"congressional_district\":\"11\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"KANMQ8XK2K84\",\"legal_business_name\":\" + LUKE JOHNSON\",\"dba_name\":\"LJ's Wildfire and Trucking Services\",\"cage_code\":\"18TP9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"115310\",\"naics_codes\":[{\"code\":\"115310\",\"sba_small_business\":\"E\"}],\"psc_codes\":[\"4210\"],\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Rice\",\"zip_code\":\"99167\",\"country_code\":\"USA\",\"address_line1\":\"2621 + Scott Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9716\",\"state_or_province_code\":\"WA\"},\"mailing_address\":{\"city\":\"Rice\",\"zip_code\":\"99167\",\"country_code\":\"USA\",\"address_line1\":\"2621 + Scott Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9716\",\"state_or_province_code\":\"WA\"},\"congressional_district\":\"05\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" MAX BIROU PROIECTARE SRL\",\"dba_name\":\"\",\"cage_code\":\"1JLAL\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"236210\",\"naics_codes\":[{\"code\":\"236116\",\"sba_small_business\":\"N\"},{\"code\":\"236210\",\"sba_small_business\":\"N\"},{\"code\":\"236220\",\"sba_small_business\":\"N\"},{\"code\":\"237130\",\"sba_small_business\":\"N\"},{\"code\":\"237990\",\"sba_small_business\":\"E\"},{\"code\":\"238910\",\"sba_small_business\":\"N\"}],\"psc_codes\":[\"C1AA\",\"C1AB\",\"C1BE\",\"C1CA\",\"C1FA\"],\"email_address\":null,\"entity_url\":\"https://www.maxprojekt.ro/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Iasi\",\"zip_code\":\"\",\"country_code\":\"ROU\",\"address_line1\":\"IASI COUNTRY, IASI MUNICIPALITY, NO 16-18-20 MELODIEI STREET, BUILDING NO 1, 2 ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"mailing_address\":{\"city\":\"Iasi\",\"zip_code\":\"\",\"country_code\":\"ROU\",\"address_line1\":\"IASI COUNTRY, IASI MUNICIPALITY, NO 16-18-20 MELODIEI STREET, BUILDING NO 1, 2 - ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"GU1BXWKZBTK8\",\"legal_business_name\":\" - NM Consulting LLC\",\"dba_name\":\"\",\"cage_code\":\"14UU1\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"OY\",\"description\":\"Black - American Owned\"}],\"primary_naics\":\"541611\",\"naics_codes\":[{\"code\":\"541611\",\"sba_small_business\":\"Y\"},{\"code\":\"541612\",\"sba_small_business\":\"Y\"},{\"code\":\"541613\",\"sba_small_business\":\"Y\"},{\"code\":\"541618\",\"sba_small_business\":\"Y\"},{\"code\":\"541720\",\"sba_small_business\":\"Y\"},{\"code\":\"561110\",\"sba_small_business\":\"Y\"},{\"code\":\"561410\",\"sba_small_business\":\"Y\"},{\"code\":\"561499\",\"sba_small_business\":\"Y\"},{\"code\":\"611430\",\"sba_small_business\":\"Y\"},{\"code\":\"611710\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"R408\",\"R410\",\"R499\",\"R699\",\"R701\",\"R707\",\"R799\",\"U004\",\"U006\",\"U008\"],\"email_address\":null,\"entity_url\":\"https://www.nmcstrategies.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Omaha\",\"zip_code\":\"68112\",\"country_code\":\"USA\",\"address_line1\":\"3011 - Whitmore St\",\"address_line2\":\"\",\"zip_code_plus4\":\"3149\",\"state_or_province_code\":\"NE\"},\"mailing_address\":{\"city\":\"Omaha\",\"zip_code\":\"68154\",\"country_code\":\"USA\",\"address_line1\":\"12020 - Shamrock Plz, Ste 201\",\"address_line2\":\"PMB576371\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NE\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"W7VVRWFNCXJ7\",\"legal_business_name\":\" - OSPRE Solutions Inc.\",\"dba_name\":\"\",\"cage_code\":\"16L02\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran - Owned Business\"}],\"primary_naics\":\"541512\",\"naics_codes\":[{\"code\":\"541512\",\"sba_small_business\":\"Y\"},{\"code\":\"541519\",\"sba_small_business\":\"E\"}],\"psc_codes\":[\"7A20\",\"DA10\"],\"email_address\":null,\"entity_url\":\"https://ospresolutions.org/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Sykesville\",\"zip_code\":\"21784\",\"country_code\":\"USA\",\"address_line1\":\"670 - River Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"5503\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Sykesville\",\"zip_code\":\"21784\",\"country_code\":\"USA\",\"address_line1\":\"670 - River Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"5503\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"03\"},{\"uei\":\"TLZFY6CQ9KK4\",\"legal_business_name\":\" - Ophthalmic Therapeutic Innovation LLC\",\"dba_name\":\"\",\"cage_code\":\"8RZ63\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small - Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541714\",\"naics_codes\":[{\"code\":\"541713\",\"sba_small_business\":\"Y\"},{\"code\":\"541714\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"6505\",\"Q511\"],\"email_address\":null,\"entity_url\":\"https://ophthalmic-innovation.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"PEABODY\",\"zip_code\":\"01960\",\"country_code\":\"USA\",\"address_line1\":\"20 - KEYES DR APT 10\",\"address_line2\":\"\",\"zip_code_plus4\":\"8024\",\"state_or_province_code\":\"MA\"},\"mailing_address\":{\"city\":\"Peabody - \",\"zip_code\":\"01960\",\"country_code\":\"USA\",\"address_line1\":\"20 - Keyes Dr Apt 10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"06\"},{\"uei\":\"YEVYSM49LK67\",\"legal_business_name\":\" - PK Oxford Square Limited Partnership\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Okemos\",\"zip_code\":\"48864\",\"country_code\":\"USA\",\"address_line1\":\"1784 - Hamilton Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1811\",\"state_or_province_code\":\"MI\"},\"mailing_address\":{\"city\":\"Okemos\",\"zip_code\":\"48864\",\"country_code\":\"USA\",\"address_line1\":\"1784 - Hamilton Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1811\",\"state_or_province_code\":\"MI\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"07\"},{\"uei\":\"LFCHPU28HMA5\",\"legal_business_name\":\" - RECLAMATION DISTRICT 2025\",\"dba_name\":\"\",\"cage_code\":\"6HQ97\",\"business_types\":[{\"code\":\"2F\",\"description\":\"U.S. - State Government\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://hollandtract.org/holland_main/home\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Stockton\",\"zip_code\":\"95202\",\"country_code\":\"USA\",\"address_line1\":\"343 - E Main St Ste 715\",\"address_line2\":\"\",\"zip_code_plus4\":\"2977\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Stockton\",\"zip_code\":\"95202\",\"country_code\":\"USA\",\"address_line1\":\"343 - E Main St Ste 715\",\"address_line2\":\"\",\"zip_code_plus4\":\"2977\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"09\"}]}" + ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"congressional_district\":\"\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}}]}" headers: CF-RAY: - - 99f88c29bf2ea206-MSP + - 9d71a712389fad17-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:57 GMT + - Wed, 04 Mar 2026 14:43:20 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rbk1HLldzqdByfcwaoOPErolV6rPY1YfmBZtToCFK4HJV5azc1tNGT8z2nxlpyRWtfHZAynczHi2ApQGIfyfjRfR2opSqwLFx80WXC9EfCxXire6GxHvNaEciA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CdaqtDzEQdzS8BQt07a69JsmGAdoG7oTiKtrkHTxD68FrWmiHdPI9Ty2LBKYqxh%2Fv0C64plda6i4d6KoIlhPW9ZJ%2Fb2%2F0%2B2qnzFp2zE94%2BR3TGs9Vi2wJSrs"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '32823' + - '30227' cross-origin-opener-policy: - same-origin referrer-policy: @@ -201,27 +190,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.065s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '981' + - '983' x-ratelimit-burst-reset: - - '56' + - '1' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998674' + - '1999748' x-ratelimit-daily-reset: - - '89' + - '84989' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '981' + - '983' x-ratelimit-reset: - - '56' + - '1' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_flattened_responses_with_flat_lists b/tests/cassettes/TestEdgeCasesIntegration.test_flattened_responses_with_flat_lists index 8961206..3b1959e 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_flattened_responses_with_flat_lists +++ b/tests/cassettes/TestEdgeCasesIntegration.test_flattened_responses_with_flat_lists @@ -13,49 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true&flat_lists=true + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true&flat_lists=true response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true&flat_lists=true&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient.display_name":"REDCON - SOLUTIONS GROUP LLC"},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient.display_name":"ONSITE CONSTRUCTION - GROUP LLC"},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient.display_name":"MERLIN - INTERNATIONAL, INC."},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient.display_name":"RACK-WILDNER - & REESE, INC."},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient.display_name":"REGENCY - CONSULTING INC"}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&flat=true&flat_lists=true&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient.display_name":"PEOPLE + DESIGNS INC"},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient.display_name":"ELSEVIER + INC."},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient.display_name":"PHAMATECH, + INCORPORATED"},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient.display_name":"BIOMERIEUX + INC"},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient.display_name":"Federal + Prison Industries, Inc"}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c242b524c92-MSP + - 9d71a70bc91a4c9c-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:56 GMT + - Wed, 04 Mar 2026 14:43:19 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=GgIz4DFY%2FIJ2gQMOTVM7DnOODjHwyYU%2Fo915%2FP8OXsFG5R%2FUpwzgTmCqzt71B%2FBXtAfrcBVFuE2Sh%2FgjlfCyJ9nqs%2B65Iyu3j25xIu75EgQk0CU3DdB2gVXa6Q%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=sZMz4FDhdAb8CI21G0UDypj1f5%2FHiBRJaiU5NKsvaLadhREgdZGXq%2F3Bog2RoWwKww6a9WfVlAh3NweTJNLeDusWjth63GHnWqOyJENO9AW7nchGvnEm%2B62l"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1980' + - '1655' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.022s + - 0.038s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '985' + - '987' x-ratelimit-burst-reset: - - '57' + - '2' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998678' + - '1999752' x-ratelimit-daily-reset: - - '90' + - '84990' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '985' + - '987' x-ratelimit-reset: - - '57' + - '2' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_list_field_parsing_consistency b/tests/cassettes/TestEdgeCasesIntegration.test_list_field_parsing_consistency index 38d000d..084cdd7 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_list_field_parsing_consistency +++ b/tests/cassettes/TestEdgeCasesIntegration.test_list_field_parsing_consistency @@ -16,7 +16,13 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}],\"physical_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"}},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business @@ -24,20 +30,24 @@ interactions: Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}],\"physical_address\":{\"city\":\"Vine Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"}},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" + AccessIT Group, LLC.\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"King + of Prussia\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"2000 + Valley Forge Cir Ste 106\",\"address_line2\":\"\",\"zip_code_plus4\":\"4526\",\"state_or_province_code\":\"PA\"}},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business @@ -48,7 +58,13 @@ interactions: CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"}},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 - Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" + Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}],\"physical_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"216 + W Ohio St Ste C\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"}},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"NARANJITO\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"CARR + 878 KM 3.3 SECTOR LA MAYA\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" Clyde Joseph Enterprises, LLC\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 @@ -56,110 +72,76 @@ interactions: Coil-Tran LLC\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}],\"physical_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 - S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" + S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"H3JUKU6643N7\",\"legal_business_name\":\" + Core & Main LP\",\"cage_code\":\"0JYE9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"BRANCHBURG\",\"zip_code\":\"08876\",\"country_code\":\"USA\",\"address_line1\":\"185 + INDUSTRIAL PKWY\",\"address_line2\":\"STE G\",\"zip_code_plus4\":\"3484\",\"state_or_province_code\":\"NJ\"}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" Cuyuna Range Housing, Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 - 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"}},{\"uei\":\"L676QG9DC797\",\"legal_business_name\":\" - Dayna Regina Terrell\",\"cage_code\":\"14UB3\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"physical_address\":{\"city\":\"Youngstown\",\"zip_code\":\"44511\",\"country_code\":\"USA\",\"address_line1\":\"933 - Ottawa Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"1418\",\"state_or_province_code\":\"OH\"}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" + 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"GR13H1DLN9Q7\",\"legal_business_name\":\" + DANIEL J ALTHOFF\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small + Business Joint Venture\"}],\"physical_address\":{\"city\":\"La Prairie\",\"zip_code\":\"62346\",\"country_code\":\"USA\",\"address_line1\":\"2737 + E 2903rd Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"4119\",\"state_or_province_code\":\"IL\"}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" EVANSVILLE VANDERBURGH PUBLIC LIBRARY\",\"cage_code\":\"6DYM5\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}],\"physical_address\":{\"city\":\"Evansville\",\"zip_code\":\"47713\",\"country_code\":\"USA\",\"address_line1\":\"200 - SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"DJJSTLWX9BL1\",\"legal_business_name\":\" - FALCONWARE LLC\",\"cage_code\":\"14HC5\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Seattle\",\"zip_code\":\"98109\",\"country_code\":\"USA\",\"address_line1\":\"130 - Boren Ave N Apt 607\",\"address_line2\":\"\",\"zip_code_plus4\":\"6309\",\"state_or_province_code\":\"WA\"}},{\"uei\":\"UMTSKVL7YM15\",\"legal_business_name\":\" - FIELDREADY SOLUTIONS GROUP, LLC\",\"cage_code\":\"14Q40\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Bel - Air\",\"zip_code\":\"21014\",\"country_code\":\"USA\",\"address_line1\":\"612 - Wendellwood Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"2832\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"MBQMLN5JWEL4\",\"legal_business_name\":\" - Forstrom and Torgerson HS, L.L.C.\",\"cage_code\":\"5LCN9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}],\"physical_address\":{\"city\":\"Shoreview\",\"zip_code\":\"55126\",\"country_code\":\"USA\",\"address_line1\":\"1050 - Gramsie Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"2949\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"J5XPMVA3TKN9\",\"legal_business_name\":\" - Gina A Gallegos\",\"cage_code\":\"16E89\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"physical_address\":{\"city\":\"Albuquerque\",\"zip_code\":\"87110\",\"country_code\":\"USA\",\"address_line1\":\"3808 - Candelaria Rd NE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1662\",\"state_or_province_code\":\"NM\"}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" + SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"G3THW1KVNFC5\",\"legal_business_name\":\" + Evangelical Environmental Network\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Woodbury\",\"zip_code\":\"55129\",\"country_code\":\"USA\",\"address_line1\":\"4247 + Arbor Bay\",\"address_line2\":\"\",\"zip_code_plus4\":\"4420\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" Governors Workforce Development Board\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"}],\"physical_address\":{\"city\":\"Christiansted\",\"zip_code\":\"00820\",\"country_code\":\"USA\",\"address_line1\":\"4401 - Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" + Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"}},{\"uei\":\"L1BFQ1UEC4N5\",\"legal_business_name\":\" + INFINITE VARIATIONS ENGINEERING LLC\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Roslindale\",\"zip_code\":\"02131\",\"country_code\":\"USA\",\"address_line1\":\"120 + Metropolitan Ave\",\"address_line2\":\"\",\"zip_code_plus4\":\"4208\",\"state_or_province_code\":\"MA\"}},{\"uei\":\"S5PBXFCDUA53\",\"legal_business_name\":\" + IRISH TRADE SERVICES, LLC\",\"cage_code\":\"198A7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"}],\"physical_address\":{\"city\":\"New York\",\"zip_code\":\"10022\",\"country_code\":\"USA\",\"address_line1\":\"400 + Park Ave Fl 17\",\"address_line2\":\"\",\"zip_code_plus4\":\"9494\",\"state_or_province_code\":\"NY\"}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" Inner Armor, LLC\",\"cage_code\":\"15GH4\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"GRANDVILLE\",\"zip_code\":\"49418\",\"country_code\":\"USA\",\"address_line1\":\"3747 40TH ST SW\",\"address_line2\":\"\",\"zip_code_plus4\":\"3132\",\"state_or_province_code\":\"MI\"}},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" JAYRON RATEN CLEMENTE\",\"cage_code\":\"SSXS7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"ZARAGOZA\",\"zip_code\":\"\",\"country_code\":\"PHL\",\"address_line1\":\"430 - MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" + MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"P668GUDLTFH6\",\"legal_business_name\":\" + KVG LLC\",\"cage_code\":\"16YE6\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"QF\",\"description\":\"Service + Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Elizabethtown\",\"zip_code\":\"17022\",\"country_code\":\"USA\",\"address_line1\":\"112 + S Market St\",\"address_line2\":\"\",\"zip_code_plus4\":\"2309\",\"state_or_province_code\":\"PA\"}},{\"uei\":\"KANMQ8XK2K84\",\"legal_business_name\":\" + LUKE JOHNSON\",\"cage_code\":\"18TP9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Rice\",\"zip_code\":\"99167\",\"country_code\":\"USA\",\"address_line1\":\"2621 + Scott Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9716\",\"state_or_province_code\":\"WA\"}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" MAX BIROU PROIECTARE SRL\",\"cage_code\":\"1JLAL\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Iasi\",\"zip_code\":\"\",\"country_code\":\"ROU\",\"address_line1\":\"IASI COUNTRY, IASI MUNICIPALITY, NO 16-18-20 MELODIEI STREET, BUILDING NO 1, 2 - ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"GU1BXWKZBTK8\",\"legal_business_name\":\" - NM Consulting LLC\",\"cage_code\":\"14UU1\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"OY\",\"description\":\"Black - American Owned\"}],\"physical_address\":{\"city\":\"Omaha\",\"zip_code\":\"68112\",\"country_code\":\"USA\",\"address_line1\":\"3011 - Whitmore St\",\"address_line2\":\"\",\"zip_code_plus4\":\"3149\",\"state_or_province_code\":\"NE\"}},{\"uei\":\"W7VVRWFNCXJ7\",\"legal_business_name\":\" - OSPRE Solutions Inc.\",\"cage_code\":\"16L02\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran - Owned Business\"}],\"physical_address\":{\"city\":\"Sykesville\",\"zip_code\":\"21784\",\"country_code\":\"USA\",\"address_line1\":\"670 - River Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"5503\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"TLZFY6CQ9KK4\",\"legal_business_name\":\" - Ophthalmic Therapeutic Innovation LLC\",\"cage_code\":\"8RZ63\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small - Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"PEABODY\",\"zip_code\":\"01960\",\"country_code\":\"USA\",\"address_line1\":\"20 - KEYES DR APT 10\",\"address_line2\":\"\",\"zip_code_plus4\":\"8024\",\"state_or_province_code\":\"MA\"}},{\"uei\":\"YEVYSM49LK67\",\"legal_business_name\":\" - PK Oxford Square Limited Partnership\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Okemos\",\"zip_code\":\"48864\",\"country_code\":\"USA\",\"address_line1\":\"1784 - Hamilton Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1811\",\"state_or_province_code\":\"MI\"}},{\"uei\":\"LFCHPU28HMA5\",\"legal_business_name\":\" - RECLAMATION DISTRICT 2025\",\"cage_code\":\"6HQ97\",\"business_types\":[{\"code\":\"2F\",\"description\":\"U.S. - State Government\"}],\"physical_address\":{\"city\":\"Stockton\",\"zip_code\":\"95202\",\"country_code\":\"USA\",\"address_line1\":\"343 - E Main St Ste 715\",\"address_line2\":\"\",\"zip_code_plus4\":\"2977\",\"state_or_province_code\":\"CA\"}}]}" + ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}}]}" headers: CF-RAY: - - 99f88c2f68d04c9e-MSP + - 9d71a718fc57a1fb-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:58 GMT + - Wed, 04 Mar 2026 14:43:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=WVKzt57TE7YLYUMYOuBWBX8w36yBHR%2F9V0f1qG2KXXjSltsY5eROx7vkg0MvReVhgb6ch6RGupG6RKlRTNHtA6GpR%2FJzP7UxWIr%2BfpUWNs21HXo9d1aGKnZpHA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=jjrvwDoI04osjMz0mMNvA860ByJBvv1QNQ8%2Fi55oXHsH8gB17Mdap04g5lwCRdStAspo2j39t%2BlG99T4PVlVLAw6J%2FcFrpmhj0PGi0HVMi6t7RtnDmMX3CmU"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '13657' + - '12209' cross-origin-opener-policy: - same-origin referrer-policy: @@ -169,27 +151,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.037s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '977' + - '979' x-ratelimit-burst-reset: - - '55' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998670' + - '1999744' x-ratelimit-daily-reset: - - '88' + - '84987' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '977' + - '979' x-ratelimit-reset: - - '55' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_parsing_nested_objects_with_missing_data b/tests/cassettes/TestEdgeCasesIntegration.test_parsing_nested_objects_with_missing_data index 8bb211b..3776075 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_parsing_nested_objects_with_missing_data +++ b/tests/cassettes/TestEdgeCasesIntegration.test_parsing_nested_objects_with_missing_data @@ -13,246 +13,181 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=25&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29 + uri: https://tango.makegov.com/api/contracts/?limit=25&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29 response: body: - string: "{\"count\":81180424,\"next\":\"http://tango.makegov.com/api/contracts/?page=1&limit=25&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzc1RkNNQzI2RjAwMTlfNzUzMF83NUZDTUMyMEQwMDE1Xzc1MzAiXQ%3D%3D\",\"cursor\":\"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzc1RkNNQzI2RjAwMTlfNzUzMF83NUZDTUMyMEQwMDE1Xzc1MzAiXQ==\",\"results\":[{\"key\":\"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022\",\"piid\":\"70FBR426F00000001\",\"award_date\":\"2025-11-15\",\"description\":\"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.\",\"total_contract_value\":1089550.8,\"recipient\":{\"display_name\":\"REDCON - SOLUTIONS GROUP LLC\"},\"awarding_office\":{\"office_code\":\"70FBR4\",\"office_name\":\"REGION - 4: EMERGENCY PREPAREDNESS AN\",\"agency_code\":\"7022\",\"agency_name\":\"Federal - Emergency Management Agency\",\"department_code\":70,\"department_name\":\"Department - of Homeland Security\"},\"funding_office\":{\"office_code\":\"70FPRR\",\"office_name\":\"ORR - \u2013 OFFICE OF RESPONSE AND RECOVERY\",\"agency_code\":\"7022\",\"agency_name\":\"Federal - Emergency Management Agency\",\"department_code\":70,\"department_name\":\"Department - of Homeland Security\"}},{\"key\":\"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600\",\"piid\":\"36C25526N0084\",\"award_date\":\"2025-11-15\",\"description\":\"TOPEKA - JOC\",\"total_contract_value\":17351.59,\"recipient\":{\"display_name\":\"ONSITE - CONSTRUCTION GROUP LLC\"},\"awarding_office\":{\"office_code\":\"36C255\",\"office_name\":\"255-NETWORK - CONTRACT OFFICE 15 (36C255)\",\"agency_code\":\"3600\",\"agency_name\":\"Department - of Veterans Affairs\",\"department_code\":36,\"department_name\":\"Department - of Veterans Affairs\"},\"funding_office\":{\"office_code\":\"36C589\",\"office_name\":\"589 - KAN WESTERN ORBIT\",\"agency_code\":\"3600\",\"agency_name\":\"Department - of Veterans Affairs\",\"department_code\":36,\"department_name\":\"Department - of Veterans Affairs\"}},{\"key\":\"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-\",\"piid\":\"9523ZY26C0001\",\"award_date\":\"2025-11-14\",\"description\":\"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)\",\"total_contract_value\":1371325.32,\"recipient\":{\"display_name\":\"MERLIN - INTERNATIONAL, INC.\"},\"awarding_office\":{\"office_code\":\"9523ZY\",\"office_name\":\"COMMODITY - FUTURES TRADING COMM\",\"agency_code\":\"9507\",\"agency_name\":\"Commodity - Futures Trading Commission\",\"department_code\":339,\"department_name\":\"Commodity - Futures Trading Commission\"},\"funding_office\":{\"office_code\":\"9523ZY\",\"office_name\":\"COMMODITY - FUTURES TRADING COMM\",\"agency_code\":\"9507\",\"agency_name\":\"Commodity - Futures Trading Commission\",\"department_code\":339,\"department_name\":\"Commodity - Futures Trading Commission\"}},{\"key\":\"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900\",\"piid\":\"89243426FEE000564\",\"award_date\":\"2025-11-14\",\"description\":\"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE\",\"total_contract_value\":4387892.04,\"recipient\":{\"display_name\":\"RACK-WILDNER - & REESE, INC.\"},\"awarding_office\":{\"office_code\":\"892434\",\"office_name\":\"GOLDEN - FIELD OFFICE\",\"agency_code\":\"8900\",\"agency_name\":\"Department of Energy\",\"department_code\":89,\"department_name\":\"Department - of Energy\"},\"funding_office\":{\"office_code\":\"892403\",\"office_name\":\"ENERGY - EFFICIENCYRENEWABLE ENERGY\",\"agency_code\":\"8900\",\"agency_name\":\"Department - of Energy\",\"department_code\":89,\"department_name\":\"Department of Energy\"}},{\"key\":\"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000\",\"piid\":\"89243326FFE400735\",\"award_date\":\"2025-11-14\",\"description\":\"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.\",\"total_contract_value\":24732.97,\"recipient\":{\"display_name\":\"REGENCY - CONSULTING INC\"},\"awarding_office\":{\"office_code\":\"892433\",\"office_name\":\"NATIONAL - ENERGY TECHNOLOGY LABORATORY\",\"agency_code\":\"8900\",\"agency_name\":\"Department - of Energy\",\"department_code\":89,\"department_name\":\"Department of Energy\"},\"funding_office\":{\"office_code\":\"892404\",\"office_name\":\"FOSSIL - ENERGY AND CARBON MANAGEMENT\",\"agency_code\":\"8900\",\"agency_name\":\"Department - of Energy\",\"department_code\":89,\"department_name\":\"Department of Energy\"}},{\"key\":\"CONT_AWD_86614625F00001_8600_86615121A00005_8600\",\"piid\":\"86614625F00001\",\"award_date\":\"2025-11-14\",\"description\":\"COMPREHENSIVE - RISK ASSESSMENT AND MITIGATION - OCFO\",\"total_contract_value\":1499803.54,\"recipient\":{\"display_name\":\"ERNST - & YOUNG LLP\"},\"awarding_office\":{\"office_code\":\"866143\",\"office_name\":\"CPO - : PHILADELPHIA OPERATIONS BRANC\",\"agency_code\":\"8600\",\"agency_name\":\"Department - of Housing and Urban Development\",\"department_code\":86,\"department_name\":\"Department - of Housing and Urban Development\"},\"funding_office\":{\"office_code\":\"865580\",\"office_name\":\"CFO - : CHIEF FINANCIAL OFFICER\",\"agency_code\":\"8600\",\"agency_name\":\"Department - of Housing and Urban Development\",\"department_code\":86,\"department_name\":\"Department - of Housing and Urban Development\"}},{\"key\":\"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000\",\"piid\":\"80NSSC26FA013\",\"award_date\":\"2025-11-14\",\"description\":\"F5 - NETWORK MAINTENANCE RENEWAL\",\"total_contract_value\":73050.0,\"recipient\":{\"display_name\":\"COLOSSAL - CONTRACTING LLC\"},\"awarding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000\",\"piid\":\"80NSSC26FA012\",\"award_date\":\"2025-11-14\",\"description\":\"XSI - HARDWARE MAINTENANCE RENEWAL FY26\",\"total_contract_value\":21711.76,\"recipient\":{\"display_name\":\"GOVPLACE, - LLC\"},\"awarding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000\",\"piid\":\"80NSSC26FA009\",\"award_date\":\"2025-11-14\",\"description\":\"TELLABS - STANDARD SUPPORT & PANORAMA INM\",\"total_contract_value\":13390.73,\"recipient\":{\"display_name\":\"COLOSSAL - CONTRACTING LLC\"},\"awarding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000\",\"piid\":\"80NSSC26FA006\",\"award_date\":\"2025-11-14\",\"description\":\"CISCO - NASA CISCO REMOTE VPN OBSOLESCENCE REPLACEMENT\",\"total_contract_value\":99974.58,\"recipient\":{\"display_name\":\"FCN - INC\"},\"awarding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80NSSC\",\"office_name\":\"NASA - SHARED SERVICES CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_80HQTR26F7003_8000_80NSSC21D0001_8000\",\"piid\":\"80HQTR26F7003\",\"award_date\":\"2025-11-14\",\"description\":\"THIS - TASK ORDER IS TO PURCHASE MATHWORKS MATLAB LICENSES FOR JSC PER QUOTE 13896654 - DATED 11/13/2025.\",\"total_contract_value\":14940.34,\"recipient\":{\"display_name\":\"THE - MATHWORKS, INC.\"},\"awarding_office\":{\"office_code\":\"80HQTR\",\"office_name\":\"NASA - HEADQUARTERS\",\"agency_code\":\"8000\",\"agency_name\":\"National Aeronautics - and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80TECH\",\"office_name\":\"NASA - IT PROCUREMENT OFFICE\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_80HQTR26F7002_8000_80NSSC21D0001_8000\",\"piid\":\"80HQTR26F7002\",\"award_date\":\"2025-11-14\",\"description\":\"THIS - TASK ORDER IS TO PURCHASE MATHWORKS MATLAB LICENSES FOR GSFC PER QUOTE 13896650 - DATED 11/13/2025.\",\"total_contract_value\":2651.0,\"recipient\":{\"display_name\":\"THE - MATHWORKS, INC.\"},\"awarding_office\":{\"office_code\":\"80HQTR\",\"office_name\":\"NASA - HEADQUARTERS\",\"agency_code\":\"8000\",\"agency_name\":\"National Aeronautics - and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80TECH\",\"office_name\":\"NASA - IT PROCUREMENT OFFICE\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_80HQTR26F7001_8000_80NSSC21D0001_8000\",\"piid\":\"80HQTR26F7001\",\"award_date\":\"2025-11-14\",\"description\":\"THIS - TASK ORDER IS TO PURCHASE MATHWORKS MATLAB LICENSES PER QUOTE 13896646 DATED - 11/13/2025.\",\"total_contract_value\":3140.0,\"recipient\":{\"display_name\":\"THE - MATHWORKS, INC.\"},\"awarding_office\":{\"office_code\":\"80HQTR\",\"office_name\":\"NASA - HEADQUARTERS\",\"agency_code\":\"8000\",\"agency_name\":\"National Aeronautics - and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80TECH\",\"office_name\":\"NASA - IT PROCUREMENT OFFICE\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_80ARC026FA001_8000_80GRC025DA001_8000\",\"piid\":\"80ARC026FA001\",\"award_date\":\"2025-11-14\",\"description\":\"TASK - ORDER TO PROVIDE CUSTODIAL SERVICES ABOVE THE BASELINE SERVICES.\",\"total_contract_value\":106717.31,\"recipient\":{\"display_name\":\"AHTNA - INTEGRATED SERVICES LLC\"},\"awarding_office\":{\"office_code\":\"80ARC0\",\"office_name\":\"NASA - AMES RESEARCH CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"},\"funding_office\":{\"office_code\":\"80ARC0\",\"office_name\":\"NASA - AMES RESEARCH CENTER\",\"agency_code\":\"8000\",\"agency_name\":\"National - Aeronautics and Space Administration\",\"department_code\":80,\"department_name\":\"National - Aeronautics and Space Administration\"}},{\"key\":\"CONT_AWD_75N93026F00001_7529_HHSN316201500040W_7529\",\"piid\":\"75N93026F00001\",\"award_date\":\"2025-11-14\",\"description\":\"AWS - CLOUDLINK SERVICE - RDCF 2X10G (AMBIS 2275621)\",\"total_contract_value\":79453.12,\"recipient\":{\"display_name\":\"NEW - TECH SOLUTIONS, INC.\"},\"awarding_office\":{\"office_code\":\"75N930\",\"office_name\":\"NATIONAL - INSTITUTES OF HEALTH NIAID\",\"agency_code\":\"7529\",\"agency_name\":\"National - Institutes of Health\",\"department_code\":75,\"department_name\":\"Department - of Health and Human Services\"},\"funding_office\":{\"office_code\":\"75N930\",\"office_name\":\"NATIONAL - INSTITUTES OF HEALTH NIAID\",\"agency_code\":\"7529\",\"agency_name\":\"National - Institutes of Health\",\"department_code\":75,\"department_name\":\"Department - of Health and Human Services\"}},{\"key\":\"CONT_AWD_75H71226F80002_7527_36F79724D0071_3600\",\"piid\":\"75H71226F80002\",\"award_date\":\"2025-11-14\",\"description\":\"ZOLL - MEDICAL CORPORATION DEFIBRILLATOR EQUIPMENT\",\"total_contract_value\":630011.67,\"recipient\":{\"display_name\":\"AFTER - ACTION MEDICAL AND DENTAL SUPPLY, LLC\"},\"awarding_office\":{\"office_code\":\"75H712\",\"office_name\":\"PHOENIX - AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H712\",\"office_name\":\"PHOENIX - AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H71226F28005_7527_75H71224A00019_7527\",\"piid\":\"75H71226F28005\",\"award_date\":\"2025-11-14\",\"description\":\"BPA - CALL FOR CRSU. TELERADIOLOGY SERVICES\",\"total_contract_value\":256875.0,\"recipient\":{\"display_name\":\"VETMED - GROUP LLC\"},\"awarding_office\":{\"office_code\":\"75H712\",\"office_name\":\"PHOENIX - AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H712\",\"office_name\":\"PHOENIX - AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H71126P00002_7527_-NONE-_-NONE-\",\"piid\":\"75H71126P00002\",\"award_date\":\"2025-11-14\",\"description\":\"PITNEY - BOWES POSTAGE REFILL FOR LAWTON INDIAN HOSPITAL.\",\"total_contract_value\":25000.0,\"recipient\":{\"display_name\":\"THE - PITNEY BOWES BANK, INC.\"},\"awarding_office\":{\"office_code\":\"75H711\",\"office_name\":\"OK - CITY AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H711\",\"office_name\":\"OK - CITY AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H71126F27002_7527_75H71126D00001_7527\",\"piid\":\"75H71126F27002\",\"award_date\":\"2025-11-14\",\"description\":\"LAB - AND PATHOLOGY - OCAO\",\"total_contract_value\":35000.0,\"recipient\":{\"display_name\":\"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC\"},\"awarding_office\":{\"office_code\":\"75H711\",\"office_name\":\"OK - CITY AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H711\",\"office_name\":\"OK - CITY AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H71126F27001_7527_75H71126D00001_7527\",\"piid\":\"75H71126F27001\",\"award_date\":\"2025-11-14\",\"description\":\"LAB - AND PATHOLOGY - OCAO\",\"total_contract_value\":198000.0,\"recipient\":{\"display_name\":\"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC\"},\"awarding_office\":{\"office_code\":\"75H711\",\"office_name\":\"OK - CITY AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H711\",\"office_name\":\"OK - CITY AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H70726P00003_7527_-NONE-_-NONE-\",\"piid\":\"75H70726P00003\",\"award_date\":\"2025-11-14\",\"description\":\"LICENSED - CLINICAL SOCIAL WORKER (LCSW) - NSRTC\",\"total_contract_value\":899491.87,\"recipient\":{\"display_name\":\"TESTUDO - LOGISTICS LLC\"},\"awarding_office\":{\"office_code\":\"75H707\",\"office_name\":\"ALBUQUERQUE - AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H707\",\"office_name\":\"ALBUQUERQUE - AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H70626P00018_7527_-NONE-_-NONE-\",\"piid\":\"75H70626P00018\",\"award_date\":\"2025-11-14\",\"description\":\"REGISTERED - NURSE SERVICES FOR THE INPATIENT AND EMERGENCY ROOM DEPARTMENT AT THE CHEYENNE - RIVER HEALTH CENTER LOCATED IN EAGLE BUTTE, SD. PERIOD OF PERFORMANCE IS 90 - DAYS FROM DATE AWARDED.\",\"total_contract_value\":405600.0,\"recipient\":{\"display_name\":\"BAY - AREA ANESTHESIA LLC\"},\"awarding_office\":{\"office_code\":\"75H706\",\"office_name\":\"GREAT - PLAINS AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H706\",\"office_name\":\"GREAT - PLAINS AREA INDIAN HEALTH SVC\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H70426F80001_7527_140A1624D0044_1450\",\"piid\":\"75H70426F80001\",\"award_date\":\"2025-11-14\",\"description\":\"INFRASTRUCTURE - & PLATFORM SUPPORT SERVICES FOR RESOURCE AND PATIENT MANAGEMENT SYSTEM (CSMT - O&M)\",\"total_contract_value\":10481443.48,\"recipient\":{\"display_name\":\"WICHITA - TRIBAL ENTERPRISES, LLC\"},\"awarding_office\":{\"office_code\":\"75H704\",\"office_name\":\"DIVISION - OF ACQUISITIONS POLICY HQ\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H704\",\"office_name\":\"DIVISION - OF ACQUISITIONS POLICY HQ\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75H70326F08037_7527_75H70323D00002_7527\",\"piid\":\"75H70326F08037\",\"award_date\":\"2025-11-14\",\"description\":\"THE - CONTRACTOR SHALL PROVIDE ALL LABOR, MATERIALS, EQUIPMENT, TOOLS, TRANSPORTATION, - AND SUPERVISION NECESSARY TO FURNISH AND COMPLETE THE WORK AS SPECIFIED AT - SANTA YSABEL SAN DIEGO, CA\",\"total_contract_value\":43763.4,\"recipient\":{\"display_name\":\"AMA - DIVERSIFIED CONSTRUCTION GROUP\"},\"awarding_office\":{\"office_code\":\"75H703\",\"office_name\":\"CALIFORNIA - INDIAN HEALTH SERVICE\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"},\"funding_office\":{\"office_code\":\"75H703\",\"office_name\":\"CALIFORNIA - INDIAN HEALTH SERVICE\",\"agency_code\":\"7527\",\"agency_name\":\"Indian - Health Service\",\"department_code\":75,\"department_name\":\"Department of - Health and Human Services\"}},{\"key\":\"CONT_AWD_75FCMC26F0019_7530_75FCMC20D0015_7530\",\"piid\":\"75FCMC26F0019\",\"award_date\":\"2025-11-14\",\"description\":\"CMS - WILL UTILIZE THIS TASK ORDER AS A PART OF THE OVERALL PROVIDER ENROLLMENT - AND OVERSIGHT, INDEFINITE DELIVERY, INDEFINITE QUANTITY CONTRACT (PEO-IDIQ) - TO DETECT, PREVENT, AND PROACTIVELY DETER FRAUD, WASTE AND ABUSE IN THE MEDICARE - AND/OR MEDICAID\",\"total_contract_value\":27298525.06,\"recipient\":{\"display_name\":\"SIGNATURE - CONSULTING GROUP LLC\"},\"awarding_office\":{\"office_code\":\"75FCMC\",\"office_name\":\"OFC - OF ACQUISITION AND GRANTS MGMT\",\"agency_code\":\"7530\",\"agency_name\":\"Centers - for Medicare and Medicaid Services\",\"department_code\":75,\"department_name\":\"Department - of Health and Human Services\"},\"funding_office\":{\"office_code\":\"75FCMC\",\"office_name\":\"OFC - OF ACQUISITION AND GRANTS MGMT\",\"agency_code\":\"7530\",\"agency_name\":\"Centers - for Medicare and Medicaid Services\",\"department_code\":75,\"department_name\":\"Department - of Health and Human Services\"}}],\"count_type\":\"approximate\"}" + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=25&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29&cursor=WyIyMDI2LTAzLTAzIiwgImY0YzVjMGQ3LTg1NmEtNWNlNS1iYzk3LTQxYjM1NjRhNzY2ZSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImY0YzVjMGQ3LTg1NmEtNWNlNS1iYzk3LTQxYjM1NjRhNzY2ZSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"},"awarding_office":{"office_code":"75N980","office_name":"NATIONAL + INSTITUTES OF HEALTH OLAO","agency_code":"7529","agency_name":"NATIONAL INSTITUTES + OF HEALTH","department_code":"075","department_name":"HEALTH AND HUMAN SERVICES, + DEPARTMENT OF"},"funding_office":{"office_code":"75N94D","office_name":"NATIONAL + INSTITUTES OF HEALTH","agency_code":"7529","agency_name":"NATIONAL INSTITUTES + OF HEALTH","department_code":"075","department_name":"HEALTH AND HUMAN SERVICES, + DEPARTMENT OF"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."},"awarding_office":{"office_code":"491004","office_name":"DIV OF ACQ + AND COOPERATIVE SUPPORT","agency_code":"4900","agency_name":"NATIONAL SCIENCE + FOUNDATION","department_code":"049","department_name":"NATIONAL SCIENCE FOUNDATION"},"funding_office":{"office_code":"491500","office_name":"DIRECTORATE + FOR TECHNOLOGY, INNOVATION, & PARTNERSHIPS","agency_code":"4900","agency_name":"NATIONAL + SCIENCE FOUNDATION","department_code":"049","department_name":"NATIONAL SCIENCE + FOUNDATION"}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"},"awarding_office":{"office_code":"15B109","office_name":"LEXINGTON, + FMC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"},"funding_office":{"office_code":"15B109","office_name":"LEXINGTON, + FMC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"},"awarding_office":{},"funding_office":{"office_code":"36C607","office_name":"607-MADISON(00607)(36C607)","agency_code":"3600","agency_name":"VETERANS + AFFAIRS, DEPARTMENT OF","department_code":"036","department_name":"VETERANS + AFFAIRS, DEPARTMENT OF"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"},"awarding_office":{"office_code":"15B505","office_name":"CARSWELL, + FMC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"},"funding_office":{"office_code":"15B505","office_name":"CARSWELL, + FMC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","description":"TITLE: + AT&T FIRST NET / 15 IPHONES & 2 TABLETS\nREQUESTOR: VEDA S FARMER\nREF AWARD/BPA: + 15F06720A0001516\nPOP DATES: 05/01/2026 TO 04/30/2027","total_contract_value":4786.76,"recipient":{"display_name":"ATT + MOBILITY LLC"},"awarding_office":{"office_code":"15DDTR","office_name":"OFFICE-TRAINING","agency_code":"1524","agency_name":"DRUG + ENFORCEMENT ADMINISTRATION","department_code":"015","department_name":"JUSTICE, + DEPARTMENT OF"},"funding_office":{"office_code":"15DDTR","office_name":"OFFICE-TRAINING","agency_code":"1524","agency_name":"DRUG + ENFORCEMENT ADMINISTRATION","department_code":"015","department_name":"JUSTICE, + DEPARTMENT OF"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","description":"DISPATCH + SERVICES FOR CUMBERLAND GAP NATIONAL HISTORIC PARK","total_contract_value":22000.0,"recipient":{"display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"},"awarding_office":{"office_code":"140P53","office_name":"SER + NORTH MABO","agency_code":"1443","agency_name":"NATIONAL PARK SERVICE","department_code":"014","department_name":"INTERIOR, + DEPARTMENT OF THE"},"funding_office":{"office_code":"140P53","office_name":"SER + NORTH MABO","agency_code":"1443","agency_name":"NATIONAL PARK SERVICE","department_code":"014","department_name":"INTERIOR, + DEPARTMENT OF THE"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","description":"EMCC002595EBM\nENHANCED + MOBILE SATELLITE SERVICES (EMSS) EQUIPMENT/ACTIVATION/REPAIR","total_contract_value":102.26,"recipient":{"display_name":"TRACE + SYSTEMS INC."},"awarding_office":{"office_code":"HC1013","office_name":"TELECOMMUNICATIONS + DIVISION- HC1013","agency_code":"97AK","agency_name":"DEFENSE INFORMATION + SYSTEMS AGENCY (DISA)","department_code":"097","department_name":"DEPT OF + DEFENSE"},"funding_office":{}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":53379.0,"recipient":{"display_name":"BIOMERIEUX + INC"},"awarding_office":{},"funding_office":{"office_code":"36C695","office_name":"695-MILWAUKEE(00695)(36C695)","agency_code":"3600","agency_name":"VETERANS + AFFAIRS, DEPARTMENT OF","department_code":"036","department_name":"VETERANS + AFFAIRS, DEPARTMENT OF"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","description":"FBSU + TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBASE WITH FOUR OPTION + YEARS\nFBSU TASK ORDER FOR DENTAL ASSISTANTS / BUYER: PRUDENCE YO\nBILLINGS + ID/IQ MEDICAL SUPPORT SERVICES \nBASE OBLIGATED AMOUNT: $ 289,553.28\nAGGREGATE + AMOUNT:","total_contract_value":1554054.48,"recipient":{"display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"},"awarding_office":{"office_code":"75H709","office_name":"BILLINGS + AREA INDIAN HEALTH SVC","agency_code":"7527","agency_name":"INDIAN HEALTH + SERVICE","department_code":"075","department_name":"HEALTH AND HUMAN SERVICES, + DEPARTMENT OF"},"funding_office":{"office_code":"75H709","office_name":"BILLINGS + AREA INDIAN HEALTH SVC","agency_code":"7527","agency_name":"INDIAN HEALTH + SERVICE","department_code":"075","department_name":"HEALTH AND HUMAN SERVICES, + DEPARTMENT OF"}},{"key":"CONT_AWD_121NTP26C0037_12K2_-NONE-_-NONE-","piid":"121NTP26C0037","award_date":"2026-03-03","description":"COMMODITIES + FOR USG FOOD DONATIONS: 2000011195/4210007509/RICE, 5/20 LG, W-MLD, FORT BAG-50 + KG","total_contract_value":232336.8,"recipient":{"display_name":"FARMERS RICE + MILLING CO LLC"},"awarding_office":{"office_code":"121NTP","office_name":"USDA + AMS WBSCM","agency_code":"12K2","agency_name":"AGRICULTURAL MARKETING SERVICE","department_code":"012","department_name":"AGRICULTURE, + DEPARTMENT OF"},"funding_office":{"office_code":"122903","office_name":"FAS-FOOD + FOR EDUCATION","agency_code":"12D3","agency_name":"FOREIGN AGRICULTURAL SERVICE","department_code":"012","department_name":"AGRICULTURE, + DEPARTMENT OF"}},{"key":"CONT_AWD_15JUST26F00000001_1501_15JUST25A00000004_1501","piid":"15JUST26F00000001","award_date":"2026-03-03","description":"TEMPORARY + PARALEGAL SERVICES (TPS)","total_contract_value":102692.72,"recipient":{"display_name":"ARDELLE + ASSOCIATES, INC."},"awarding_office":{},"funding_office":{}},{"key":"CONT_AWD_12314426F0088_1205_NNG15SC27B_8000","piid":"12314426F0088","award_date":"2026-03-03","description":"OFFICE + OF CHIEF INFORMATION OFFICER (OCIO) DIGITAL INFRASTRUCTURE\nSERVICES DIVISION + (DISC) USDA","total_contract_value":1825268.82,"recipient":{"display_name":"CARAHSOFT + TECHNOLOGY CORP."},"awarding_office":{},"funding_office":{}},{"key":"CONT_AWD_36C25226N0267_3600_36C25223A0024_3600","piid":"36C25226N0267","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":5272.0,"recipient":{"display_name":"BIOMERIEUX + INC"},"awarding_office":{},"funding_office":{}},{"key":"CONT_AWD_89503626PSW000279_8900_-NONE-_-NONE-","piid":"89503626PSW000279","award_date":"2026-03-03","description":"TRANSFORMER + DISPOSAL","total_contract_value":33299.59,"recipient":{"display_name":"ACCURATE + STRUCTURAL INC."},"awarding_office":{"office_code":"895036","office_name":"SOUTHWESTERN + POWER ADMINISTRATION","agency_code":"8900","agency_name":"ENERGY, DEPARTMENT + OF","department_code":"089","department_name":"ENERGY, DEPARTMENT OF"},"funding_office":{"office_code":"895004","office_name":"SOUTHWESTERN + POWER ADMINISTRATION","agency_code":"8900","agency_name":"ENERGY, DEPARTMENT + OF","department_code":"089","department_name":"ENERGY, DEPARTMENT OF"}},{"key":"CONT_AWD_15B51926P00000105_1540_-NONE-_-NONE-","piid":"15B51926P00000105","award_date":"2026-03-03","description":"NATIONAL + FOOD GROUP","total_contract_value":8500.0,"recipient":{"display_name":"NATIONAL + FOOD GROUP INC"},"awarding_office":{"office_code":"15B519","office_name":"POLLOCK, + FCC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"},"funding_office":{"office_code":"15B519","office_name":"POLLOCK, + FCC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"}},{"key":"CONT_AWD_15B40326F00000061_1540_15JPSS25D00000293_1501","piid":"15B40326F00000061","award_date":"2026-03-03","description":"FY26 + M2 FEDEX DELIVERY SERVICES\nDOJ CONTRACT 15JPSS25D00000293\nDELIVERY ORDER + PERIOD OF PERFORMANCE: OCTOBER 1, 2025 - SEPTEMBER 30, 2026","total_contract_value":690.01,"recipient":{"display_name":"FEDERAL + EXPRESS CORPORATION"},"awarding_office":{"office_code":"15B403","office_name":"DEPT + OF JUST/FEDERAL PRISON SYSTEM","agency_code":"1540","agency_name":"FEDERAL + PRISON SYSTEM / BUREAU OF PRISONS","department_code":"015","department_name":"JUSTICE, + DEPARTMENT OF"},"funding_office":{"office_code":"15B403","office_name":"DEPT + OF JUST/FEDERAL PRISON SYSTEM","agency_code":"1540","agency_name":"FEDERAL + PRISON SYSTEM / BUREAU OF PRISONS","department_code":"015","department_name":"JUSTICE, + DEPARTMENT OF"}},{"key":"CONT_AWD_697DCK26F00246_6920_697DCK22D00001_6920","piid":"697DCK26F00246","award_date":"2026-03-03","description":"ZSCALER + FOR ANNUAL RENEWAL.","total_contract_value":10349981.0,"recipient":{"display_name":"CDW + Government LLC"},"awarding_office":{"office_code":"697DCK","office_name":"697DCK + REGIONAL ACQUISITIONS SVCS","agency_code":"6920","agency_name":"FEDERAL AVIATION + ADMINISTRATION","department_code":"069","department_name":"TRANSPORTATION, + DEPARTMENT OF"},"funding_office":{"office_code":"693JG2","office_name":"FAA","agency_code":"6920","agency_name":"FEDERAL + AVIATION ADMINISTRATION","department_code":"069","department_name":"TRANSPORTATION, + DEPARTMENT OF"}},{"key":"CONT_AWD_75D30126C20873_7523_-NONE-_-NONE-","piid":"75D30126C20873","award_date":"2026-03-03","description":"EMORY + EMERGENCY SERVICES","total_contract_value":7576879.8,"recipient":{"display_name":"EMORY + UNIVERSITY"},"awarding_office":{"office_code":"75D301","office_name":"CDC + OFFICE OF ACQUISITION SERVICES","agency_code":"7523","agency_name":"CENTERS + FOR DISEASE CONTROL AND PREVENTION","department_code":"075","department_name":"HEALTH + AND HUMAN SERVICES, DEPARTMENT OF"},"funding_office":{"office_code":"75D301","office_name":"CDC + OFFICE OF ACQUISITION SERVICES","agency_code":"7523","agency_name":"CENTERS + FOR DISEASE CONTROL AND PREVENTION","department_code":"075","department_name":"HEALTH + AND HUMAN SERVICES, DEPARTMENT OF"}},{"key":"CONT_AWD_15B40126F00000075_1540_15BFA025A00000039_1540","piid":"15B40126F00000075","award_date":"2026-03-03","description":"MATTRESSES","total_contract_value":15120.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"},"awarding_office":{"office_code":"15B401","office_name":"CHICAGO, + MCC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"},"funding_office":{"office_code":"15B401","office_name":"CHICAGO, + MCC","agency_code":"1540","agency_name":"FEDERAL PRISON SYSTEM / BUREAU OF + PRISONS","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"}},{"key":"CONT_AWD_6973GH26F00502_6920_6973GH18D00082_6920","piid":"6973GH26F00502","award_date":"2026-03-03","description":"UPS + EQUIPMENT PURCHASE FOR THE INSTALLATION AT LAXN USDE.","total_contract_value":110361.74,"recipient":{"display_name":"EATON + CORPORATION"},"awarding_office":{"office_code":"6973GH","office_name":"6973GH + FRANCHISE ACQUISITION SVCS","agency_code":"6920","agency_name":"FEDERAL AVIATION + ADMINISTRATION","department_code":"069","department_name":"TRANSPORTATION, + DEPARTMENT OF"},"funding_office":{"office_code":"693JG2","office_name":"FAA","agency_code":"6920","agency_name":"FEDERAL + AVIATION ADMINISTRATION","department_code":"069","department_name":"TRANSPORTATION, + DEPARTMENT OF"}},{"key":"CONT_AWD_15USAN26F00000206_1542_15UC0C25D00000775_1542","piid":"15USAN26F00000206","award_date":"2026-03-03","description":"PAPER","total_contract_value":53283.65,"recipient":{"display_name":"WESTERN + STATES ENVELOPE CO"},"awarding_office":{"office_code":"15USAN","office_name":"FEDERAL + PRISON INDUSTRIES, INC","agency_code":"1542","agency_name":"FEDERAL PRISON + INDUSTRIES, INC","department_code":"015","department_name":"JUSTICE, DEPARTMENT + OF"},"funding_office":{"office_code":"15USAN","office_name":"FEDERAL PRISON + INDUSTRIES, INC","agency_code":"1542","agency_name":"FEDERAL PRISON INDUSTRIES, + INC","department_code":"015","department_name":"JUSTICE, DEPARTMENT OF"}},{"key":"CONT_AWD_140PS126C0003_1443_-NONE-_-NONE-","piid":"140PS126C0003","award_date":"2026-03-03","description":"MAINTENANCE + DREDGING OF DAVIS BAYOU DOCK","total_contract_value":374959.2,"recipient":{"display_name":"BREAKWATER + MARINE CONSTRUCTION, LLC"},"awarding_office":{"office_code":"140PS1","office_name":"DOI, + NPS CONOPS STRATEGIC","agency_code":"1443","agency_name":"NATIONAL PARK SERVICE","department_code":"014","department_name":"INTERIOR, + DEPARTMENT OF THE"},"funding_office":{"office_code":"140PS1","office_name":"DOI, + NPS CONOPS STRATEGIC","agency_code":"1443","agency_name":"NATIONAL PARK SERVICE","department_code":"014","department_name":"INTERIOR, + DEPARTMENT OF THE"}},{"key":"CONT_AWD_15M10226FA4700078_1544_15F06725D0000479_1549","piid":"15M10226FA4700078","award_date":"2026-03-03","description":"MISSION + CRITICAL - APPREHENDING FUGITIVES\nFY26 D80 BUSCH HELMETS (FBI 0479)","total_contract_value":72675.0,"recipient":{"display_name":"PREDICTIVE + BALLISTICS LLC"},"awarding_office":{},"funding_office":{}},{"key":"CONT_AWD_36C26126P0463_3600_-NONE-_-NONE-","piid":"36C26126P0463","award_date":"2026-03-03","description":"PROSTHETICS + - STAIRLIFT","total_contract_value":20625.0,"recipient":{"display_name":"ALOHA + LIFTS LLC"},"awarding_office":{"office_code":"36C261","office_name":"261-NETWORK + CONTRACT OFFICE 21 (36C261)","agency_code":"3600","agency_name":"VETERANS + AFFAIRS, DEPARTMENT OF","department_code":"036","department_name":"VETERANS + AFFAIRS, DEPARTMENT OF"},"funding_office":{"office_code":"36C261","office_name":"261-NETWORK + CONTRACT OFFICE 21 (36C261)","agency_code":"3600","agency_name":"VETERANS + AFFAIRS, DEPARTMENT OF","department_code":"036","department_name":"VETERANS + AFFAIRS, DEPARTMENT OF"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c22c914a1c4-MSP + - 9d71a7099e0facea-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:56 GMT + - Wed, 04 Mar 2026 14:43:18 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=yhmr9ngctrZTw%2Bt4yKZ5VeXmt21oMggbbU2b95a5dNKB5pNfs9xuAFo0UaNNa0njvLo0KmBQRMB%2FhY8z%2BYIKq7CIo2ulXRTUghu8jnB4pdauGzppKMxKJjQBoQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=sGflF7O8QN2RlCB6o1Ig3RLIh0n6RhWRj3avm4vCOCCTYbffprb3JMUJffMd0Uk%2BpG0QPLX83aBpXPewJp20yA42nkTI39gnSBPgdKdtp37j%2BpQsG4UkF9TO"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '19863' + - '16269' cross-origin-opener-policy: - same-origin referrer-policy: @@ -262,27 +197,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.020s + - 0.164s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '986' + - '988' x-ratelimit-burst-reset: - - '57' + - '2' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998679' + - '1999753' x-ratelimit-daily-reset: - - '90' + - '84990' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '986' + - '988' x-ratelimit-reset: - - '57' + - '2' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_parsing_null_missing_fields_in_contracts b/tests/cassettes/TestEdgeCasesIntegration.test_parsing_null_missing_fields_in_contracts index 83fd473..e68136d 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_parsing_null_missing_fields_in_contracts +++ b/tests/cassettes/TestEdgeCasesIntegration.test_parsing_null_missing_fields_in_contracts @@ -13,85 +13,83 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=50&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside + uri: https://tango.makegov.com/api/contracts/?limit=50&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=50&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzY5NzNHSDI2UDAwMDA0XzY5MjBfLU5PTkUtXy1OT05FLSJd","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzY5NzNHSDI2UDAwMDA0XzY5MjBfLU5PTkUtXy1OT05FLSJd","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","fiscal_year":2026,"total_contract_value":1089550.8,"base_and_exercised_options_value":1089550.8,"naics_code":561612,"set_aside":"NONE","recipient":{"uei":"HQXXAB4DV7H3","display_name":"REDCON - SOLUTIONS GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","fiscal_year":2026,"total_contract_value":17351.59,"base_and_exercised_options_value":17351.59,"naics_code":236220,"set_aside":null,"recipient":{"uei":"MR6FELMMCJ31","display_name":"ONSITE - CONSTRUCTION GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"KS"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1371325.32,"base_and_exercised_options_value":217309.6,"naics_code":541519,"set_aside":"NONE","recipient":{"uei":"GDQLRDFJNRD3","display_name":"MERLIN - INTERNATIONAL, INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":4387892.04,"base_and_exercised_options_value":1460606.88,"naics_code":541820,"set_aside":"SBA","recipient":{"uei":"U3M3JLGJLQ63","display_name":"RACK-WILDNER - & REESE, INC."},"place_of_performance":{"country_code":"USA","state_code":"PA"}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":24732.97,"base_and_exercised_options_value":24732.97,"naics_code":541519,"set_aside":null,"recipient":{"uei":"SC8LMLWA6H51","display_name":"REGENCY - CONSULTING INC"},"place_of_performance":{"country_code":"USA","state_code":"WV"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1499803.54,"base_and_exercised_options_value":0.0,"naics_code":541211,"set_aside":null,"recipient":{"uei":"ECMMFNMSLXM7","display_name":"ERNST - & YOUNG LLP"},"place_of_performance":{"country_code":"USA","state_code":"NY"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":73050.0,"base_and_exercised_options_value":73050.0,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"F4M9NB1HD785","display_name":"COLOSSAL - CONTRACTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":21711.76,"base_and_exercised_options_value":21711.76,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"JMVMGGNJGA29","display_name":"GOVPLACE, - LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":13390.73,"base_and_exercised_options_value":13390.73,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"F4M9NB1HD785","display_name":"COLOSSAL - CONTRACTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":99974.58,"base_and_exercised_options_value":99974.58,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"JEANDJTZ8HJ3","display_name":"FCN - INC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_80HQTR26F7003_8000_80NSSC21D0001_8000","piid":"80HQTR26F7003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":14940.34,"base_and_exercised_options_value":14940.34,"naics_code":511210,"set_aside":null,"recipient":{"uei":"YQXBZHMXEVE5","display_name":"THE - MATHWORKS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MA"}},{"key":"CONT_AWD_80HQTR26F7002_8000_80NSSC21D0001_8000","piid":"80HQTR26F7002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":2651.0,"base_and_exercised_options_value":2651.0,"naics_code":511210,"set_aside":null,"recipient":{"uei":"YQXBZHMXEVE5","display_name":"THE - MATHWORKS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MA"}},{"key":"CONT_AWD_80HQTR26F7001_8000_80NSSC21D0001_8000","piid":"80HQTR26F7001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":3140.0,"base_and_exercised_options_value":3140.0,"naics_code":511210,"set_aside":null,"recipient":{"uei":"YQXBZHMXEVE5","display_name":"THE - MATHWORKS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MA"}},{"key":"CONT_AWD_80ARC026FA001_8000_80GRC025DA001_8000","piid":"80ARC026FA001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":106717.31,"base_and_exercised_options_value":106717.31,"naics_code":561720,"set_aside":null,"recipient":{"uei":"GD6WB8VPQ3J9","display_name":"AHTNA - INTEGRATED SERVICES LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_75N93026F00001_7529_HHSN316201500040W_7529","piid":"75N93026F00001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":79453.12,"base_and_exercised_options_value":79453.12,"naics_code":541519,"set_aside":null,"recipient":{"uei":"XK11LLUL61A7","display_name":"NEW - TECH SOLUTIONS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_75H71226F80002_7527_36F79724D0071_3600","piid":"75H71226F80002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":630011.67,"base_and_exercised_options_value":630011.67,"naics_code":334510,"set_aside":null,"recipient":{"uei":"G3KKGDBCNSL7","display_name":"AFTER - ACTION MEDICAL AND DENTAL SUPPLY, LLC"},"place_of_performance":{"country_code":"USA","state_code":"AZ"}},{"key":"CONT_AWD_75H71226F28005_7527_75H71224A00019_7527","piid":"75H71226F28005","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":256875.0,"base_and_exercised_options_value":256875.0,"naics_code":621512,"set_aside":"SDVOSBC","recipient":{"uei":"Z7NABFAK25Y7","display_name":"VETMED - GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"AZ"}},{"key":"CONT_AWD_75H71126P00002_7527_-NONE-_-NONE-","piid":"75H71126P00002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":25000.0,"base_and_exercised_options_value":25000.0,"naics_code":491110,"set_aside":"NONE","recipient":{"uei":"V5E8DNCCNH69","display_name":"THE - PITNEY BOWES BANK, INC."},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75H71126F27002_7527_75H71126D00001_7527","piid":"75H71126F27002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":35000.0,"base_and_exercised_options_value":35000.0,"naics_code":621511,"set_aside":null,"recipient":{"uei":"HLQFA6AXYJK5","display_name":"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75H71126F27001_7527_75H71126D00001_7527","piid":"75H71126F27001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":198000.0,"base_and_exercised_options_value":198000.0,"naics_code":621511,"set_aside":null,"recipient":{"uei":"HLQFA6AXYJK5","display_name":"DIAGNOSTIC - LABORATORY OF OKLAHOMA LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75H70726P00003_7527_-NONE-_-NONE-","piid":"75H70726P00003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":899491.87,"base_and_exercised_options_value":169848.67,"naics_code":621330,"set_aside":"SBA","recipient":{"uei":"TVKUHNPQ4KJ3","display_name":"TESTUDO - LOGISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"NM"}},{"key":"CONT_AWD_75H70626P00018_7527_-NONE-_-NONE-","piid":"75H70626P00018","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":405600.0,"base_and_exercised_options_value":405600.0,"naics_code":621399,"set_aside":"NONE","recipient":{"uei":"NHBEN7FLTDR8","display_name":"BAY - AREA ANESTHESIA LLC"},"place_of_performance":{"country_code":"USA","state_code":"SD"}},{"key":"CONT_AWD_75H70426F80001_7527_140A1624D0044_1450","piid":"75H70426F80001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":10481443.48,"base_and_exercised_options_value":1974917.4,"naics_code":541519,"set_aside":null,"recipient":{"uei":"M52ELQGPE843","display_name":"WICHITA - TRIBAL ENTERPRISES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_75H70326F08037_7527_75H70323D00002_7527","piid":"75H70326F08037","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":43763.4,"base_and_exercised_options_value":43763.4,"naics_code":237110,"set_aside":null,"recipient":{"uei":"NA7QDG668B66","display_name":"AMA - DIVERSIFIED CONSTRUCTION GROUP"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_75FCMC26F0019_7530_75FCMC20D0015_7530","piid":"75FCMC26F0019","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":27298525.06,"base_and_exercised_options_value":5346719.28,"naics_code":541990,"set_aside":"SBA","recipient":{"uei":"ZE8XMALLRYN5","display_name":"SIGNATURE - CONSULTING GROUP LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_75FCMC26F0018_7530_75FCMC21D0001_7530","piid":"75FCMC26F0018","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":18912158.95,"base_and_exercised_options_value":3272263.92,"naics_code":541990,"set_aside":"SBA","recipient":{"uei":"C81ZW3KPFGV9","display_name":"ARCH - SYSTEMS LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z04026P60355Y00_7008_-NONE-_-NONE-","piid":"70Z04026P60355Y00","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":23751.0,"base_and_exercised_options_value":23751.0,"naics_code":336310,"set_aside":"NONE","recipient":{"uei":"LR2HQKYJLDZ7","display_name":"JA - MOODY LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z04026P60353Y00_7008_-NONE-_-NONE-","piid":"70Z04026P60353Y00","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":13650.0,"base_and_exercised_options_value":13650.0,"naics_code":532412,"set_aside":"NONE","recipient":{"uei":"DZ4JXAPAU222","display_name":"UNITED - RENTALS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z03826PZ0000018_7008_-NONE-_-NONE-","piid":"70Z03826PZ0000018","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":34505.0,"base_and_exercised_options_value":13802.0,"naics_code":336413,"set_aside":"SBA","recipient":{"uei":"ZZGWX398RJJ6","display_name":"FSR - CONSULTING LLC"},"place_of_performance":{"country_code":"USA","state_code":"PA"}},{"key":"CONT_AWD_70Z03826PR0000011_7008_-NONE-_-NONE-","piid":"70Z03826PR0000011","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":18960.0,"base_and_exercised_options_value":18960.0,"naics_code":336413,"set_aside":"SBA","recipient":{"uei":"W9UFFHJXD489","display_name":"BROWN - HELICOPTER, INC."},"place_of_performance":{"country_code":"USA","state_code":"FL"}},{"key":"CONT_AWD_70Z03826PF0003002_7008_-NONE-_-NONE-","piid":"70Z03826PF0003002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":48909.32,"base_and_exercised_options_value":48909.32,"naics_code":337214,"set_aside":"NONE","recipient":{"uei":"UKZDZ3TPMLU1","display_name":"TECH - SERVICE SOLUTIONS LLC"},"place_of_performance":{"country_code":"USA","state_code":"AZ"}},{"key":"CONT_AWD_70Z03826FZ0000011_7008_70Z03825DJ0000014_7008","piid":"70Z03826FZ0000011","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":155655.0,"base_and_exercised_options_value":155655.0,"naics_code":336413,"set_aside":null,"recipient":{"uei":"WNG8LVV75EP3","display_name":"AVIATRIX - INC"},"place_of_performance":{"country_code":"USA","state_code":"OR"}},{"key":"CONT_AWD_70Z03826FZ0000010_7008_70Z03823DB0000033_7008","piid":"70Z03826FZ0000010","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1524.0,"base_and_exercised_options_value":1524.0,"naics_code":336413,"set_aside":null,"recipient":{"uei":"WMZDQS99YLT6","display_name":"DENISE - LAMPIGNANO"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_70Z03826FF0003003_7008_GS21F0104W_4730","piid":"70Z03826FF0003003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":19742.25,"base_and_exercised_options_value":19742.25,"naics_code":444130,"set_aside":null,"recipient":{"uei":"C3DYGNCJF9C5","display_name":"HARDWARENOW - LLC"},"place_of_performance":{"country_code":"USA","state_code":"LA"}},{"key":"CONT_AWD_70Z02326PSALC0003_7008_-NONE-_-NONE-","piid":"70Z02326PSALC0003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":41000.0,"base_and_exercised_options_value":41000.0,"naics_code":325520,"set_aside":"NONE","recipient":{"uei":"G3UJV497QGU3","display_name":"FERGUSON - ENTERPRISES LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z02326PSALC0002_7008_-NONE-_-NONE-","piid":"70Z02326PSALC0002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":41000.0,"base_and_exercised_options_value":41000.0,"naics_code":326191,"set_aside":"NONE","recipient":{"uei":"K6HPN25G7FC4","display_name":"INTEGRATED - PROCUREMENT TECHNOLOGIES"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z02326P92200002_7008_-NONE-_-NONE-","piid":"70Z02326P92200002","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":8316.16,"base_and_exercised_options_value":8316.16,"naics_code":532111,"set_aside":"NONE","recipient":{"uei":"LCGJCZLHSUK5","display_name":"SIXT - RENT A CAR LLC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_70Z02326P73120001_7008_-NONE-_-NONE-","piid":"70Z02326P73120001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":13225.0,"base_and_exercised_options_value":13225.0,"naics_code":611430,"set_aside":"NONE","recipient":{"uei":"H5RKZWN8JCT4","display_name":"NATIONAL - ASSOCIATION OF STATE BOATING LAW ADMINISTRATORS, INC"},"place_of_performance":{"country_code":"USA","state_code":"KY"}},{"key":"CONT_AWD_70SBUR26F00000011_7003_47QSMS24D007V_4732","piid":"70SBUR26F00000011","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":27107.0,"base_and_exercised_options_value":27107.0,"naics_code":322291,"set_aside":"EDWOSB","recipient":{"uei":"MAGTJ8T9NQE8","display_name":"ALPHAVETS, - INC"},"place_of_performance":{"country_code":"USA","state_code":"VI"}},{"key":"CONT_AWD_70LGLY26FGLB00003_7015_47QSWA19D001E_4732","piid":"70LGLY26FGLB00003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":16672.0,"base_and_exercised_options_value":16672.0,"naics_code":315990,"set_aside":null,"recipient":{"uei":"RG8WLU64Q6A1","display_name":"DUMMIES - UNLIMITED, INC."},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_70FBR626P00000003_7022_-NONE-_-NONE-","piid":"70FBR626P00000003","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":38000.0,"base_and_exercised_options_value":38000.0,"naics_code":424120,"set_aside":"SBA","recipient":{"uei":"QXFZWPP4RHZ4","display_name":"DESTINY - SOLUTIONS INC"},"place_of_performance":{"country_code":"USA","state_code":"TX"}},{"key":"CONT_AWD_70CDCR26FR0000001_7012_N0002325D0004_9700","piid":"70CDCR26FR0000001","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1339875022.97,"base_and_exercised_options_value":598444871.04,"naics_code":541614,"set_aside":null,"recipient":{"uei":"Y5U3BSK2G389","display_name":"ACQUISITION - LOGISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"TX"}},{"key":"CONT_AWD_6991PE26F00007N_6938_693JF725D000010_6938","piid":"6991PE26F00007N","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":1032110.0,"base_and_exercised_options_value":1032110.0,"naics_code":483111,"set_aside":null,"recipient":{"uei":"S9L9DZ8RBNL6","display_name":"PATRIOT - CONTRACT SERVICES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"WA"}},{"key":"CONT_AWD_6991PE26F00006N_6938_693JF725D000016_6938","piid":"6991PE26F00006N","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":5029282.5,"base_and_exercised_options_value":5029282.5,"naics_code":483111,"set_aside":null,"recipient":{"uei":"UFQGBQM3JDY5","display_name":"TOTE - SERVICES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"OR"}},{"key":"CONT_AWD_697DCK26F00013_6920_697DCK22D00001_6920","piid":"697DCK26F00013","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":67124.93,"base_and_exercised_options_value":67124.93,"naics_code":541512,"set_aside":null,"recipient":{"uei":"PHZDZ8SJ5CM1","display_name":"CDW - GOVERNMENT LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_6973GH26P00296_6920_-NONE-_-NONE-","piid":"6973GH26P00296","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":10800.0,"base_and_exercised_options_value":10800.0,"naics_code":811310,"set_aside":"NONE","recipient":{"uei":"V3GYNR44KT73","display_name":"SIERRA - ENTERPRISES LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_6973GH26P00287_6920_-NONE-_-NONE-","piid":"6973GH26P00287","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":20415.12,"base_and_exercised_options_value":20415.12,"naics_code":334519,"set_aside":"NONE","recipient":{"uei":"FCMPZKYCYKH5","display_name":"VAISALA - INC."},"place_of_performance":{"country_code":"USA","state_code":"CO"}},{"key":"CONT_AWD_6973GH26P00279_6920_-NONE-_-NONE-","piid":"6973GH26P00279","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":19051.5,"base_and_exercised_options_value":19051.5,"naics_code":335139,"set_aside":"NONE","recipient":{"uei":"LHRMMVUCQFB8","display_name":"HUGHEY - & PHILLIPS LLC"},"place_of_performance":{"country_code":"USA","state_code":"OH"}},{"key":"CONT_AWD_6973GH26P00273_6920_-NONE-_-NONE-","piid":"6973GH26P00273","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":31070.0,"base_and_exercised_options_value":31070.0,"naics_code":423690,"set_aside":"NONE","recipient":{"uei":"ELRJA5VU2TC4","display_name":"GIGLI - ENTERPRISES, INC."},"place_of_performance":{"country_code":"USA","state_code":"FL"}},{"key":"CONT_AWD_6973GH26P00004_6920_-NONE-_-NONE-","piid":"6973GH26P00004","award_date":"2025-11-14","fiscal_year":2026,"total_contract_value":85555.0,"base_and_exercised_options_value":85555.0,"naics_code":237130,"set_aside":"SBA","recipient":{"uei":"UKJALGAAJB32","display_name":"SHECKLER - CONTRACTING, INC."},"place_of_performance":{"country_code":"USA","state_code":"PA"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=50&page=1&shape=key%2Cpiid%2Caward_date%2Cfiscal_year%2Crecipient%28display_name%2Cuei%29%2Ctotal_contract_value%2Cbase_and_exercised_options_value%2Cplace_of_performance%28state_code%2Ccountry_code%29%2Cnaics_code%2Cset_aside&cursor=WyIyMDI2LTAzLTAzIiwgImU1YzNkNjA4LTU3YTQtNTY2NS1hOTQ1LWQxMmY4MzE4NmI2YyJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImU1YzNkNjA4LTU3YTQtNTY2NS1hOTQ1LWQxMmY4MzE4NmI2YyJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":122510.0,"base_and_exercised_options_value":122510.0,"naics_code":541511,"set_aside":"NONE","recipient":{"uei":"GMHBZNNNPWN6","display_name":"PEOPLE + DESIGNS INC"},"place_of_performance":{"country_code":"USA","state_code":"MD"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":945638.46,"base_and_exercised_options_value":945638.46,"naics_code":513120,"set_aside":"NONE","recipient":{"uei":"S9UYLMMXE6X8","display_name":"ELSEVIER + INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":255.0,"base_and_exercised_options_value":255.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"NTBNTF5W31H5","display_name":"PHAMATECH, + INCORPORATED"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":36904.0,"base_and_exercised_options_value":36904.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":8865.0,"base_and_exercised_options_value":8865.0,"naics_code":322291,"set_aside":"NONE","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"place_of_performance":{"country_code":"USA","state_code":"TX"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":4786.76,"base_and_exercised_options_value":4786.76,"naics_code":517312,"set_aside":null,"recipient":{"uei":"P2S7GZFBCSJ1","display_name":"ATT + MOBILITY LLC"},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":22000.0,"base_and_exercised_options_value":22000.0,"naics_code":921190,"set_aside":"NONE","recipient":{"uei":"JU6MDNDXZU65","display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"},"place_of_performance":{"country_code":"USA","state_code":"TN"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":102.26,"base_and_exercised_options_value":102.26,"naics_code":517410,"set_aside":null,"recipient":{"uei":"EEL5LCLB97W5","display_name":"TRACE + SYSTEMS INC."},"place_of_performance":{"country_code":"USA","state_code":"AL"}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":53379.0,"base_and_exercised_options_value":53379.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":1554054.48,"base_and_exercised_options_value":289553.28,"naics_code":541990,"set_aside":null,"recipient":{"uei":"LATETAUF84E7","display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MT"}},{"key":"CONT_AWD_121NTP26C0037_12K2_-NONE-_-NONE-","piid":"121NTP26C0037","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":232336.8,"base_and_exercised_options_value":232336.8,"naics_code":311212,"set_aside":"SBP","recipient":{"uei":"WCWGJXKWEZ91","display_name":"FARMERS + RICE MILLING CO LLC"},"place_of_performance":{"country_code":"USA","state_code":"LA"}},{"key":"CONT_AWD_15JUST26F00000001_1501_15JUST25A00000004_1501","piid":"15JUST26F00000001","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":102692.72,"base_and_exercised_options_value":102692.72,"naics_code":518111,"set_aside":"SBA","recipient":{"uei":"Y1HWKYJWKJF7","display_name":"ARDELLE + ASSOCIATES, INC."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_12314426F0088_1205_NNG15SC27B_8000","piid":"12314426F0088","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":1825268.82,"base_and_exercised_options_value":1825268.82,"naics_code":541519,"set_aside":null,"recipient":{"uei":"DT8KJHZXVJH5","display_name":"CARAHSOFT + TECHNOLOGY CORP."},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_36C25226N0267_3600_36C25223A0024_3600","piid":"36C25226N0267","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":5272.0,"base_and_exercised_options_value":5272.0,"naics_code":334516,"set_aside":null,"recipient":{"uei":"HCNVCMEG9NL6","display_name":"BIOMERIEUX + INC"},"place_of_performance":{"country_code":"USA","state_code":"UT"}},{"key":"CONT_AWD_89503626PSW000279_8900_-NONE-_-NONE-","piid":"89503626PSW000279","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":33299.59,"base_and_exercised_options_value":33299.59,"naics_code":562211,"set_aside":"NONE","recipient":{"uei":"CAUHMC2ZW2E3","display_name":"ACCURATE + STRUCTURAL INC."},"place_of_performance":{"country_code":"USA","state_code":"MO"}},{"key":"CONT_AWD_15B51926P00000105_1540_-NONE-_-NONE-","piid":"15B51926P00000105","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":8500.0,"base_and_exercised_options_value":8500.0,"naics_code":311999,"set_aside":"SBA","recipient":{"uei":"W2Y7WG93LRS5","display_name":"NATIONAL + FOOD GROUP INC"},"place_of_performance":{"country_code":"USA","state_code":"MI"}},{"key":"CONT_AWD_15B40326F00000061_1540_15JPSS25D00000293_1501","piid":"15B40326F00000061","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":690.01,"base_and_exercised_options_value":690.01,"naics_code":492110,"set_aside":null,"recipient":{"uei":"EM7LMJJCF6B7","display_name":"FEDERAL + EXPRESS CORPORATION"},"place_of_performance":{"country_code":"USA","state_code":"DC"}},{"key":"CONT_AWD_697DCK26F00246_6920_697DCK22D00001_6920","piid":"697DCK26F00246","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":10349981.0,"base_and_exercised_options_value":10349981.0,"naics_code":541512,"set_aside":null,"recipient":{"uei":"PHZDZ8SJ5CM1","display_name":"CDW + Government LLC"},"place_of_performance":{"country_code":"USA","state_code":"OK"}},{"key":"CONT_AWD_75D30126C20873_7523_-NONE-_-NONE-","piid":"75D30126C20873","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":7576879.8,"base_and_exercised_options_value":1829221.96,"naics_code":541715,"set_aside":"NONE","recipient":{"uei":"S352L5PJLMP8","display_name":"EMORY + UNIVERSITY"},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_15B40126F00000075_1540_15BFA025A00000039_1540","piid":"15B40126F00000075","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":15120.0,"base_and_exercised_options_value":15120.0,"naics_code":315990,"set_aside":"NONE","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"place_of_performance":{"country_code":"USA","state_code":"KY"}},{"key":"CONT_AWD_6973GH26F00502_6920_6973GH18D00082_6920","piid":"6973GH26F00502","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":110361.74,"base_and_exercised_options_value":110361.74,"naics_code":335999,"set_aside":null,"recipient":{"uei":"NP3NSFVMNUM3","display_name":"EATON + CORPORATION"},"place_of_performance":{"country_code":"USA","state_code":"NC"}},{"key":"CONT_AWD_15USAN26F00000206_1542_15UC0C25D00000775_1542","piid":"15USAN26F00000206","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":53283.65,"base_and_exercised_options_value":53283.65,"naics_code":322120,"set_aside":null,"recipient":{"uei":"JC6BQ183PMB3","display_name":"WESTERN + STATES ENVELOPE CO"},"place_of_performance":{"country_code":"USA","state_code":"WI"}},{"key":"CONT_AWD_140PS126C0003_1443_-NONE-_-NONE-","piid":"140PS126C0003","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":374959.2,"base_and_exercised_options_value":374959.2,"naics_code":237990,"set_aside":"SBA","recipient":{"uei":"DNPHNQPCLHD6","display_name":"BREAKWATER + MARINE CONSTRUCTION, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MS"}},{"key":"CONT_AWD_15M10226FA4700078_1544_15F06725D0000479_1549","piid":"15M10226FA4700078","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":72675.0,"base_and_exercised_options_value":72675.0,"naics_code":315990,"set_aside":null,"recipient":{"uei":"T9NBFA5R24H2","display_name":"PREDICTIVE + BALLISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_36C26126P0463_3600_-NONE-_-NONE-","piid":"36C26126P0463","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":20625.0,"base_and_exercised_options_value":20625.0,"naics_code":339113,"set_aside":"NONE","recipient":{"uei":"YNEDGLKHU789","display_name":"ALOHA + LIFTS LLC"},"place_of_performance":{"country_code":"USA","state_code":"HI"}},{"key":"CONT_AWD_15JENR26P00000079_1501_-NONE-_-NONE-","piid":"15JENR26P00000079","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":314344.0,"base_and_exercised_options_value":314344.0,"naics_code":541199,"set_aside":"NONE","recipient":{"uei":"D1DGQZJFGGK7","display_name":"MORGAN, + ANGEL, BRIGHAM & ASSOCIATES L.L.C."},"place_of_performance":{"country_code":"USA","state_code":"DC"}},{"key":"CONT_AWD_70Z02926PNEWO0032_7008_-NONE-_-NONE-","piid":"70Z02926PNEWO0032","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":17240.0,"base_and_exercised_options_value":17240.0,"naics_code":811310,"set_aside":"SBA","recipient":{"uei":"HAT9THZJ41B3","display_name":"DAVISON + MARINE L.L.C"},"place_of_performance":{"country_code":"USA","state_code":"LA"}},{"key":"CONT_AWD_36C24526F0197_3600_36F79725D0109_3600","piid":"36C24526F0197","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":23668.34,"base_and_exercised_options_value":23668.34,"naics_code":334510,"set_aside":null,"recipient":{"uei":"W8KNL8QJD6H3","display_name":"INSPIRE + MEDICAL SYSTEMS, INC."},"place_of_performance":{"country_code":"USA","state_code":"MN"}},{"key":"CONT_AWD_47PC5226F0162_4740_47PN0323A0001_4740","piid":"47PC5226F0162","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":42670.6,"base_and_exercised_options_value":42670.6,"naics_code":561210,"set_aside":null,"recipient":{"uei":"X6E8D5J5BZF7","display_name":"DAE + SUNG LLC"},"place_of_performance":{"country_code":"USA","state_code":"VA"}},{"key":"CONT_AWD_15B51726P00000091_1540_-NONE-_-NONE-","piid":"15B51726P00000091","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":20592.7,"base_and_exercised_options_value":20592.7,"naics_code":311991,"set_aside":"SBA","recipient":{"uei":"W2Y7WG93LRS5","display_name":"NATIONAL + FOOD GROUP INC"},"place_of_performance":{"country_code":"USA","state_code":"MI"}},{"key":"CONT_AWD_83310126P0013_8300_-NONE-_-NONE-","piid":"83310126P0013","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":2548827.9,"base_and_exercised_options_value":2548827.9,"naics_code":541199,"set_aside":"NONE","recipient":{"uei":"UMU8BY76LSB3","display_name":"VARELLA + & ADVOGADOS ASSOCIADOS"},"place_of_performance":{"country_code":"BRA","state_code":null}},{"key":"CONT_AWD_70Z08426P72110007_7008_-NONE-_-NONE-","piid":"70Z08426P72110007","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":18388.67,"base_and_exercised_options_value":18388.67,"naics_code":611699,"set_aside":"NONE","recipient":{"uei":"ZYJEDE2NLAA9","display_name":"ACADEMI + TRAINING CENTER LLC"},"place_of_performance":{"country_code":"USA","state_code":"NC"}},{"key":"CONT_AWD_36C25526P0110_3600_-NONE-_-NONE-","piid":"36C25526P0110","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":15000.0,"base_and_exercised_options_value":15000.0,"naics_code":339113,"set_aside":"NONE","recipient":{"uei":"WCUFLK9J2AG8","display_name":"APPLETON + MEDICAL SERVICES, INC."},"place_of_performance":{"country_code":"USA","state_code":"MO"}},{"key":"CONT_AWD_121NTP26C0035_12K2_-NONE-_-NONE-","piid":"121NTP26C0035","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":51788.61,"base_and_exercised_options_value":51788.61,"naics_code":311225,"set_aside":"NONE","recipient":{"uei":"JBB5Q6BD46T1","display_name":"HEARTLAND + GOODWILL ENTERPRISES"},"place_of_performance":{"country_code":"USA","state_code":"IA"}},{"key":"CONT_AWD_36C25926P0301_3600_-NONE-_-NONE-","piid":"36C25926P0301","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":32146.44,"base_and_exercised_options_value":32146.44,"naics_code":339113,"set_aside":"NONE","recipient":{"uei":"C2WBTZ9TQDG9","display_name":"RED + ONE MEDICAL DEVICES LLC"},"place_of_performance":{"country_code":"USA","state_code":"GA"}},{"key":"CONT_AWD_697DCK26F00245_6920_692M1519D00015_6920","piid":"697DCK26F00245","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":288634.96,"base_and_exercised_options_value":288634.96,"naics_code":334111,"set_aside":null,"recipient":{"uei":"Q2M4FYALZJ89","display_name":"IRON + BOW TECHNOLOGIES, LLC"},"place_of_performance":{"country_code":"USA","state_code":"NJ"}},{"key":"CONT_AWD_36C24826F0079_3600_V797D70087_3600","piid":"36C24826F0079","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":765345.72,"base_and_exercised_options_value":765345.72,"naics_code":339114,"set_aside":null,"recipient":{"uei":"UM2HYYSE69R7","display_name":"A-DEC + INC"},"place_of_performance":{"country_code":"USA","state_code":"OR"}},{"key":"CONT_AWD_36C26026N0208_3600_36C26024A0019_3600","piid":"36C26026N0208","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":182566.44,"base_and_exercised_options_value":182566.44,"naics_code":339112,"set_aside":null,"recipient":{"uei":"L5KFJWTBJDN5","display_name":"OMNICELL, + INC."},"place_of_performance":{"country_code":"USA","state_code":"PA"}},{"key":"CONT_AWD_36C25526K0132_3600_36F79718D0437_3600","piid":"36C25526K0132","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":24080.38,"base_and_exercised_options_value":24080.38,"naics_code":339113,"set_aside":null,"recipient":{"uei":"RM9SQAVLTVH7","display_name":"PERMOBIL, + INC."},"place_of_performance":{"country_code":"USA","state_code":"TN"}},{"key":"CONT_AWD_36C24126N0360_3600_36F79722D0076_3600","piid":"36C24126N0360","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":40572.99,"base_and_exercised_options_value":40572.99,"naics_code":339113,"set_aside":null,"recipient":{"uei":"JXL2LWR67N63","display_name":"ADAPTIVE + DRIVING ALLIANCE, LLC"},"place_of_performance":{"country_code":"USA","state_code":"ME"}},{"key":"CONT_AWD_15B31526P00000068_1540_-NONE-_-NONE-","piid":"15B31526P00000068","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":179396.5,"base_and_exercised_options_value":179396.5,"naics_code":311999,"set_aside":"SBA","recipient":{"uei":"CB67WJHP34K9","display_name":"NORTH + STAR IMPORTS, LLC"},"place_of_performance":{"country_code":"USA","state_code":"MN"}},{"key":"CONT_AWD_36C25526K0133_3600_36F79721D0063_3600","piid":"36C25526K0133","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":25678.88,"base_and_exercised_options_value":25678.88,"naics_code":339113,"set_aside":null,"recipient":{"uei":"FQV3LSJFJ637","display_name":"SUNRISE + MEDICAL (US) LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_15B40326F00000052_1540_15BFA025A00000039_1540","piid":"15B40326F00000052","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":10000.0,"base_and_exercised_options_value":10000.0,"naics_code":315990,"set_aside":"NONE","recipient":{"uei":"KHFLCLB4BW91","display_name":"Federal + Prison Industries, Inc"},"place_of_performance":{"country_code":"USA","state_code":"KY"}},{"key":"CONT_AWD_36C25726N0210_3600_36C25726A0017_3600","piid":"36C25726N0210","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":2489230.28,"base_and_exercised_options_value":2489230.28,"naics_code":621511,"set_aside":null,"recipient":{"uei":"UC5SPMUJF8V3","display_name":"QUEST + DIAGNOSTICS INCORPORATED"},"place_of_performance":{"country_code":"USA","state_code":"NJ"}},{"key":"CONT_AWD_140FS126P0072_1448_-NONE-_-NONE-","piid":"140FS126P0072","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":7504.0,"base_and_exercised_options_value":7504.0,"naics_code":532490,"set_aside":"NONE","recipient":{"uei":"KFWKL4Y3DDX1","display_name":"PETERSON + POWER SYSTEMS, INC."},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_15M10226FA4700077_1544_15F06725D0000479_1549","piid":"15M10226FA4700077","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":13340.0,"base_and_exercised_options_value":13340.0,"naics_code":315990,"set_aside":null,"recipient":{"uei":"T9NBFA5R24H2","display_name":"PREDICTIVE + BALLISTICS LLC"},"place_of_performance":{"country_code":"USA","state_code":"CA"}},{"key":"CONT_AWD_47PC5226F0161_4740_47PB0023A0008_4740","piid":"47PC5226F0161","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":105712.26,"base_and_exercised_options_value":105712.26,"naics_code":561210,"set_aside":"SBA","recipient":{"uei":"HB9HZZ9R8AX4","display_name":"ACTION + FACILITIES MANAGEMENT INC"},"place_of_performance":{"country_code":"USA","state_code":"ME"}},{"key":"CONT_AWD_11316026F0008OAS_1100_NNG15SC23B_8000","piid":"11316026F0008OAS","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":1230281.3,"base_and_exercised_options_value":235021.3,"naics_code":541519,"set_aside":"SBA","recipient":{"uei":"HMXCQJ8ADNL7","display_name":"ACCESSAGILITY + LLC"},"place_of_performance":{"country_code":"USA","state_code":"DC"}},{"key":"CONT_AWD_6973GH26P01160_6920_-NONE-_-NONE-","piid":"6973GH26P01160","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":90754.3,"base_and_exercised_options_value":90754.3,"naics_code":333612,"set_aside":"NONE","recipient":{"uei":"NR9DFQKC4EM8","display_name":"PEERLESS-WINSMITH, + INC."},"place_of_performance":{"country_code":"USA","state_code":"NY"}},{"key":"CONT_AWD_15DDHQ26F00000152_1524_47QSWA18D008F_4732","piid":"15DDHQ26F00000152","award_date":"2026-03-03","fiscal_year":2026,"total_contract_value":123642.12,"base_and_exercised_options_value":123642.12,"naics_code":511210,"set_aside":null,"recipient":{"uei":"DT8KJHZXVJH5","display_name":"CARAHSOFT + TECHNOLOGY CORP."},"place_of_performance":{"country_code":"USA","state_code":"VA"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c211a48a221-MSP + - 9d71a706fce7a1df-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:55 GMT + - Wed, 04 Mar 2026 14:43:18 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=%2B3uSxbp65XdRYAE83o1oxNBFbcyke%2BHg3wajVMxMWsUubaDLrcEK7UVUDI%2BajAGtLaCZXlr0s6%2F0Dq1HwDpXILQJO9q52eZ6BHj%2FvRkfbMJS5bHQ9tBj7iV7lw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=RT0osH2AvzkkcsSL985HU9P2Pfstw%2FNVaUZQaCYnW4hY3I%2FGfPqwL7Rj9t%2FHXEb7%2F86%2BnqcqtN1kd3Hdyg%2B3BLrEbEPOImiQU4uUKvCIRAkx02QVy4ynOgsH"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '19592' + - '19608' cross-origin-opener-policy: - same-origin referrer-policy: @@ -101,27 +99,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.212s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '987' + - '989' x-ratelimit-burst-reset: - - '57' + - '2' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998680' + - '1999754' x-ratelimit-daily-reset: - - '90' + - '84990' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '987' + - '989' x-ratelimit-reset: - - '57' + - '2' status: code: 200 message: OK diff --git a/tests/cassettes/TestEdgeCasesIntegration.test_parsing_with_minimal_shape_sparse_data b/tests/cassettes/TestEdgeCasesIntegration.test_parsing_with_minimal_shape_sparse_data index 22945ef..918d165 100644 --- a/tests/cassettes/TestEdgeCasesIntegration.test_parsing_with_minimal_shape_sparse_data +++ b/tests/cassettes/TestEdgeCasesIntegration.test_parsing_with_minimal_shape_sparse_data @@ -13,45 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=10&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ%3D%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzgwTlNTQzI2RkEwMDZfODAwMF9OTkcxNVNDNzFCXzgwMDAiXQ==","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE - CONSTRUCTION GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}},{"key":"CONT_AWD_86614625F00001_8600_86615121A00005_8600","piid":"86614625F00001","total_contract_value":1499803.54,"recipient":{"display_name":"ERNST - & YOUNG LLP"}},{"key":"CONT_AWD_80NSSC26FA013_8000_NNG15SD72B_8000","piid":"80NSSC26FA013","total_contract_value":73050.0,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA012_8000_NNG15SC77B_8000","piid":"80NSSC26FA012","total_contract_value":21711.76,"recipient":{"display_name":"GOVPLACE, - LLC"}},{"key":"CONT_AWD_80NSSC26FA009_8000_NNG15SD72B_8000","piid":"80NSSC26FA009","total_contract_value":13390.73,"recipient":{"display_name":"COLOSSAL - CONTRACTING LLC"}},{"key":"CONT_AWD_80NSSC26FA006_8000_NNG15SC71B_8000","piid":"80NSSC26FA006","total_contract_value":99974.58,"recipient":{"display_name":"FCN - INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=10&page=1&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZjMjllZTJkLTYwNWQtNWY0ZS04NjQxLWViMjcwYzliOTM0ZiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}},{"key":"CONT_AWD_15DDTR26F00000050_1524_15F06720A0001516_1549","piid":"15DDTR26F00000050","total_contract_value":4786.76,"recipient":{"display_name":"ATT + MOBILITY LLC"}},{"key":"CONT_AWD_140P5326P0007_1443_-NONE-_-NONE-","piid":"140P5326P0007","total_contract_value":22000.0,"recipient":{"display_name":"CLAIBORNE + COUNTY EMERGENCY COMMUNICATIONS"}},{"key":"CONT_AWD_HC101326FA732_9700_HC101322D0005_9700","piid":"HC101326FA732","total_contract_value":102.26,"recipient":{"display_name":"TRACE + SYSTEMS INC."}},{"key":"CONT_AWD_36C25226N0273_3600_36C25223A0024_3600","piid":"36C25226N0273","total_contract_value":53379.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_75H70926F07004_7527_75H70925D00010_7527","piid":"75H70926F07004","total_contract_value":1554054.48,"recipient":{"display_name":"CHENEGA + GOVERNMENT MISSION SOLUTIONS, LLC"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c287fc7ace8-MSP + - 9d71a7107befacf6-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:57 GMT + - Wed, 04 Mar 2026 14:43:19 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AtZxOXC8gsDnaPfsLdAzUQ2Q58stFppvk4H15T8JMeQdvgsYlhByvXtSZZvi0ohnUSdum3sb0xNGDkwAkisojipvl2WGq4jQa1gp46u%2FlMhQnMbbh02jxusKXw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=%2FtMLi%2Bo0JEKxty6D9Z4haB7EX6RAJ%2BKkMr027kVyeV2XPM9J3cDxDCLt%2FcOskE9ImVyYwTktPULiZR89WyVmHGlooqzr95AMWwd71mfM6Js%2FbPKSiRG3RPxA"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '2059' + - '2081' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.020s + - 0.041s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '982' + - '984' x-ratelimit-burst-reset: - - '56' + - '1' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998675' + - '1999749' x-ratelimit-daily-reset: - - '89' + - '84989' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '982' + - '984' x-ratelimit-reset: - - '56' + - '1' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_entity_field_types b/tests/cassettes/TestEntitiesIntegration.test_entity_field_types index 44006a8..77d6d54 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_entity_field_types +++ b/tests/cassettes/TestEntitiesIntegration.test_entity_field_types @@ -13,10 +13,17 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district + uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"dba_name\":\"\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}],\"primary_naics\":\"541620\",\"naics_codes\":[{\"code\":\"541620\",\"sba_small_business\":\"Y\"},{\"code\":\"541690\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"B503\",\"B521\"],\"email_address\":null,\"entity_url\":\"https://www.106advisorygroup.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"},\"mailing_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE PRO GLOBAL LLC\",\"dba_name\":\"\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business @@ -27,171 +34,153 @@ interactions: Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"dba_name\":\"Ryan Local Business Concierge\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"dba_name\":\"\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"primary_naics\":\"561110\",\"naics_codes\":[{\"code\":\"561110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"AF34\",\"B550\"],\"email_address\":null,\"entity_url\":\"https://www.localbusinessconcierge.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"19\"},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"dba_name\":\"ABA\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541990\",\"naics_codes\":[{\"code\":\"541990\",\"sba_small_business\":\"Y\"},{\"code\":\"611430\",\"sba_small_business\":\"Y\"},{\"code\":\"813910\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.abofamerica.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"},\"mailing_address\":{\"city\":\"HERNDON\",\"zip_code\":\"20171\",\"country_code\":\"USA\",\"address_line1\":\"13800 - COPPERMINE RD\",\"address_line2\":\"\",\"zip_code_plus4\":\"6163\",\"state_or_province_code\":\"VA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"10\"},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}],\"primary_naics\":\"561720\",\"naics_codes\":[{\"code\":\"561720\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"S201\"],\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Vine + Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"},\"mailing_address\":{\"city\":\"Vine + Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" + AccessIT Group, LLC.\",\"dba_name\":\"\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"541512\",\"naics_codes\":[{\"code\":\"541512\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.accessitgroup.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"King + of Prussia\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"2000 + Valley Forge Cir Ste 106\",\"address_line2\":\"\",\"zip_code_plus4\":\"4526\",\"state_or_province_code\":\"PA\"},\"mailing_address\":{\"city\":\"KING + OF PRUSSIA\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"20106 + VALLEY FORGE CIRCLE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1112\",\"state_or_province_code\":\"PA\"},\"congressional_district\":\"04\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":8,\"subawards_count\":7,\"awards_obligated\":39217.28,\"subawards_obligated\":558846.9},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"dba_name\":\"\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"621340\",\"naics_codes\":[{\"code\":\"621340\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":\"Contact: + HANNAH ANDREWS\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"},\"mailing_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://umanitoba.ca/st-pauls-college/mauro-institute-peace-justice\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"70 Dysart Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"mailing_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"c/o St. Paul's College\",\"address_line2\":\"70 - Dysart Road, Room 252\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" + Dysart Road, Room 252\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"congressional_district\":\"\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"dba_name\":\"CITY CHURCH\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://citync.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"GASTONIA\",\"zip_code\":\"28056\",\"country_code\":\"USA\",\"address_line1\":\"3100 CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"},\"mailing_address\":{\"city\":\"Gastonia\",\"zip_code\":\"28055\",\"country_code\":\"USA\",\"address_line1\":\"P.O. - Box 551387\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NC\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"14\"},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" + Box 551387\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NC\"},\"congressional_district\":\"14\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"dba_name\":\"1080STUDIO\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"541310\",\"naics_codes\":[{\"code\":\"541310\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.1080studio.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 - Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"12\"},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" + Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"},\"congressional_district\":\"12\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"216 + W Ohio St Ste C\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"},\"mailing_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"PO + Box 70\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"dba_name\":\"\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"NARANJITO\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"CARR + 878 KM 3.3 SECTOR LA MAYA\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"},\"mailing_address\":{\"city\":\"Naranjito\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"HC + 75 Box 1816\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"},\"congressional_district\":\"98\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" Clyde Joseph Enterprises, LLC\",\"dba_name\":\"Blastco\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"332812\",\"naics_codes\":[{\"code\":\"332811\",\"sba_small_business\":\"Y\"},{\"code\":\"332812\",\"sba_small_business\":\"Y\"},{\"code\":\"332813\",\"sba_small_business\":\"Y\"},{\"code\":\"333992\",\"sba_small_business\":\"Y\"},{\"code\":\"811310\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"4940\",\"J010\",\"J012\",\"J015\",\"J016\",\"J017\",\"J019\",\"J020\",\"J022\",\"J023\",\"J024\",\"J025\",\"J026\",\"J031\",\"J034\",\"J035\",\"J036\",\"J037\",\"J038\",\"J041\",\"J042\",\"J043\",\"J044\",\"J045\",\"J046\",\"J047\",\"J048\",\"J049\",\"J053\",\"J054\",\"J056\",\"J059\",\"J061\",\"J066\",\"J071\",\"J072\",\"J073\",\"J080\",\"J081\",\"J093\",\"J094\",\"J095\",\"K038\",\"K049\",\"L049\"],\"email_address\":null,\"entity_url\":\"https://www.blastcoinc.com/\",\"description\":\"Contact: DRAKE HILL\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"mailing_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 - Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"03\"},{\"uei\":\"SAYLQCANSYD4\",\"legal_business_name\":\" + Freymuth Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"3632\",\"state_or_province_code\":\"MO\"},\"congressional_district\":\"03\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":1,\"subawards_count\":0,\"awards_obligated\":10850.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":1,\"awards_obligated\":10850.0}}},{\"uei\":\"SAYLQCANSYD4\",\"legal_business_name\":\" Coil-Tran LLC\",\"dba_name\":\"Noratel US\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}],\"primary_naics\":\"335311\",\"naics_codes\":[{\"code\":\"334416\",\"sba_small_business\":\"N\"},{\"code\":\"335311\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.noratel.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"mailing_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 - S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"01\"},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" + S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"},\"congressional_district\":\"01\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"H3JUKU6643N7\",\"legal_business_name\":\" + Core & Main LP\",\"dba_name\":\"EASTCOM ASSOCIATES\",\"cage_code\":\"0JYE9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"423690\",\"naics_codes\":[{\"code\":\"423610\",\"sba_small_business\":\"Y\"},{\"code\":\"423690\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"6625\"],\"email_address\":null,\"entity_url\":\"https://www.eastcomassoc.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"BRANCHBURG\",\"zip_code\":\"08876\",\"country_code\":\"USA\",\"address_line1\":\"185 + INDUSTRIAL PKWY\",\"address_line2\":\"STE G\",\"zip_code_plus4\":\"3484\",\"state_or_province_code\":\"NJ\"},\"mailing_address\":{\"city\":\"BRANCHBURG\",\"zip_code\":\"08876\",\"country_code\":\"USA\",\"address_line1\":\"185 + INDUSTRIAL PKWY\",\"address_line2\":\"STE G\",\"zip_code_plus4\":\"3484\",\"state_or_province_code\":\"NJ\"},\"congressional_district\":\"07\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":18,\"subawards_count\":1,\"awards_obligated\":204077.35,\"subawards_obligated\":34738.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" Cuyuna Range Housing, Inc.\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"mailing_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 - 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"08\"},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"dba_name\":\"\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}],\"primary_naics\":\"812111\",\"naics_codes\":[{\"code\":\"812111\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"8405\"],\"email_address\":null,\"entity_url\":\"https://doethebarber23.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"},\"mailing_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"04\"},{\"uei\":\"L676QG9DC797\",\"legal_business_name\":\" - Dayna Regina Terrell\",\"dba_name\":\"Law Office of Dayna R. Terrell\",\"cage_code\":\"14UB3\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"primary_naics\":\"541110\",\"naics_codes\":[{\"code\":\"541110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Youngstown\",\"zip_code\":\"44511\",\"country_code\":\"USA\",\"address_line1\":\"933 - Ottawa Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"1418\",\"state_or_province_code\":\"OH\"},\"mailing_address\":{\"city\":\"Youngstown\",\"zip_code\":\"44511\",\"country_code\":\"USA\",\"address_line1\":\"933 - Ottawa Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"1418\",\"state_or_province_code\":\"OH\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"06\"},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" + 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"},\"congressional_district\":\"08\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"GR13H1DLN9Q7\",\"legal_business_name\":\" + DANIEL J ALTHOFF\",\"dba_name\":\"Althoff Farms\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small + Business Joint Venture\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"La + Prairie\",\"zip_code\":\"62346\",\"country_code\":\"USA\",\"address_line1\":\"2737 + E 2903rd Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"4119\",\"state_or_province_code\":\"IL\"},\"mailing_address\":{\"city\":\"La + Prairie\",\"zip_code\":\"62346\",\"country_code\":\"USA\",\"address_line1\":\"2737 + E 2903rd Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"4119\",\"state_or_province_code\":\"IL\"},\"congressional_district\":\"15\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" EVANSVILLE VANDERBURGH PUBLIC LIBRARY\",\"dba_name\":\"\",\"cage_code\":\"6DYM5\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://evpl.org/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Evansville\",\"zip_code\":\"47713\",\"country_code\":\"USA\",\"address_line1\":\"200 SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"},\"mailing_address\":{\"city\":\"EVANSVILLE\",\"zip_code\":\"47713\",\"country_code\":\"USA\",\"address_line1\":\"200 - SE MARTIN LUTHER KING JR BLVD\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":1,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"08\"},{\"uei\":\"DJJSTLWX9BL1\",\"legal_business_name\":\" - FALCONWARE LLC\",\"dba_name\":\"\",\"cage_code\":\"14HC5\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541511\",\"naics_codes\":[{\"code\":\"541511\",\"sba_small_business\":\"Y\"},{\"code\":\"541512\",\"sba_small_business\":\"Y\"},{\"code\":\"541690\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Seattle\",\"zip_code\":\"98109\",\"country_code\":\"USA\",\"address_line1\":\"130 - Boren Ave N Apt 607\",\"address_line2\":\"\",\"zip_code_plus4\":\"6309\",\"state_or_province_code\":\"WA\"},\"mailing_address\":{\"city\":\"Seattle\",\"zip_code\":\"98109\",\"country_code\":\"USA\",\"address_line1\":\"130 - Boren Ave N Apt 607\",\"address_line2\":\"\",\"zip_code_plus4\":\"6309\",\"state_or_province_code\":\"WA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"07\"},{\"uei\":\"UMTSKVL7YM15\",\"legal_business_name\":\" - FIELDREADY SOLUTIONS GROUP, LLC\",\"dba_name\":\"\",\"cage_code\":\"14Q40\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"423450\",\"naics_codes\":[{\"code\":\"339112\",\"sba_small_business\":\"Y\"},{\"code\":\"339113\",\"sba_small_business\":\"Y\"},{\"code\":\"423450\",\"sba_small_business\":\"Y\"},{\"code\":\"423490\",\"sba_small_business\":\"Y\"},{\"code\":\"423910\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"6510\",\"6515\",\"6530\",\"6532\",\"6540\",\"6545\"],\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Bel - Air\",\"zip_code\":\"21014\",\"country_code\":\"USA\",\"address_line1\":\"612 - Wendellwood Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"2832\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Bel - Air\",\"zip_code\":\"21014\",\"country_code\":\"USA\",\"address_line1\":\"612 - Wendellwood Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"2832\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"01\"},{\"uei\":\"MBQMLN5JWEL4\",\"legal_business_name\":\" - Forstrom and Torgerson HS, L.L.C.\",\"dba_name\":\"\",\"cage_code\":\"5LCN9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}],\"primary_naics\":\"721110\",\"naics_codes\":[{\"code\":\"721110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"V231\"],\"email_address\":null,\"entity_url\":\"https://www.hiltonshoreview.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Shoreview\",\"zip_code\":\"55126\",\"country_code\":\"USA\",\"address_line1\":\"1050 - Gramsie Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"2949\",\"state_or_province_code\":\"MN\"},\"mailing_address\":{\"city\":\"Willmar\",\"zip_code\":\"56201\",\"country_code\":\"USA\",\"address_line1\":\"103 - 15TH AVE NW, #200\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MN\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":2,\"subawards_count\":0,\"awards_obligated\":21789.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"04\"},{\"uei\":\"J5XPMVA3TKN9\",\"legal_business_name\":\" - Gina A Gallegos\",\"dba_name\":\"A Plus Cleaning Services\",\"cage_code\":\"16E89\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"primary_naics\":\"561720\",\"naics_codes\":[{\"code\":\"561720\",\"sba_small_business\":\"Y\"},{\"code\":\"561740\",\"sba_small_business\":\"Y\"},{\"code\":\"561790\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"S201\",\"S214\",\"S222\",\"S299\"],\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Albuquerque\",\"zip_code\":\"87110\",\"country_code\":\"USA\",\"address_line1\":\"3808 - Candelaria Rd NE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1662\",\"state_or_province_code\":\"NM\"},\"mailing_address\":{\"city\":\"Albuquerque\",\"zip_code\":\"87110\",\"country_code\":\"USA\",\"address_line1\":\"3808 - Candelaria Rd NE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1662\",\"state_or_province_code\":\"NM\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"01\"},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" + SE MARTIN LUTHER KING JR BLVD\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"},\"congressional_district\":\"08\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":1,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"G3THW1KVNFC5\",\"legal_business_name\":\" + Evangelical Environmental Network\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://creationcare.org/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Woodbury\",\"zip_code\":\"55129\",\"country_code\":\"USA\",\"address_line1\":\"4247 + Arbor Bay\",\"address_line2\":\"\",\"zip_code_plus4\":\"4420\",\"state_or_province_code\":\"MN\"},\"mailing_address\":{\"city\":\"Woodbury\",\"zip_code\":\"55125\",\"country_code\":\"USA\",\"address_line1\":\"7595 + Currell Blvd\",\"address_line2\":\"PO Box 25937\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MN\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" Governors Workforce Development Board\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://viwdb.vi.gov/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Christiansted\",\"zip_code\":\"00820\",\"country_code\":\"USA\",\"address_line1\":\"4401 Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"},\"mailing_address\":{\"city\":\"Christiansted\",\"zip_code\":\"00820\",\"country_code\":\"USA\",\"address_line1\":\"4401 - Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"98\"},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" + Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"},\"congressional_district\":\"98\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"L1BFQ1UEC4N5\",\"legal_business_name\":\" + INFINITE VARIATIONS ENGINEERING LLC\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Roslindale\",\"zip_code\":\"02131\",\"country_code\":\"USA\",\"address_line1\":\"120 + Metropolitan Ave\",\"address_line2\":\"\",\"zip_code_plus4\":\"4208\",\"state_or_province_code\":\"MA\"},\"mailing_address\":{\"city\":\"Roslindale\",\"zip_code\":\"02131\",\"country_code\":\"USA\",\"address_line1\":\"120 + Metropolitan Ave\",\"address_line2\":\"\",\"zip_code_plus4\":\"4208\",\"state_or_province_code\":\"MA\"},\"congressional_district\":\"07\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"S5PBXFCDUA53\",\"legal_business_name\":\" + IRISH TRADE SERVICES, LLC\",\"dba_name\":\"\",\"cage_code\":\"198A7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"}],\"primary_naics\":\"238210\",\"naics_codes\":[{\"code\":\"238210\",\"sba_small_business\":\"Y\"},{\"code\":\"238990\",\"sba_small_business\":\"E\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":\"Contact: + DARRAGH MADDEN\",\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"New + York\",\"zip_code\":\"10022\",\"country_code\":\"USA\",\"address_line1\":\"400 + Park Ave Fl 17\",\"address_line2\":\"\",\"zip_code_plus4\":\"9494\",\"state_or_province_code\":\"NY\"},\"mailing_address\":{\"city\":\"New + York\",\"zip_code\":\"10022\",\"country_code\":\"USA\",\"address_line1\":\"400 + Park Ave Fl 17\",\"address_line2\":\"\",\"zip_code_plus4\":\"9494\",\"state_or_province_code\":\"NY\"},\"congressional_district\":\"12\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" Inner Armor, LLC\",\"dba_name\":\"\",\"cage_code\":\"15GH4\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"525120\",\"naics_codes\":[{\"code\":\"525120\",\"sba_small_business\":\"Y\"},{\"code\":\"541714\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"AN11\",\"Q519\"],\"email_address\":null,\"entity_url\":\"https://www.forgeinnerarmor.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"GRANDVILLE\",\"zip_code\":\"49418\",\"country_code\":\"USA\",\"address_line1\":\"3747 40TH ST SW\",\"address_line2\":\"\",\"zip_code_plus4\":\"3132\",\"state_or_province_code\":\"MI\"},\"mailing_address\":{\"city\":\"Holland\",\"zip_code\":\"49423\",\"country_code\":\"USA\",\"address_line1\":\"240 - E 8th St.\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MI\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" + E 8th St.\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MI\"},\"congressional_district\":\"02\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" JAYRON RATEN CLEMENTE\",\"dba_name\":\"Teufel Hunden Transport\",\"cage_code\":\"SSXS7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"485999\",\"naics_codes\":[{\"code\":\"485999\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"ZARAGOZA\",\"zip_code\":\"\",\"country_code\":\"PHL\",\"address_line1\":\"430 MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"mailing_address\":{\"city\":\"ZARAGOZA\",\"zip_code\":\"\",\"country_code\":\"PHL\",\"address_line1\":\"430 - MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" + MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"congressional_district\":\"\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"P668GUDLTFH6\",\"legal_business_name\":\" + KVG LLC\",\"dba_name\":\"\",\"cage_code\":\"16YE6\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"QF\",\"description\":\"Service + Disabled Veteran Owned Business\"}],\"primary_naics\":\"541614\",\"naics_codes\":[{\"code\":\"541614\",\"sba_small_business\":\"N\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Elizabethtown\",\"zip_code\":\"17022\",\"country_code\":\"USA\",\"address_line1\":\"112 + S Market St\",\"address_line2\":\"\",\"zip_code_plus4\":\"2309\",\"state_or_province_code\":\"PA\"},\"mailing_address\":{\"city\":\"Gettysburg\",\"zip_code\":\"17325\",\"country_code\":\"USA\",\"address_line1\":\"180 + Redding Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PA\"},\"congressional_district\":\"11\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"KANMQ8XK2K84\",\"legal_business_name\":\" + LUKE JOHNSON\",\"dba_name\":\"LJ's Wildfire and Trucking Services\",\"cage_code\":\"18TP9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"115310\",\"naics_codes\":[{\"code\":\"115310\",\"sba_small_business\":\"E\"}],\"psc_codes\":[\"4210\"],\"email_address\":null,\"entity_url\":null,\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Rice\",\"zip_code\":\"99167\",\"country_code\":\"USA\",\"address_line1\":\"2621 + Scott Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9716\",\"state_or_province_code\":\"WA\"},\"mailing_address\":{\"city\":\"Rice\",\"zip_code\":\"99167\",\"country_code\":\"USA\",\"address_line1\":\"2621 + Scott Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9716\",\"state_or_province_code\":\"WA\"},\"congressional_district\":\"05\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" MAX BIROU PROIECTARE SRL\",\"dba_name\":\"\",\"cage_code\":\"1JLAL\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"236210\",\"naics_codes\":[{\"code\":\"236116\",\"sba_small_business\":\"N\"},{\"code\":\"236210\",\"sba_small_business\":\"N\"},{\"code\":\"236220\",\"sba_small_business\":\"N\"},{\"code\":\"237130\",\"sba_small_business\":\"N\"},{\"code\":\"237990\",\"sba_small_business\":\"E\"},{\"code\":\"238910\",\"sba_small_business\":\"N\"}],\"psc_codes\":[\"C1AA\",\"C1AB\",\"C1BE\",\"C1CA\",\"C1FA\"],\"email_address\":null,\"entity_url\":\"https://www.maxprojekt.ro/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Iasi\",\"zip_code\":\"\",\"country_code\":\"ROU\",\"address_line1\":\"IASI COUNTRY, IASI MUNICIPALITY, NO 16-18-20 MELODIEI STREET, BUILDING NO 1, 2 ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"mailing_address\":{\"city\":\"Iasi\",\"zip_code\":\"\",\"country_code\":\"ROU\",\"address_line1\":\"IASI COUNTRY, IASI MUNICIPALITY, NO 16-18-20 MELODIEI STREET, BUILDING NO 1, 2 - ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"GU1BXWKZBTK8\",\"legal_business_name\":\" - NM Consulting LLC\",\"dba_name\":\"\",\"cage_code\":\"14UU1\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"OY\",\"description\":\"Black - American Owned\"}],\"primary_naics\":\"541611\",\"naics_codes\":[{\"code\":\"541611\",\"sba_small_business\":\"Y\"},{\"code\":\"541612\",\"sba_small_business\":\"Y\"},{\"code\":\"541613\",\"sba_small_business\":\"Y\"},{\"code\":\"541618\",\"sba_small_business\":\"Y\"},{\"code\":\"541720\",\"sba_small_business\":\"Y\"},{\"code\":\"561110\",\"sba_small_business\":\"Y\"},{\"code\":\"561410\",\"sba_small_business\":\"Y\"},{\"code\":\"561499\",\"sba_small_business\":\"Y\"},{\"code\":\"611430\",\"sba_small_business\":\"Y\"},{\"code\":\"611710\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"R408\",\"R410\",\"R499\",\"R699\",\"R701\",\"R707\",\"R799\",\"U004\",\"U006\",\"U008\"],\"email_address\":null,\"entity_url\":\"https://www.nmcstrategies.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Omaha\",\"zip_code\":\"68112\",\"country_code\":\"USA\",\"address_line1\":\"3011 - Whitmore St\",\"address_line2\":\"\",\"zip_code_plus4\":\"3149\",\"state_or_province_code\":\"NE\"},\"mailing_address\":{\"city\":\"Omaha\",\"zip_code\":\"68154\",\"country_code\":\"USA\",\"address_line1\":\"12020 - Shamrock Plz, Ste 201\",\"address_line2\":\"PMB576371\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NE\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"W7VVRWFNCXJ7\",\"legal_business_name\":\" - OSPRE Solutions Inc.\",\"dba_name\":\"\",\"cage_code\":\"16L02\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran - Owned Business\"}],\"primary_naics\":\"541512\",\"naics_codes\":[{\"code\":\"541512\",\"sba_small_business\":\"Y\"},{\"code\":\"541519\",\"sba_small_business\":\"E\"}],\"psc_codes\":[\"7A20\",\"DA10\"],\"email_address\":null,\"entity_url\":\"https://ospresolutions.org/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Sykesville\",\"zip_code\":\"21784\",\"country_code\":\"USA\",\"address_line1\":\"670 - River Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"5503\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Sykesville\",\"zip_code\":\"21784\",\"country_code\":\"USA\",\"address_line1\":\"670 - River Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"5503\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"03\"},{\"uei\":\"TLZFY6CQ9KK4\",\"legal_business_name\":\" - Ophthalmic Therapeutic Innovation LLC\",\"dba_name\":\"\",\"cage_code\":\"8RZ63\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small - Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541714\",\"naics_codes\":[{\"code\":\"541713\",\"sba_small_business\":\"Y\"},{\"code\":\"541714\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"6505\",\"Q511\"],\"email_address\":null,\"entity_url\":\"https://ophthalmic-innovation.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"PEABODY\",\"zip_code\":\"01960\",\"country_code\":\"USA\",\"address_line1\":\"20 - KEYES DR APT 10\",\"address_line2\":\"\",\"zip_code_plus4\":\"8024\",\"state_or_province_code\":\"MA\"},\"mailing_address\":{\"city\":\"Peabody - \",\"zip_code\":\"01960\",\"country_code\":\"USA\",\"address_line1\":\"20 - Keyes Dr Apt 10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"06\"},{\"uei\":\"YEVYSM49LK67\",\"legal_business_name\":\" - PK Oxford Square Limited Partnership\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Okemos\",\"zip_code\":\"48864\",\"country_code\":\"USA\",\"address_line1\":\"1784 - Hamilton Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1811\",\"state_or_province_code\":\"MI\"},\"mailing_address\":{\"city\":\"Okemos\",\"zip_code\":\"48864\",\"country_code\":\"USA\",\"address_line1\":\"1784 - Hamilton Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1811\",\"state_or_province_code\":\"MI\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"07\"},{\"uei\":\"LFCHPU28HMA5\",\"legal_business_name\":\" - RECLAMATION DISTRICT 2025\",\"dba_name\":\"\",\"cage_code\":\"6HQ97\",\"business_types\":[{\"code\":\"2F\",\"description\":\"U.S. - State Government\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://hollandtract.org/holland_main/home\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Stockton\",\"zip_code\":\"95202\",\"country_code\":\"USA\",\"address_line1\":\"343 - E Main St Ste 715\",\"address_line2\":\"\",\"zip_code_plus4\":\"2977\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Stockton\",\"zip_code\":\"95202\",\"country_code\":\"USA\",\"address_line1\":\"343 - E Main St Ste 715\",\"address_line2\":\"\",\"zip_code_plus4\":\"2977\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"09\"}]}" + ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"},\"congressional_district\":\"\",\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}}}]}" headers: CF-RAY: - - 99f88c756c9cad23-MSP + - 9d71a72feb24acfa-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:09 GMT + - Wed, 04 Mar 2026 14:43:24 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=b2kO6Iwf6Gp9UGYBf8ShGtIRLep%2F7g7eLKTkz760QbU%2Bzw5oxQpcb5iDtgRd94TxZeAaZcbb%2FI5DlslENvMw%2FvZkL44XGlR%2FzY8Ua2beWYsS7WOmHlT10o%2Fiqw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=wDT2vDAZLHpetIbcW4kDoXgB8sDe4zw%2F1hoS1SuyOvaXmDrWSgWSlr6Hht%2BqPc8GESGSXVOFFSdnlJfvorOL4okLK8KHiuYGMDoyqgrlghugUgqLoWCYnBD7"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '32823' + - '30227' cross-origin-opener-policy: - same-origin referrer-policy: @@ -201,27 +190,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.055s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '960' + - '967' x-ratelimit-burst-reset: - - '44' + - '24' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998653' + - '1999727' x-ratelimit-daily-reset: - - '76' + - '84984' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '960' + - '967' x-ratelimit-reset: - - '44' + - '24' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_entity_location_parsing b/tests/cassettes/TestEntitiesIntegration.test_entity_location_parsing index 2abda7b..9162f09 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_entity_location_parsing +++ b/tests/cassettes/TestEntitiesIntegration.test_entity_location_parsing @@ -16,7 +16,13 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}],\"physical_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"}},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business @@ -24,20 +30,24 @@ interactions: Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}],\"physical_address\":{\"city\":\"Vine Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"}},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" + AccessIT Group, LLC.\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"King + of Prussia\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"2000 + Valley Forge Cir Ste 106\",\"address_line2\":\"\",\"zip_code_plus4\":\"4526\",\"state_or_province_code\":\"PA\"}},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business @@ -48,7 +58,13 @@ interactions: CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"}},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 - Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" + Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}],\"physical_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"216 + W Ohio St Ste C\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"}},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"NARANJITO\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"CARR + 878 KM 3.3 SECTOR LA MAYA\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" Clyde Joseph Enterprises, LLC\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 @@ -56,110 +72,76 @@ interactions: Coil-Tran LLC\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}],\"physical_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 - S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" + S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"H3JUKU6643N7\",\"legal_business_name\":\" + Core & Main LP\",\"cage_code\":\"0JYE9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"BRANCHBURG\",\"zip_code\":\"08876\",\"country_code\":\"USA\",\"address_line1\":\"185 + INDUSTRIAL PKWY\",\"address_line2\":\"STE G\",\"zip_code_plus4\":\"3484\",\"state_or_province_code\":\"NJ\"}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" Cuyuna Range Housing, Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 - 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"}},{\"uei\":\"L676QG9DC797\",\"legal_business_name\":\" - Dayna Regina Terrell\",\"cage_code\":\"14UB3\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"physical_address\":{\"city\":\"Youngstown\",\"zip_code\":\"44511\",\"country_code\":\"USA\",\"address_line1\":\"933 - Ottawa Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"1418\",\"state_or_province_code\":\"OH\"}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" + 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"GR13H1DLN9Q7\",\"legal_business_name\":\" + DANIEL J ALTHOFF\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small + Business Joint Venture\"}],\"physical_address\":{\"city\":\"La Prairie\",\"zip_code\":\"62346\",\"country_code\":\"USA\",\"address_line1\":\"2737 + E 2903rd Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"4119\",\"state_or_province_code\":\"IL\"}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" EVANSVILLE VANDERBURGH PUBLIC LIBRARY\",\"cage_code\":\"6DYM5\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}],\"physical_address\":{\"city\":\"Evansville\",\"zip_code\":\"47713\",\"country_code\":\"USA\",\"address_line1\":\"200 - SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"DJJSTLWX9BL1\",\"legal_business_name\":\" - FALCONWARE LLC\",\"cage_code\":\"14HC5\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Seattle\",\"zip_code\":\"98109\",\"country_code\":\"USA\",\"address_line1\":\"130 - Boren Ave N Apt 607\",\"address_line2\":\"\",\"zip_code_plus4\":\"6309\",\"state_or_province_code\":\"WA\"}},{\"uei\":\"UMTSKVL7YM15\",\"legal_business_name\":\" - FIELDREADY SOLUTIONS GROUP, LLC\",\"cage_code\":\"14Q40\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Bel - Air\",\"zip_code\":\"21014\",\"country_code\":\"USA\",\"address_line1\":\"612 - Wendellwood Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"2832\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"MBQMLN5JWEL4\",\"legal_business_name\":\" - Forstrom and Torgerson HS, L.L.C.\",\"cage_code\":\"5LCN9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}],\"physical_address\":{\"city\":\"Shoreview\",\"zip_code\":\"55126\",\"country_code\":\"USA\",\"address_line1\":\"1050 - Gramsie Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"2949\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"J5XPMVA3TKN9\",\"legal_business_name\":\" - Gina A Gallegos\",\"cage_code\":\"16E89\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"physical_address\":{\"city\":\"Albuquerque\",\"zip_code\":\"87110\",\"country_code\":\"USA\",\"address_line1\":\"3808 - Candelaria Rd NE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1662\",\"state_or_province_code\":\"NM\"}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" + SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"G3THW1KVNFC5\",\"legal_business_name\":\" + Evangelical Environmental Network\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Woodbury\",\"zip_code\":\"55129\",\"country_code\":\"USA\",\"address_line1\":\"4247 + Arbor Bay\",\"address_line2\":\"\",\"zip_code_plus4\":\"4420\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" Governors Workforce Development Board\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"}],\"physical_address\":{\"city\":\"Christiansted\",\"zip_code\":\"00820\",\"country_code\":\"USA\",\"address_line1\":\"4401 - Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" + Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"}},{\"uei\":\"L1BFQ1UEC4N5\",\"legal_business_name\":\" + INFINITE VARIATIONS ENGINEERING LLC\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Roslindale\",\"zip_code\":\"02131\",\"country_code\":\"USA\",\"address_line1\":\"120 + Metropolitan Ave\",\"address_line2\":\"\",\"zip_code_plus4\":\"4208\",\"state_or_province_code\":\"MA\"}},{\"uei\":\"S5PBXFCDUA53\",\"legal_business_name\":\" + IRISH TRADE SERVICES, LLC\",\"cage_code\":\"198A7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"}],\"physical_address\":{\"city\":\"New York\",\"zip_code\":\"10022\",\"country_code\":\"USA\",\"address_line1\":\"400 + Park Ave Fl 17\",\"address_line2\":\"\",\"zip_code_plus4\":\"9494\",\"state_or_province_code\":\"NY\"}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" Inner Armor, LLC\",\"cage_code\":\"15GH4\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"GRANDVILLE\",\"zip_code\":\"49418\",\"country_code\":\"USA\",\"address_line1\":\"3747 40TH ST SW\",\"address_line2\":\"\",\"zip_code_plus4\":\"3132\",\"state_or_province_code\":\"MI\"}},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" JAYRON RATEN CLEMENTE\",\"cage_code\":\"SSXS7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"ZARAGOZA\",\"zip_code\":\"\",\"country_code\":\"PHL\",\"address_line1\":\"430 - MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" + MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"P668GUDLTFH6\",\"legal_business_name\":\" + KVG LLC\",\"cage_code\":\"16YE6\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"QF\",\"description\":\"Service + Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Elizabethtown\",\"zip_code\":\"17022\",\"country_code\":\"USA\",\"address_line1\":\"112 + S Market St\",\"address_line2\":\"\",\"zip_code_plus4\":\"2309\",\"state_or_province_code\":\"PA\"}},{\"uei\":\"KANMQ8XK2K84\",\"legal_business_name\":\" + LUKE JOHNSON\",\"cage_code\":\"18TP9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Rice\",\"zip_code\":\"99167\",\"country_code\":\"USA\",\"address_line1\":\"2621 + Scott Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9716\",\"state_or_province_code\":\"WA\"}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" MAX BIROU PROIECTARE SRL\",\"cage_code\":\"1JLAL\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Iasi\",\"zip_code\":\"\",\"country_code\":\"ROU\",\"address_line1\":\"IASI COUNTRY, IASI MUNICIPALITY, NO 16-18-20 MELODIEI STREET, BUILDING NO 1, 2 - ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"GU1BXWKZBTK8\",\"legal_business_name\":\" - NM Consulting LLC\",\"cage_code\":\"14UU1\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"OY\",\"description\":\"Black - American Owned\"}],\"physical_address\":{\"city\":\"Omaha\",\"zip_code\":\"68112\",\"country_code\":\"USA\",\"address_line1\":\"3011 - Whitmore St\",\"address_line2\":\"\",\"zip_code_plus4\":\"3149\",\"state_or_province_code\":\"NE\"}},{\"uei\":\"W7VVRWFNCXJ7\",\"legal_business_name\":\" - OSPRE Solutions Inc.\",\"cage_code\":\"16L02\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran - Owned Business\"}],\"physical_address\":{\"city\":\"Sykesville\",\"zip_code\":\"21784\",\"country_code\":\"USA\",\"address_line1\":\"670 - River Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"5503\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"TLZFY6CQ9KK4\",\"legal_business_name\":\" - Ophthalmic Therapeutic Innovation LLC\",\"cage_code\":\"8RZ63\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small - Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"PEABODY\",\"zip_code\":\"01960\",\"country_code\":\"USA\",\"address_line1\":\"20 - KEYES DR APT 10\",\"address_line2\":\"\",\"zip_code_plus4\":\"8024\",\"state_or_province_code\":\"MA\"}},{\"uei\":\"YEVYSM49LK67\",\"legal_business_name\":\" - PK Oxford Square Limited Partnership\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Okemos\",\"zip_code\":\"48864\",\"country_code\":\"USA\",\"address_line1\":\"1784 - Hamilton Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1811\",\"state_or_province_code\":\"MI\"}},{\"uei\":\"LFCHPU28HMA5\",\"legal_business_name\":\" - RECLAMATION DISTRICT 2025\",\"cage_code\":\"6HQ97\",\"business_types\":[{\"code\":\"2F\",\"description\":\"U.S. - State Government\"}],\"physical_address\":{\"city\":\"Stockton\",\"zip_code\":\"95202\",\"country_code\":\"USA\",\"address_line1\":\"343 - E Main St Ste 715\",\"address_line2\":\"\",\"zip_code_plus4\":\"2977\",\"state_or_province_code\":\"CA\"}}]}" + ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}}]}" headers: CF-RAY: - - 99f88c7878b9a200-MSP + - 9d71a732ed46a22a-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:09 GMT + - Wed, 04 Mar 2026 14:43:25 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3pdxm2LhiQj8mpijheqWZlB3qwyOLych0jtElbvfRrul5XFQIz%2FWFbDLvEZMwFpRda54Qgxuou28YyLO9TTVl6QGstSxbUiW4ZQ401RrAJO8gPSuA1B9VO0uXw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=dJNLTsB4L6woucVcpSDYzwDYbQ8Yh5rgHdF8RvNDR1QjDcikGbw9ErKPq0ItV%2BSKnwAFW3aADHcaTV6zJieGcmvrKJZNvqvsx6yR9I9DxOSh5GeSnPZrhJaw"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '13657' + - '12209' cross-origin-opener-policy: - same-origin referrer-policy: @@ -169,27 +151,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.031s + - 0.017s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '958' + - '965' x-ratelimit-burst-reset: - - '43' + - '23' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998651' + - '1999725' x-ratelimit-daily-reset: - - '76' + - '84983' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '958' + - '965' x-ratelimit-reset: - - '43' + - '23' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_entity_parsing_with_business_types b/tests/cassettes/TestEntitiesIntegration.test_entity_parsing_with_business_types index 7ac0e5f..3932a27 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_entity_parsing_with_business_types +++ b/tests/cassettes/TestEntitiesIntegration.test_entity_parsing_with_business_types @@ -16,7 +16,13 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}],\"physical_address\":{\"city\":\"Springfield\",\"zip_code\":\"72157\",\"country_code\":\"USA\",\"address_line1\":\"32 + Reville Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9515\",\"state_or_province_code\":\"AR\"}},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business @@ -24,20 +30,24 @@ interactions: Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}],\"physical_address\":{\"city\":\"Vine Grove\",\"zip_code\":\"40175\",\"country_code\":\"USA\",\"address_line1\":\"65 + Shacklette Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"1081\",\"state_or_province_code\":\"KY\"}},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" + AccessIT Group, LLC.\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"King + of Prussia\",\"zip_code\":\"19406\",\"country_code\":\"USA\",\"address_line1\":\"2000 + Valley Forge Cir Ste 106\",\"address_line2\":\"\",\"zip_code_plus4\":\"4526\",\"state_or_province_code\":\"PA\"}},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Poteau\",\"zip_code\":\"74953\",\"country_code\":\"USA\",\"address_line1\":\"22680 + Cabot Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"7825\",\"state_or_province_code\":\"OK\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business @@ -48,7 +58,13 @@ interactions: CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"}},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Berkeley\",\"zip_code\":\"94710\",\"country_code\":\"USA\",\"address_line1\":\"1080 - Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" + Delaware St Unit 415\",\"address_line2\":\"\",\"zip_code_plus4\":\"2183\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}],\"physical_address\":{\"city\":\"Morgantown\",\"zip_code\":\"42261\",\"country_code\":\"USA\",\"address_line1\":\"216 + W Ohio St Ste C\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"KY\"}},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"NARANJITO\",\"zip_code\":\"00719\",\"country_code\":\"USA\",\"address_line1\":\"CARR + 878 KM 3.3 SECTOR LA MAYA\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"PR\"}},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" Clyde Joseph Enterprises, LLC\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Wentzville\",\"zip_code\":\"63385\",\"country_code\":\"USA\",\"address_line1\":\"131 @@ -56,110 +72,76 @@ interactions: Coil-Tran LLC\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}],\"physical_address\":{\"city\":\"HOBART\",\"zip_code\":\"46342\",\"country_code\":\"USA\",\"address_line1\":\"160 - S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" + S ILLINOIS ST\",\"address_line2\":\"\",\"zip_code_plus4\":\"4512\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"H3JUKU6643N7\",\"legal_business_name\":\" + Core & Main LP\",\"cage_code\":\"0JYE9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"BRANCHBURG\",\"zip_code\":\"08876\",\"country_code\":\"USA\",\"address_line1\":\"185 + INDUSTRIAL PKWY\",\"address_line2\":\"STE G\",\"zip_code_plus4\":\"3484\",\"state_or_province_code\":\"NJ\"}},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" Cuyuna Range Housing, Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Ironton\",\"zip_code\":\"56455\",\"country_code\":\"USA\",\"address_line1\":\"500 - 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Wichita\",\"zip_code\":\"67214\",\"country_code\":\"USA\",\"address_line1\":\"140 - N Hillside St # 5\",\"address_line2\":\"\",\"zip_code_plus4\":\"4919\",\"state_or_province_code\":\"KS\"}},{\"uei\":\"L676QG9DC797\",\"legal_business_name\":\" - Dayna Regina Terrell\",\"cage_code\":\"14UB3\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"physical_address\":{\"city\":\"Youngstown\",\"zip_code\":\"44511\",\"country_code\":\"USA\",\"address_line1\":\"933 - Ottawa Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"1418\",\"state_or_province_code\":\"OH\"}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" + 8th Ave Ofc 214\",\"address_line2\":\"\",\"zip_code_plus4\":\"9701\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"GR13H1DLN9Q7\",\"legal_business_name\":\" + DANIEL J ALTHOFF\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small + Business Joint Venture\"}],\"physical_address\":{\"city\":\"La Prairie\",\"zip_code\":\"62346\",\"country_code\":\"USA\",\"address_line1\":\"2737 + E 2903rd Ln\",\"address_line2\":\"\",\"zip_code_plus4\":\"4119\",\"state_or_province_code\":\"IL\"}},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" EVANSVILLE VANDERBURGH PUBLIC LIBRARY\",\"cage_code\":\"6DYM5\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}],\"physical_address\":{\"city\":\"Evansville\",\"zip_code\":\"47713\",\"country_code\":\"USA\",\"address_line1\":\"200 - SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"DJJSTLWX9BL1\",\"legal_business_name\":\" - FALCONWARE LLC\",\"cage_code\":\"14HC5\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Seattle\",\"zip_code\":\"98109\",\"country_code\":\"USA\",\"address_line1\":\"130 - Boren Ave N Apt 607\",\"address_line2\":\"\",\"zip_code_plus4\":\"6309\",\"state_or_province_code\":\"WA\"}},{\"uei\":\"UMTSKVL7YM15\",\"legal_business_name\":\" - FIELDREADY SOLUTIONS GROUP, LLC\",\"cage_code\":\"14Q40\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Bel - Air\",\"zip_code\":\"21014\",\"country_code\":\"USA\",\"address_line1\":\"612 - Wendellwood Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"2832\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"MBQMLN5JWEL4\",\"legal_business_name\":\" - Forstrom and Torgerson HS, L.L.C.\",\"cage_code\":\"5LCN9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}],\"physical_address\":{\"city\":\"Shoreview\",\"zip_code\":\"55126\",\"country_code\":\"USA\",\"address_line1\":\"1050 - Gramsie Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"2949\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"J5XPMVA3TKN9\",\"legal_business_name\":\" - Gina A Gallegos\",\"cage_code\":\"16E89\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}],\"physical_address\":{\"city\":\"Albuquerque\",\"zip_code\":\"87110\",\"country_code\":\"USA\",\"address_line1\":\"3808 - Candelaria Rd NE\",\"address_line2\":\"\",\"zip_code_plus4\":\"1662\",\"state_or_province_code\":\"NM\"}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" + SE Martin Luther King Jr Blvd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1802\",\"state_or_province_code\":\"IN\"}},{\"uei\":\"G3THW1KVNFC5\",\"legal_business_name\":\" + Evangelical Environmental Network\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Woodbury\",\"zip_code\":\"55129\",\"country_code\":\"USA\",\"address_line1\":\"4247 + Arbor Bay\",\"address_line2\":\"\",\"zip_code_plus4\":\"4420\",\"state_or_province_code\":\"MN\"}},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" Governors Workforce Development Board\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. Local Government\"}],\"physical_address\":{\"city\":\"Christiansted\",\"zip_code\":\"00820\",\"country_code\":\"USA\",\"address_line1\":\"4401 - Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" + Sion Farm\",\"address_line2\":\"\",\"zip_code_plus4\":\"4245\",\"state_or_province_code\":\"VI\"}},{\"uei\":\"L1BFQ1UEC4N5\",\"legal_business_name\":\" + INFINITE VARIATIONS ENGINEERING LLC\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Roslindale\",\"zip_code\":\"02131\",\"country_code\":\"USA\",\"address_line1\":\"120 + Metropolitan Ave\",\"address_line2\":\"\",\"zip_code_plus4\":\"4208\",\"state_or_province_code\":\"MA\"}},{\"uei\":\"S5PBXFCDUA53\",\"legal_business_name\":\" + IRISH TRADE SERVICES, LLC\",\"cage_code\":\"198A7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"}],\"physical_address\":{\"city\":\"New York\",\"zip_code\":\"10022\",\"country_code\":\"USA\",\"address_line1\":\"400 + Park Ave Fl 17\",\"address_line2\":\"\",\"zip_code_plus4\":\"9494\",\"state_or_province_code\":\"NY\"}},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" Inner Armor, LLC\",\"cage_code\":\"15GH4\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"GRANDVILLE\",\"zip_code\":\"49418\",\"country_code\":\"USA\",\"address_line1\":\"3747 40TH ST SW\",\"address_line2\":\"\",\"zip_code_plus4\":\"3132\",\"state_or_province_code\":\"MI\"}},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" JAYRON RATEN CLEMENTE\",\"cage_code\":\"SSXS7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"ZARAGOZA\",\"zip_code\":\"\",\"country_code\":\"PHL\",\"address_line1\":\"430 - MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" + MADRE PALLA 1ST DISTRICT, DEL PILAR\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"P668GUDLTFH6\",\"legal_business_name\":\" + KVG LLC\",\"cage_code\":\"16YE6\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"QF\",\"description\":\"Service + Disabled Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Elizabethtown\",\"zip_code\":\"17022\",\"country_code\":\"USA\",\"address_line1\":\"112 + S Market St\",\"address_line2\":\"\",\"zip_code_plus4\":\"2309\",\"state_or_province_code\":\"PA\"}},{\"uei\":\"KANMQ8XK2K84\",\"legal_business_name\":\" + LUKE JOHNSON\",\"cage_code\":\"18TP9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Rice\",\"zip_code\":\"99167\",\"country_code\":\"USA\",\"address_line1\":\"2621 + Scott Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"9716\",\"state_or_province_code\":\"WA\"}},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" MAX BIROU PROIECTARE SRL\",\"cage_code\":\"1JLAL\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Iasi\",\"zip_code\":\"\",\"country_code\":\"ROU\",\"address_line1\":\"IASI COUNTRY, IASI MUNICIPALITY, NO 16-18-20 MELODIEI STREET, BUILDING NO 1, 2 - ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}},{\"uei\":\"GU1BXWKZBTK8\",\"legal_business_name\":\" - NM Consulting LLC\",\"cage_code\":\"14UU1\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"OY\",\"description\":\"Black - American Owned\"}],\"physical_address\":{\"city\":\"Omaha\",\"zip_code\":\"68112\",\"country_code\":\"USA\",\"address_line1\":\"3011 - Whitmore St\",\"address_line2\":\"\",\"zip_code_plus4\":\"3149\",\"state_or_province_code\":\"NE\"}},{\"uei\":\"W7VVRWFNCXJ7\",\"legal_business_name\":\" - OSPRE Solutions Inc.\",\"cage_code\":\"16L02\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran - Owned Business\"}],\"physical_address\":{\"city\":\"Sykesville\",\"zip_code\":\"21784\",\"country_code\":\"USA\",\"address_line1\":\"670 - River Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"5503\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"TLZFY6CQ9KK4\",\"legal_business_name\":\" - Ophthalmic Therapeutic Innovation LLC\",\"cage_code\":\"8RZ63\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small - Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"PEABODY\",\"zip_code\":\"01960\",\"country_code\":\"USA\",\"address_line1\":\"20 - KEYES DR APT 10\",\"address_line2\":\"\",\"zip_code_plus4\":\"8024\",\"state_or_province_code\":\"MA\"}},{\"uei\":\"YEVYSM49LK67\",\"legal_business_name\":\" - PK Oxford Square Limited Partnership\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"Okemos\",\"zip_code\":\"48864\",\"country_code\":\"USA\",\"address_line1\":\"1784 - Hamilton Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1811\",\"state_or_province_code\":\"MI\"}},{\"uei\":\"LFCHPU28HMA5\",\"legal_business_name\":\" - RECLAMATION DISTRICT 2025\",\"cage_code\":\"6HQ97\",\"business_types\":[{\"code\":\"2F\",\"description\":\"U.S. - State Government\"}],\"physical_address\":{\"city\":\"Stockton\",\"zip_code\":\"95202\",\"country_code\":\"USA\",\"address_line1\":\"343 - E Main St Ste 715\",\"address_line2\":\"\",\"zip_code_plus4\":\"2977\",\"state_or_province_code\":\"CA\"}}]}" + ND FLOOR, APT.10\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"\"}}]}" headers: CF-RAY: - - 99f88c77095ba22d-MSP + - 9d71a7311d84a20c-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:09 GMT + - Wed, 04 Mar 2026 14:43:25 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=4da2sXNBy5Bk1x9IEzOajg%2B%2Bp%2Frd3V6j3xoKbc%2B6A%2F5qlZHfAnx6ag%2Bs1crSyPNG7%2BdbZ%2Bq3KxV4qH7RbEsUFpw27ldCSjSyh93SMxFh9IsHPfVvyvhl9N0sUA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=oLNwvE8r%2F8LhYh1oFILrAiM8DFSWtva%2B6meyGG4r3hacHmLfYAROlsHYmAPWB4U5X7cRdu8pGFl23IPvB4KeE8ZMCDzDObuZ%2FOYgFrG1NAKAx0SHTXfM0Dmg"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '13657' + - '12209' cross-origin-opener-policy: - same-origin referrer-policy: @@ -169,27 +151,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.032s + - 0.024s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '959' + - '966' x-ratelimit-burst-reset: - - '43' + - '23' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998652' + - '1999726' x-ratelimit-daily-reset: - - '76' + - '84984' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '959' + - '966' x-ratelimit-reset: - - '43' + - '23' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_entity_with_various_identifiers b/tests/cassettes/TestEntitiesIntegration.test_entity_with_various_identifiers index a11a569..dbf34e9 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_entity_with_various_identifiers +++ b/tests/cassettes/TestEntitiesIntegration.test_entity_with_various_identifiers @@ -16,25 +16,32 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}]},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE + PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small Business Joint Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled - Veteran Owned Business\"}]},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Veteran Owned Business\"}]},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}]},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" Accreditation - Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}]},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" AccessIT + Group, LLC.\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business @@ -42,97 +49,72 @@ interactions: BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}]},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" Clyde Joseph Enterprises, LLC\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"SAYLQCANSYD4\",\"legal_business_name\":\" Coil-Tran LLC\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}]},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" + or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}]},{\"uei\":\"H3JUKU6643N7\",\"legal_business_name\":\" + Core & Main LP\",\"cage_code\":\"0JYE9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" Cuyuna Range Housing, Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}]},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}]},{\"uei\":\"L676QG9DC797\",\"legal_business_name\":\" - Dayna Regina Terrell\",\"cage_code\":\"14UB3\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}]},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" + Liability Company\"}]},{\"uei\":\"GR13H1DLN9Q7\",\"legal_business_name\":\" + DANIEL J ALTHOFF\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small + Business Joint Venture\"}]},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" EVANSVILLE VANDERBURGH PUBLIC LIBRARY\",\"cage_code\":\"6DYM5\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. - Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}]},{\"uei\":\"DJJSTLWX9BL1\",\"legal_business_name\":\" - FALCONWARE LLC\",\"cage_code\":\"14HC5\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"UMTSKVL7YM15\",\"legal_business_name\":\" - FIELDREADY SOLUTIONS GROUP, LLC\",\"cage_code\":\"14Q40\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"MBQMLN5JWEL4\",\"legal_business_name\":\" - Forstrom and Torgerson HS, L.L.C.\",\"cage_code\":\"5LCN9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}]},{\"uei\":\"J5XPMVA3TKN9\",\"legal_business_name\":\" - Gina A Gallegos\",\"cage_code\":\"16E89\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}]},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" + Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}]},{\"uei\":\"G3THW1KVNFC5\",\"legal_business_name\":\" + Evangelical Environmental Network\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" Governors Workforce Development Board\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. - Local Government\"}]},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" + Local Government\"}]},{\"uei\":\"L1BFQ1UEC4N5\",\"legal_business_name\":\" + INFINITE VARIATIONS ENGINEERING LLC\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"S5PBXFCDUA53\",\"legal_business_name\":\" + IRISH TRADE SERVICES, LLC\",\"cage_code\":\"198A7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"}]},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" Inner Armor, LLC\",\"cage_code\":\"15GH4\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" JAYRON RATEN CLEMENTE\",\"cage_code\":\"SSXS7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"P668GUDLTFH6\",\"legal_business_name\":\" + KVG LLC\",\"cage_code\":\"16YE6\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"QF\",\"description\":\"Service + Disabled Veteran Owned Business\"}]},{\"uei\":\"KANMQ8XK2K84\",\"legal_business_name\":\" + LUKE JOHNSON\",\"cage_code\":\"18TP9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" MAX BIROU PROIECTARE SRL\",\"cage_code\":\"1JLAL\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"GU1BXWKZBTK8\",\"legal_business_name\":\" - NM Consulting LLC\",\"cage_code\":\"14UU1\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"OY\",\"description\":\"Black - American Owned\"}]},{\"uei\":\"W7VVRWFNCXJ7\",\"legal_business_name\":\" OSPRE - Solutions Inc.\",\"cage_code\":\"16L02\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran - Owned Business\"}]},{\"uei\":\"TLZFY6CQ9KK4\",\"legal_business_name\":\" Ophthalmic - Therapeutic Innovation LLC\",\"cage_code\":\"8RZ63\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small - Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"YEVYSM49LK67\",\"legal_business_name\":\" - PK Oxford Square Limited Partnership\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"LFCHPU28HMA5\",\"legal_business_name\":\" - RECLAMATION DISTRICT 2025\",\"cage_code\":\"6HQ97\",\"business_types\":[{\"code\":\"2F\",\"description\":\"U.S. - State Government\"}]}]}" + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]}]}" headers: CF-RAY: - - 99f88c7b3e51ace1-MSP + - 9d71a735de49acff-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:10 GMT + - Wed, 04 Mar 2026 14:43:25 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=dviPMEtdrknj9F%2BmuCWXiPlrl3%2F8e2uEAxl3KrzzQ8Tqs5NayJbW5FDv1oI3cuL6MdPeiUUPs5e3bpeI76XCscttoljZZ8YxBiK2AXHRLqUb9lX1kN18G90y8g%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5lximjvMCXr8MxoIiLZm8QfAiBAfwMY3tDlun%2BWvRKHOd%2FwKEEO28NrjgxVt8eqwB4UX%2BF7%2BGjCAoLfj%2FZWVavT8A%2Fd2iA4CTPmNRflVrIyAUGMxvBaWNwXo"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '8829' + - '7347' cross-origin-opener-policy: - same-origin referrer-policy: @@ -142,27 +124,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.032s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '956' + - '963' x-ratelimit-burst-reset: - - '43' + - '23' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998649' + - '1999723' x-ratelimit-daily-reset: - - '76' + - '84983' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '956' + - '963' x-ratelimit-reset: - - '43' + - '23' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_get_entity_by_uei b/tests/cassettes/TestEntitiesIntegration.test_get_entity_by_uei index 9c09db2..0392d55 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_get_entity_by_uei +++ b/tests/cassettes/TestEntitiesIntegration.test_get_entity_by_uei @@ -16,25 +16,32 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=25&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + string: "{\"count\":1744479,\"next\":\"https://tango.makegov.com/api/entities/?limit=25&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types\",\"previous\":null,\"results\":[{\"uei\":\"ZM3PA9VDX2W1\",\"legal_business_name\":\" + 106 Advisory Group L.L.C\",\"cage_code\":\"18U69\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self + Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran + Owned Business\"}]},{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" ALLIANCE + PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small Business Joint Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled - Veteran Owned Business\"}]},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority + Veteran Owned Business\"}]},{\"uei\":\"NZQ7T5A89WP3\",\"legal_business_name\":\" + ARMY LEGEND CLEANERS LLC\",\"cage_code\":\"18LK9\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}]},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" Accreditation - Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" + Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran + Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"},{\"code\":\"PI\",\"description\":\"Hispanic American + Owned\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran Owned + Business\"}]},{\"uei\":\"P6KLKJWXNGD5\",\"legal_business_name\":\" AccessIT + Group, LLC.\",\"cage_code\":\"3DCC1\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"ER55X1L9EBZ7\",\"legal_business_name\":\" + Andrews Consulting Services LLC\",\"cage_code\":\"18P33\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small + Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business @@ -42,97 +49,72 @@ interactions: BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"VTQDBML6HG18\",\"legal_business_name\":\" Bahareh Khiabani\",\"cage_code\":\"15G41\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"HC26N42L56H5\",\"legal_business_name\":\" + Big Muddy Creek Watershed Conservancy District\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. + Local Government\"}]},{\"uei\":\"DPJRR1BZDNL7\",\"legal_business_name\":\" + CORPORACION DE SERVICIOS DE ACUEDUCTO ANONES MAYA COSAAM\",\"cage_code\":\"8DA15\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"ZYEQK6YZRVR6\",\"legal_business_name\":\" Clyde Joseph Enterprises, LLC\",\"cage_code\":\"16B28\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"SAYLQCANSYD4\",\"legal_business_name\":\" Coil-Tran LLC\",\"cage_code\":\"14FW3\",\"business_types\":[{\"code\":\"20\",\"description\":\"Foreign Owned\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}]},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" + or Organization\"},{\"code\":\"MF\",\"description\":\"Manufacturer of Goods\"}]},{\"uei\":\"H3JUKU6643N7\",\"legal_business_name\":\" + Core & Main LP\",\"cage_code\":\"0JYE9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"N5YHPLQELFW5\",\"legal_business_name\":\" Cuyuna Range Housing, Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}]},{\"uei\":\"U6EUU7F4RAG4\",\"legal_business_name\":\" - DOE THE BARBER 23, LLC\",\"cage_code\":\"16D37\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran - Owned Business\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"},{\"code\":\"QF\",\"description\":\"Service - Disabled Veteran Owned Business\"}]},{\"uei\":\"L676QG9DC797\",\"legal_business_name\":\" - Dayna Regina Terrell\",\"cage_code\":\"14UB3\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}]},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" + Liability Company\"}]},{\"uei\":\"GR13H1DLN9Q7\",\"legal_business_name\":\" + DANIEL J ALTHOFF\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"JS\",\"description\":\"Small + Business Joint Venture\"}]},{\"uei\":\"FR59S9V8J4K5\",\"legal_business_name\":\" EVANSVILLE VANDERBURGH PUBLIC LIBRARY\",\"cage_code\":\"6DYM5\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. - Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}]},{\"uei\":\"DJJSTLWX9BL1\",\"legal_business_name\":\" - FALCONWARE LLC\",\"cage_code\":\"14HC5\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"UMTSKVL7YM15\",\"legal_business_name\":\" - FIELDREADY SOLUTIONS GROUP, LLC\",\"cage_code\":\"14Q40\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"MBQMLN5JWEL4\",\"legal_business_name\":\" - Forstrom and Torgerson HS, L.L.C.\",\"cage_code\":\"5LCN9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited - Liability Company\"}]},{\"uei\":\"J5XPMVA3TKN9\",\"legal_business_name\":\" - Gina A Gallegos\",\"cage_code\":\"16E89\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"OY\",\"description\":\"Black American Owned\"}]},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" + Local Government\"},{\"code\":\"C7\",\"description\":\"County\"}]},{\"uei\":\"G3THW1KVNFC5\",\"legal_business_name\":\" + Evangelical Environmental Network\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit + Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"HDFVZNRP9G53\",\"legal_business_name\":\" Governors Workforce Development Board\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"12\",\"description\":\"U.S. - Local Government\"}]},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" + Local Government\"}]},{\"uei\":\"L1BFQ1UEC4N5\",\"legal_business_name\":\" + INFINITE VARIATIONS ENGINEERING LLC\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"S5PBXFCDUA53\",\"legal_business_name\":\" + IRISH TRADE SERVICES, LLC\",\"cage_code\":\"198A7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited + Liability Company\"}]},{\"uei\":\"RBDKYFGXG533\",\"legal_business_name\":\" Inner Armor, LLC\",\"cage_code\":\"15GH4\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"Z75YD1TKFNH1\",\"legal_business_name\":\" JAYRON RATEN CLEMENTE\",\"cage_code\":\"SSXS7\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"P668GUDLTFH6\",\"legal_business_name\":\" + KVG LLC\",\"cage_code\":\"16YE6\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For + Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business + or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"QF\",\"description\":\"Service + Disabled Veteran Owned Business\"}]},{\"uei\":\"KANMQ8XK2K84\",\"legal_business_name\":\" + LUKE JOHNSON\",\"cage_code\":\"18TP9\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"WUEKW2WMK1G4\",\"legal_business_name\":\" MAX BIROU PROIECTARE SRL\",\"cage_code\":\"1JLAL\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"GU1BXWKZBTK8\",\"legal_business_name\":\" - NM Consulting LLC\",\"cage_code\":\"14UU1\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"},{\"code\":\"OY\",\"description\":\"Black - American Owned\"}]},{\"uei\":\"W7VVRWFNCXJ7\",\"legal_business_name\":\" OSPRE - Solutions Inc.\",\"cage_code\":\"16L02\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"QF\",\"description\":\"Service Disabled Veteran - Owned Business\"}]},{\"uei\":\"TLZFY6CQ9KK4\",\"legal_business_name\":\" Ophthalmic - Therapeutic Innovation LLC\",\"cage_code\":\"8RZ63\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman Owned Small - Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"YEVYSM49LK67\",\"legal_business_name\":\" - PK Oxford Square Limited Partnership\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]},{\"uei\":\"LFCHPU28HMA5\",\"legal_business_name\":\" - RECLAMATION DISTRICT 2025\",\"cage_code\":\"6HQ97\",\"business_types\":[{\"code\":\"2F\",\"description\":\"U.S. - State Government\"}]}]}" + Profit Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]}]}" headers: CF-RAY: - - 99f88c734f72acff-MSP + - 9d71a72dce3da221-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:09 GMT + - Wed, 04 Mar 2026 14:43:24 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CkotSiyNoa9MIP%2BOI02%2FV3tEXMqbw3bA4hXg3I4CiVFvrNLvfR9UTI7ATpIXVFRNZPvolVDwq9m7o1AEpMZ46M9ODOvyOFmiAQMvohYJ4BdAKVQ0K9s%2BS8oRxw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rQrKsge5yNqtvkpxGiqbU3jk2Mp7VSNI1%2B%2BoNWbA9sAzDPQ%2BO60ud7iWJwvDV3fp6ejKKG0I90tXmKCg7fhnr96CX2hLUwiBRl1Ezdk44Leqgr62YxgR5LtG"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '8829' + - '7347' cross-origin-opener-policy: - same-origin referrer-policy: @@ -142,27 +124,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.034s + - 0.017s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '962' + - '969' x-ratelimit-burst-reset: - - '44' + - '24' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998655' + - '1999729' x-ratelimit-daily-reset: - - '77' + - '84984' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '962' + - '969' x-ratelimit-reset: - - '44' + - '24' status: code: 200 message: OK @@ -180,44 +162,39 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/entities/QTY8TUJGMM34/?shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district + uri: https://tango.makegov.com/api/entities/ZM3PA9VDX2W1/?shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district response: body: - string: '{"uei":"QTY8TUJGMM34","legal_business_name":" ALLIANCE PRO GLOBAL LLC","dba_name":"","cage_code":"16CA8","business_types":[{"code":"27","description":"Self + string: '{"uei":"ZM3PA9VDX2W1","legal_business_name":" 106 Advisory Group L.L.C","dba_name":"","cage_code":"18U69","business_types":[{"code":"27","description":"Self Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business - or Organization"},{"code":"JS","description":"Small Business Joint Venture"},{"code":"JV","description":"JV - Service-Disabled Veteran-Owned Business Joint Venture"},{"code":"QF","description":"Service - Disabled Veteran Owned Business"}],"primary_naics":"541611","naics_codes":[{"code":"518210","sba_small_business":"Y"},{"code":"541199","sba_small_business":"Y"},{"code":"541219","sba_small_business":"Y"},{"code":"541511","sba_small_business":"Y"},{"code":"541512","sba_small_business":"Y"},{"code":"541513","sba_small_business":"Y"},{"code":"541519","sba_small_business":"E"},{"code":"541611","sba_small_business":"Y"},{"code":"541612","sba_small_business":"Y"},{"code":"541613","sba_small_business":"Y"},{"code":"541614","sba_small_business":"Y"},{"code":"541618","sba_small_business":"Y"},{"code":"541690","sba_small_business":"Y"},{"code":"541820","sba_small_business":"Y"},{"code":"541930","sba_small_business":"Y"},{"code":"541990","sba_small_business":"Y"},{"code":"561110","sba_small_business":"Y"},{"code":"561210","sba_small_business":"Y"},{"code":"561320","sba_small_business":"Y"},{"code":"561499","sba_small_business":"Y"},{"code":"561720","sba_small_business":"Y"},{"code":"561990","sba_small_business":"Y"},{"code":"562998","sba_small_business":"Y"},{"code":"611710","sba_small_business":"Y"}],"psc_codes":null,"email_address":null,"entity_url":"","description":null,"capabilities":null,"keywords":null,"physical_address":{"city":"Owings - Mills","zip_code":"21117","country_code":"USA","address_line1":"11240 Reisterstown - Rd","address_line2":"","zip_code_plus4":"1965","state_or_province_code":"MD"},"mailing_address":{"city":"Owings - Mills","zip_code":"21117","country_code":"USA","address_line1":"11240 Reisterstown - Rd","address_line2":"","zip_code_plus4":"1965","state_or_province_code":"MD"},"federal_obligations":{"total":{"idv_count":0,"awards_count":0,"subawards_count":0,"awards_obligated":0.0,"subawards_obligated":0.0},"active":{"idv_count":0,"awards_count":0,"awards_obligated":0.0}},"congressional_district":"02"}' + or Organization"},{"code":"QF","description":"Service Disabled Veteran Owned + Business"}],"primary_naics":"541620","naics_codes":[{"code":"541620","sba_small_business":"Y"},{"code":"541690","sba_small_business":"Y"}],"psc_codes":["B503","B521"],"email_address":null,"entity_url":"https://www.106advisorygroup.com/","description":null,"capabilities":null,"keywords":null,"physical_address":{"city":"Springfield","zip_code":"72157","country_code":"USA","address_line1":"32 + Reville Rd","address_line2":"","zip_code_plus4":"9515","state_or_province_code":"AR"},"mailing_address":{"city":"Springfield","zip_code":"72157","country_code":"USA","address_line1":"32 + Reville Rd","address_line2":"","zip_code_plus4":"9515","state_or_province_code":"AR"},"congressional_district":"02","federal_obligations":{"total":{"idv_count":0,"awards_count":0,"subawards_count":0,"awards_obligated":0.0,"subawards_obligated":0.0},"active":{"idv_count":0,"awards_count":0,"awards_obligated":0.0}}}' headers: CF-RAY: - - 99f88c7418a2acff-MSP + - 9d71a72e8f2aa221-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:09 GMT + - Wed, 04 Mar 2026 14:43:24 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AVf9aqN%2FxLBwaGgvHbhXVp%2BTgUBlBwE6%2Bq1wzV5V5dWN2Bn%2BNjYXnS8m9%2FNgqIGdzcCBiziJ4FwoefF4UAOJkpKQ%2BimcqgqSVO%2F5Pj7qK0yAoufSSw64uQvHKQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=f6A93lZ%2FwLv%2BKT8mXvve8cpOhSmsq1g7%2FhInlt4srSTm2MrxzFMEKXLYYTjG%2BUfl7c8J%2BPQ8f75%2B0fC%2Bdl%2FDIqQaAz4vL0DuCz7R2YQBrvOOF2vQ2Pr9fAHD"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '2377' + - '1312' cross-origin-opener-policy: - same-origin referrer-policy: @@ -227,27 +204,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.026s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '961' + - '968' x-ratelimit-burst-reset: - - '44' + - '24' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998654' + - '1999728' x-ratelimit-daily-reset: - - '77' + - '84984' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '961' + - '968' x-ratelimit-reset: - - '44' + - '24' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_flat b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_flat index 68946fb..9d48670 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_flat +++ b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_flat @@ -16,44 +16,40 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Cphysical_address&flat=true response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?flat=true&limit=5&page=2&shape=uei%2Clegal_business_name%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"physical_address.city\":\"Owings Mills\",\"physical_address.zip_code\":\"21117\",\"physical_address.country_code\":\"USA\",\"physical_address.address_line1\":\"11240 - Reisterstown Rd\",\"physical_address.address_line2\":\"\",\"physical_address.zip_code_plus4\":\"1965\",\"physical_address.state_or_province_code\":\"MD\"},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"physical_address.city\":\"Salinas\",\"physical_address.zip_code\":\"93908\",\"physical_address.country_code\":\"USA\",\"physical_address.address_line1\":\"22160 - Berry Dr\",\"physical_address.address_line2\":\"\",\"physical_address.zip_code_plus4\":\"8728\",\"physical_address.state_or_province_code\":\"CA\"},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"physical_address.city\":\"Sterling\",\"physical_address.zip_code\":\"20165\",\"physical_address.country_code\":\"USA\",\"physical_address.address_line1\":\"26 - Dorrell Ct\",\"physical_address.address_line2\":\"\",\"physical_address.zip_code_plus4\":\"5713\",\"physical_address.state_or_province_code\":\"VA\"},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" - Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College - Inc.\",\"physical_address.city\":\"Winnipeg\",\"physical_address.zip_code\":\"R3T - 2M6\",\"physical_address.country_code\":\"CAN\",\"physical_address.address_line1\":\"70 - Dysart Rd\",\"physical_address.address_line2\":\"\",\"physical_address.zip_code_plus4\":\"\",\"physical_address.state_or_province_code\":\"MB\"},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" - BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"physical_address.city\":\"GASTONIA\",\"physical_address.zip_code\":\"28056\",\"physical_address.country_code\":\"USA\",\"physical_address.address_line1\":\"3100 - CITY CHURCH ST BLDG B\",\"physical_address.address_line2\":\"\",\"physical_address.zip_code_plus4\":\"0045\",\"physical_address.state_or_province_code\":\"NC\"}]}" + string: '{"count":1744479,"next":"https://tango.makegov.com/api/entities/?flat=true&limit=5&page=2&shape=uei%2Clegal_business_name%2Cphysical_address","previous":null,"results":[{"uei":"ZM3PA9VDX2W1","legal_business_name":" + 106 Advisory Group L.L.C","physical_address.city":"Springfield","physical_address.zip_code":"72157","physical_address.country_code":"USA","physical_address.address_line1":"32 + Reville Rd","physical_address.address_line2":"","physical_address.zip_code_plus4":"9515","physical_address.state_or_province_code":"AR"},{"uei":"QTY8TUJGMM34","legal_business_name":" + ALLIANCE PRO GLOBAL LLC","physical_address.city":"Owings Mills","physical_address.zip_code":"21117","physical_address.country_code":"USA","physical_address.address_line1":"11240 + Reisterstown Rd","physical_address.address_line2":"","physical_address.zip_code_plus4":"1965","physical_address.state_or_province_code":"MD"},{"uei":"NZQ7T5A89WP3","legal_business_name":" + ARMY LEGEND CLEANERS LLC","physical_address.city":"Vine Grove","physical_address.zip_code":"40175","physical_address.country_code":"USA","physical_address.address_line1":"65 + Shacklette Ct","physical_address.address_line2":"","physical_address.zip_code_plus4":"1081","physical_address.state_or_province_code":"KY"},{"uei":"P6KLKJWXNGD5","legal_business_name":" + AccessIT Group, LLC.","physical_address.city":"King of Prussia","physical_address.zip_code":"19406","physical_address.country_code":"USA","physical_address.address_line1":"2000 + Valley Forge Cir Ste 106","physical_address.address_line2":"","physical_address.zip_code_plus4":"4526","physical_address.state_or_province_code":"PA"},{"uei":"ER55X1L9EBZ7","legal_business_name":" + Andrews Consulting Services LLC","physical_address.city":"Poteau","physical_address.zip_code":"74953","physical_address.country_code":"USA","physical_address.address_line1":"22680 + Cabot Ln","physical_address.address_line2":"","physical_address.zip_code_plus4":"7825","physical_address.state_or_province_code":"OK"}]}' headers: CF-RAY: - - 99f88c79d9c4a1e9-MSP + - 9d71a7342e89a1fa-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:10 GMT + - Wed, 04 Mar 2026 14:43:25 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=O9CRDAKAueQVfn0NnwYkPPuyKV%2F6QZsN795TUFWj774iAEriZBOcaI0dq9gbV0CIAoLYUM4tro0VrhPkQjwrfWXp%2FmZm3RAz5V4V0CFJ9iQFWasKC7SANzHwTg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Krsepl3fUDVf9oU03zQWJO%2BMcdCo2hxH1VuZCiFIBFNWCl1QnCuTi1vo0f5qnVvt%2BLv9EIRcaFPENQ0g4RpSdkO1jL6Yy%2FscDbYlEfaw5t%2BFEyE%2B0RwxKsnX"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '2039' + - '1989' cross-origin-opener-policy: - same-origin referrer-policy: @@ -63,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.031s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '957' + - '964' x-ratelimit-burst-reset: - - '43' + - '23' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998650' + - '1999724' x-ratelimit-daily-reset: - - '76' + - '84983' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '957' + - '964' x-ratelimit-reset: - - '43' + - '23' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_search b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_search index 6f3279d..dc92e8c 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_search +++ b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_search @@ -16,42 +16,44 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types&search=IBM response: body: - string: '{"count":119,"next":"http://tango.makegov.com/api/entities/?limit=5&page=2&search=IBM&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types","previous":null,"results":[{"uei":"VYK6E3QPX4J5","legal_business_name":"4 + string: '{"count":199,"next":"https://tango.makegov.com/api/entities/?limit=5&page=2&search=IBM&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types","previous":null,"results":[{"uei":"VYK6E3QPX4J5","legal_business_name":"4 WALLS IT BUSINESS SOLUTIONS LLC","cage_code":"9HXV4","business_types":[{"code":"23","description":"Minority Owned Business"},{"code":"27","description":"Self Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"OY","description":"Black American Owned"},{"code":"QF","description":"Service - Disabled Veteran Owned Business"}]},{"uei":"T7HKTLJUT3G5","legal_business_name":"ABUNDANS - INFORMATION TECHNOLOGY LLC","cage_code":"8DVM4","business_types":{"23":true,"27":true,"2X":true,"8W":true,"A2":true,"LJ":true,"OY":true}},{"uei":"ZB2SDLFGUKG1","legal_business_name":"ARRIETTY - SOLUTIONS INC.","cage_code":"7QF84","business_types":{"23":true,"27":true,"2X":true,"8W":true,"A2":true,"FR":true}},{"uei":"LTSLH5CNK8J9","legal_business_name":"COMBS, - MARION W","cage_code":null,"business_types":[{"code":"2X","description":"For - Profit Organization"}]},{"uei":"PZEFNJ7QL3C3","legal_business_name":"CROSS - INTELLIGENCE ANALYSIS, L.L.C.","cage_code":"87QD9","business_types":{"23":true,"2X":true,"8W":true,"A2":true,"A5":true,"LJ":true,"OY":true,"QF":true}}]}' + Disabled Veteran Owned Business"}]},{"uei":"X5EJXRAA8WM4","legal_business_name":"9 + TO 5 COMPUTER SUPPLY DISTRIBUTORS, INC.","cage_code":"0DFK0","business_types":{"2X":true}},{"uei":"KKA1TMNGBAX5","legal_business_name":"ABSCUS + INC.","cage_code":"7H9E5","business_types":{"23":true,"27":true,"2X":true,"8W":true,"A2":true,"QZ":true,"XS":true}},{"uei":"T7HKTLJUT3G5","legal_business_name":"ABUNDANS + INFORMATION TECHNOLOGY LLC","cage_code":"8DVM4","business_types":[{"code":"23","description":"Minority + Owned Business"},{"code":"27","description":"Self Certified Small Disadvantaged + Business"},{"code":"2X","description":"For Profit Organization"},{"code":"8W","description":"Woman + Owned Small Business"},{"code":"A2","description":"Woman Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"LJ","description":"Limited Liability Company"},{"code":"OY","description":"Black + American Owned"}]},{"uei":"UZTCXMVAJLJ1","legal_business_name":"ALTERNATIVE + INFORMATION SYSTEMS INC","cage_code":"3UJM5","business_types":{"2X":true,"XS":true}}]}' headers: CF-RAY: - - 99f88c71d9ec4ca8-MSP + - 9d71a72c8e6ba1df-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:08 GMT + - Wed, 04 Mar 2026 14:43:24 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=mhMHQOpyS5rMUpWnpWQbkjIiBTWPRRnz%2B%2BsMbB%2BAGgMxJxjn8OHMTf2n23uZUISs8fgua7VcS1IYKvIIX1dod1wdStmKHft5%2FfBlCX9FfyEUF3xNvmQlymPGQQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=N%2Fwu3pkHliGXD0nywxi2%2F481GJx9%2FtUXwiis9D5zY7dOOydfcBzdtk%2FHXhlC7ABGme3OnJb5tgIJ%2FvxT00Owr4nVN26%2FFJwyrYkHJV4Ibr%2BZ7si8hIHqIK2d"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1369' + - '1674' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +63,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.039s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '963' + - '970' x-ratelimit-burst-reset: - - '44' + - '24' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998656' + - '1999730' x-ratelimit-daily-reset: - - '77' + - '84984' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '963' + - '970' x-ratelimit-reset: - - '44' + - '24' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...1603a7d52e211cf2b3bc7d32080238aa b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...1603a7d52e211cf2b3bc7d32080238aa new file mode 100644 index 0000000..f2fd821 --- /dev/null +++ b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...1603a7d52e211cf2b3bc7d32080238aa @@ -0,0 +1,116 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district + response: + body: + string: '{"count":1744479,"next":"https://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%28%2A%29%2Ccongressional_district","previous":null,"results":[{"uei":"ZM3PA9VDX2W1","legal_business_name":" + 106 Advisory Group L.L.C","dba_name":"","cage_code":"18U69","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"QF","description":"Service Disabled Veteran Owned + Business"}],"primary_naics":"541620","naics_codes":[{"code":"541620","sba_small_business":"Y"},{"code":"541690","sba_small_business":"Y"}],"psc_codes":["B503","B521"],"email_address":null,"entity_url":"https://www.106advisorygroup.com/","description":null,"capabilities":null,"keywords":null,"physical_address":{"city":"Springfield","zip_code":"72157","country_code":"USA","address_line1":"32 + Reville Rd","address_line2":"","zip_code_plus4":"9515","state_or_province_code":"AR"},"mailing_address":{"city":"Springfield","zip_code":"72157","country_code":"USA","address_line1":"32 + Reville Rd","address_line2":"","zip_code_plus4":"9515","state_or_province_code":"AR"},"congressional_district":"02","federal_obligations":{"total":{"idv_count":0,"awards_count":0,"subawards_count":0,"awards_obligated":0.0,"subawards_obligated":0.0},"active":{"idv_count":0,"awards_count":0,"awards_obligated":0.0}}},{"uei":"QTY8TUJGMM34","legal_business_name":" + ALLIANCE PRO GLOBAL LLC","dba_name":"","cage_code":"16CA8","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"JS","description":"Small Business Joint Venture"},{"code":"JV","description":"JV + Service-Disabled Veteran-Owned Business Joint Venture"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}],"primary_naics":"541611","naics_codes":[{"code":"518210","sba_small_business":"Y"},{"code":"541199","sba_small_business":"Y"},{"code":"541219","sba_small_business":"Y"},{"code":"541511","sba_small_business":"Y"},{"code":"541512","sba_small_business":"Y"},{"code":"541513","sba_small_business":"Y"},{"code":"541519","sba_small_business":"E"},{"code":"541611","sba_small_business":"Y"},{"code":"541612","sba_small_business":"Y"},{"code":"541613","sba_small_business":"Y"},{"code":"541614","sba_small_business":"Y"},{"code":"541618","sba_small_business":"Y"},{"code":"541690","sba_small_business":"Y"},{"code":"541820","sba_small_business":"Y"},{"code":"541930","sba_small_business":"Y"},{"code":"541990","sba_small_business":"Y"},{"code":"561110","sba_small_business":"Y"},{"code":"561210","sba_small_business":"Y"},{"code":"561320","sba_small_business":"Y"},{"code":"561499","sba_small_business":"Y"},{"code":"561720","sba_small_business":"Y"},{"code":"561990","sba_small_business":"Y"},{"code":"562998","sba_small_business":"Y"},{"code":"611710","sba_small_business":"Y"}],"psc_codes":null,"email_address":null,"entity_url":"","description":null,"capabilities":null,"keywords":null,"physical_address":{"city":"Owings + Mills","zip_code":"21117","country_code":"USA","address_line1":"11240 Reisterstown + Rd","address_line2":"","zip_code_plus4":"1965","state_or_province_code":"MD"},"mailing_address":{"city":"Owings + Mills","zip_code":"21117","country_code":"USA","address_line1":"11240 Reisterstown + Rd","address_line2":"","zip_code_plus4":"1965","state_or_province_code":"MD"},"congressional_district":"02","federal_obligations":{"total":{"idv_count":0,"awards_count":0,"subawards_count":0,"awards_obligated":0.0,"subawards_obligated":0.0},"active":{"idv_count":0,"awards_count":0,"awards_obligated":0.0}}},{"uei":"NZQ7T5A89WP3","legal_business_name":" + ARMY LEGEND CLEANERS LLC","dba_name":"","cage_code":"18LK9","business_types":[{"code":"23","description":"Minority + Owned Business"},{"code":"27","description":"Self Certified Small Disadvantaged + Business"},{"code":"2X","description":"For Profit Organization"},{"code":"A5","description":"Veteran + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"},{"code":"PI","description":"Hispanic American Owned"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}],"primary_naics":"561720","naics_codes":[{"code":"561720","sba_small_business":"Y"}],"psc_codes":["S201"],"email_address":null,"entity_url":null,"description":null,"capabilities":null,"keywords":null,"physical_address":{"city":"Vine + Grove","zip_code":"40175","country_code":"USA","address_line1":"65 Shacklette + Ct","address_line2":"","zip_code_plus4":"1081","state_or_province_code":"KY"},"mailing_address":{"city":"Vine + Grove","zip_code":"40175","country_code":"USA","address_line1":"65 Shacklette + Ct","address_line2":"","zip_code_plus4":"1081","state_or_province_code":"KY"},"congressional_district":"02","federal_obligations":{"total":{"idv_count":0,"awards_count":0,"subawards_count":0,"awards_obligated":0.0,"subawards_obligated":0.0},"active":{"idv_count":0,"awards_count":0,"awards_obligated":0.0}}},{"uei":"P6KLKJWXNGD5","legal_business_name":" + AccessIT Group, LLC.","dba_name":"","cage_code":"3DCC1","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"F","description":"Business or Organization"}],"primary_naics":"541512","naics_codes":[{"code":"541512","sba_small_business":"N"}],"psc_codes":null,"email_address":null,"entity_url":"https://www.accessitgroup.com/","description":null,"capabilities":null,"keywords":null,"physical_address":{"city":"King + of Prussia","zip_code":"19406","country_code":"USA","address_line1":"2000 + Valley Forge Cir Ste 106","address_line2":"","zip_code_plus4":"4526","state_or_province_code":"PA"},"mailing_address":{"city":"KING + OF PRUSSIA","zip_code":"19406","country_code":"USA","address_line1":"20106 + VALLEY FORGE CIRCLE","address_line2":"","zip_code_plus4":"1112","state_or_province_code":"PA"},"congressional_district":"04","federal_obligations":{"total":{"idv_count":0,"awards_count":8,"subawards_count":7,"awards_obligated":39217.28,"subawards_obligated":558846.9},"active":{"idv_count":0,"awards_count":0,"awards_obligated":0.0}}},{"uei":"ER55X1L9EBZ7","legal_business_name":" + Andrews Consulting Services LLC","dba_name":"","cage_code":"18P33","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"8W","description":"Woman Owned Small Business"},{"code":"A2","description":"Woman + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"}],"primary_naics":"621340","naics_codes":[{"code":"621340","sba_small_business":"Y"}],"psc_codes":null,"email_address":null,"entity_url":null,"description":"Contact: + HANNAH ANDREWS","capabilities":null,"keywords":null,"physical_address":{"city":"Poteau","zip_code":"74953","country_code":"USA","address_line1":"22680 + Cabot Ln","address_line2":"","zip_code_plus4":"7825","state_or_province_code":"OK"},"mailing_address":{"city":"Poteau","zip_code":"74953","country_code":"USA","address_line1":"22680 + Cabot Ln","address_line2":"","zip_code_plus4":"7825","state_or_province_code":"OK"},"congressional_district":"02","federal_obligations":{"total":{"idv_count":0,"awards_count":0,"subawards_count":0,"awards_obligated":0.0,"subawards_obligated":0.0},"active":{"idv_count":0,"awards_count":0,"awards_obligated":0.0}}}]}' + headers: + CF-RAY: + - 9d71a72a2c0bad02-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 14:43:23 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=B8XDkU1GcoUrtYOxelrcdlE6uJzRUDniYVa9DprAfV0hN8uD%2FG20raliLm1BKPi4DfMX3EZLyUHh4lMRHWei6LFDMZOheeSxdd%2FgBWrFlzL4V6kf7SitJTZP"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '7792' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.021s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '972' + x-ratelimit-burst-reset: + - '25' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999732' + x-ratelimit-daily-reset: + - '84985' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '972' + x-ratelimit-reset: + - '25' + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...95fcff7efcf320ecc846393dd484321d b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...95fcff7efcf320ecc846393dd484321d deleted file mode 100644 index 1bab1ba..0000000 --- a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...95fcff7efcf320ecc846393dd484321d +++ /dev/null @@ -1,115 +0,0 @@ -interactions: -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district - response: - body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Cdba_name%2Ccage_code%2Cbusiness_types%2Cprimary_naics%2Cnaics_codes%2Cpsc_codes%2Cemail_address%2Centity_url%2Cdescription%2Ccapabilities%2Ckeywords%2Cphysical_address%2Cmailing_address%2Cfederal_obligations%2Ccongressional_district\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"dba_name\":\"\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"JS\",\"description\":\"Small Business Joint - Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned - Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled - Veteran Owned Business\"}],\"primary_naics\":\"541611\",\"naics_codes\":[{\"code\":\"518210\",\"sba_small_business\":\"Y\"},{\"code\":\"541199\",\"sba_small_business\":\"Y\"},{\"code\":\"541219\",\"sba_small_business\":\"Y\"},{\"code\":\"541511\",\"sba_small_business\":\"Y\"},{\"code\":\"541512\",\"sba_small_business\":\"Y\"},{\"code\":\"541513\",\"sba_small_business\":\"Y\"},{\"code\":\"541519\",\"sba_small_business\":\"E\"},{\"code\":\"541611\",\"sba_small_business\":\"Y\"},{\"code\":\"541612\",\"sba_small_business\":\"Y\"},{\"code\":\"541613\",\"sba_small_business\":\"Y\"},{\"code\":\"541614\",\"sba_small_business\":\"Y\"},{\"code\":\"541618\",\"sba_small_business\":\"Y\"},{\"code\":\"541690\",\"sba_small_business\":\"Y\"},{\"code\":\"541820\",\"sba_small_business\":\"Y\"},{\"code\":\"541930\",\"sba_small_business\":\"Y\"},{\"code\":\"541990\",\"sba_small_business\":\"Y\"},{\"code\":\"561110\",\"sba_small_business\":\"Y\"},{\"code\":\"561210\",\"sba_small_business\":\"Y\"},{\"code\":\"561320\",\"sba_small_business\":\"Y\"},{\"code\":\"561499\",\"sba_small_business\":\"Y\"},{\"code\":\"561720\",\"sba_small_business\":\"Y\"},{\"code\":\"561990\",\"sba_small_business\":\"Y\"},{\"code\":\"562998\",\"sba_small_business\":\"Y\"},{\"code\":\"611710\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Owings - Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"mailing_address\":{\"city\":\"Owings - Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"02\"},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"dba_name\":\"Ryan Local Business Concierge\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"primary_naics\":\"561110\",\"naics_codes\":[{\"code\":\"561110\",\"sba_small_business\":\"Y\"}],\"psc_codes\":[\"AF34\",\"B550\"],\"email_address\":null,\"entity_url\":\"https://www.localbusinessconcierge.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"mailing_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"19\"},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"dba_name\":\"ABA\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"primary_naics\":\"541990\",\"naics_codes\":[{\"code\":\"541990\",\"sba_small_business\":\"Y\"},{\"code\":\"611430\",\"sba_small_business\":\"Y\"},{\"code\":\"813910\",\"sba_small_business\":\"Y\"}],\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://www.abofamerica.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"},\"mailing_address\":{\"city\":\"HERNDON\",\"zip_code\":\"20171\",\"country_code\":\"USA\",\"address_line1\":\"13800 - COPPERMINE RD\",\"address_line2\":\"\",\"zip_code_plus4\":\"6163\",\"state_or_province_code\":\"VA\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"10\"},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" - Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College - Inc.\",\"dba_name\":\"\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private - University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}],\"primary_naics\":null,\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://umanitoba.ca/st-pauls-college/mauro-institute-peace-justice\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T - 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"70 Dysart Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"mailing_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T - 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"c/o St. Paul's College\",\"address_line2\":\"70 - Dysart Road, Room 252\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"\"},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" - BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"dba_name\":\"CITY CHURCH\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit - Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"primary_naics\":\"\",\"naics_codes\":null,\"psc_codes\":null,\"email_address\":null,\"entity_url\":\"https://citync.com/\",\"description\":null,\"capabilities\":null,\"keywords\":null,\"physical_address\":{\"city\":\"GASTONIA\",\"zip_code\":\"28056\",\"country_code\":\"USA\",\"address_line1\":\"3100 - CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"},\"mailing_address\":{\"city\":\"Gastonia\",\"zip_code\":\"28055\",\"country_code\":\"USA\",\"address_line1\":\"P.O. - Box 551387\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"NC\"},\"federal_obligations\":{\"total\":{\"idv_count\":0,\"awards_count\":0,\"subawards_count\":0,\"awards_obligated\":0.0,\"subawards_obligated\":0.0},\"active\":{\"idv_count\":0,\"awards_count\":0,\"awards_obligated\":0.0}},\"congressional_district\":\"14\"}]}" - headers: - CF-RAY: - - 99f88c6f3821a1f7-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Sun, 16 Nov 2025 17:01:08 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=df2RDECfRixpwzHRgZueN1DtnEqqmRH5992TKsYNEozz7Id67EdaP8AY%2BlDTvspU4rPb3L4vyOP2emBPXsBRkhBItEvPaO93MG%2BGSY3P9W4GQehWwNGOehfmzw%3D%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 - cf-cache-status: - - DYNAMIC - content-length: - - '7810' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.038s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '965' - x-ratelimit-burst-reset: - - '45' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1998658' - x-ratelimit-daily-reset: - - '77' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '965' - x-ratelimit-reset: - - '45' - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[custom-uei,legal_business_name,cage_code] b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[custom-uei,legal_business_name,cage_code] index f44a97c..0844e2d 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[custom-uei,legal_business_name,cage_code] +++ b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[custom-uei,legal_business_name,cage_code] @@ -16,38 +16,35 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Ccage_code response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\"},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\"},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"cage_code\":\"86HD7\"},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" - Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College - Inc.\",\"cage_code\":\"\"},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" - BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"cage_code\":\"\"}]}" + string: '{"count":1744479,"next":"https://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code","previous":null,"results":[{"uei":"ZM3PA9VDX2W1","legal_business_name":" + 106 Advisory Group L.L.C","cage_code":"18U69"},{"uei":"QTY8TUJGMM34","legal_business_name":" + ALLIANCE PRO GLOBAL LLC","cage_code":"16CA8"},{"uei":"NZQ7T5A89WP3","legal_business_name":" + ARMY LEGEND CLEANERS LLC","cage_code":"18LK9"},{"uei":"P6KLKJWXNGD5","legal_business_name":" + AccessIT Group, LLC.","cage_code":"3DCC1"},{"uei":"ER55X1L9EBZ7","legal_business_name":" + Andrews Consulting Services LLC","cage_code":"18P33"}]}' headers: CF-RAY: - - 99f88c70986dacfa-MSP + - 9d71a72b596128fe-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:08 GMT + - Wed, 04 Mar 2026 14:43:24 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Bl9UKknsS0cfPWCbZF0hxzUbdmpd6kykAJhl41TiER1qvISSRX1uByYQSEKn7iy52QQPlvo6MQ7NNuECgYszr2vazeCgs1PSolOyRD0V0gN5t%2FP8IDJaSsQFkA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=GeV%2BPhFa20A1YKsz4sOTWK0LcwzvvuB8pE96PTwZ%2Fyz%2F0py5bPtYqeCH3b866fWQuVkpbFHdKmwlSpfBMkFcO%2BnS4SPt4lGIMYeXH2HQEUmjKVNRnN9UinOo"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '680' + - '620' cross-origin-opener-policy: - same-origin referrer-policy: @@ -57,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.031s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '964' + - '971' x-ratelimit-burst-reset: - - '44' + - '24' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998657' + - '1999731' x-ratelimit-daily-reset: - - '77' + - '84985' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '964' + - '971' x-ratelimit-reset: - - '44' + - '24' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[minimal-uei,legal_business_name,cage_code,business_types] b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[minimal-uei,legal_business_name,cage_code,business_types] index 880179e..c564fad 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[minimal-uei,legal_business_name,cage_code,business_types] +++ b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[minimal-uei,legal_business_name,cage_code,business_types] @@ -16,56 +16,53 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"JS\",\"description\":\"Small Business Joint - Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned - Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled - Veteran Owned Business\"}]},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}]},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" Accreditation - Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" - Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College - Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private - University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}]},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" - BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit - Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]}]}" + string: '{"count":1744479,"next":"https://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types","previous":null,"results":[{"uei":"ZM3PA9VDX2W1","legal_business_name":" + 106 Advisory Group L.L.C","cage_code":"18U69","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"QF","description":"Service Disabled Veteran Owned + Business"}]},{"uei":"QTY8TUJGMM34","legal_business_name":" ALLIANCE PRO GLOBAL + LLC","cage_code":"16CA8","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"JS","description":"Small Business Joint Venture"},{"code":"JV","description":"JV + Service-Disabled Veteran-Owned Business Joint Venture"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}]},{"uei":"NZQ7T5A89WP3","legal_business_name":" + ARMY LEGEND CLEANERS LLC","cage_code":"18LK9","business_types":[{"code":"23","description":"Minority + Owned Business"},{"code":"27","description":"Self Certified Small Disadvantaged + Business"},{"code":"2X","description":"For Profit Organization"},{"code":"A5","description":"Veteran + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"},{"code":"PI","description":"Hispanic American Owned"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}]},{"uei":"P6KLKJWXNGD5","legal_business_name":" + AccessIT Group, LLC.","cage_code":"3DCC1","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"F","description":"Business or Organization"}]},{"uei":"ER55X1L9EBZ7","legal_business_name":" + Andrews Consulting Services LLC","cage_code":"18P33","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"8W","description":"Woman Owned Small Business"},{"code":"A2","description":"Woman + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"}]}]}' headers: CF-RAY: - - 99f88c6c982bad17-MSP + - 9d71a72739ab6a44-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:08 GMT + - Wed, 04 Mar 2026 14:43:23 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5aid1EPlGBbyIBIWHldHQDzKibk2mFwk0Un6oothvLnlZewmEalR6%2Fn3QO6e0sV%2BnMJ00vsNUfngYPoPEqYpjnt4XOL2Xb%2Blzj0nQyu68w1I0x99HLg5hlV2tw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=7s0FdUulQrjzxiIY2gUpsabY3q%2BJYsmDmOxofz1vzczKgEajHRmROJrLzdPZWZO3vpHYoRDkNB%2BuuSoMUoF8tKa9vLnLQN8MzxhdJXq%2FZVjRrSL1YdLRFTsU"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '2331' + - '2337' cross-origin-opener-policy: - same-origin referrer-policy: @@ -75,27 +72,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.027s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '967' + - '974' x-ratelimit-burst-reset: - - '45' + - '25' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998660' + - '1999734' x-ratelimit-daily-reset: - - '78' + - '84985' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '967' + - '974' x-ratelimit-reset: - - '45' + - '25' status: code: 200 message: OK diff --git a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[with_address-uei,legal_business_name,cage_code,business_types,physical_address] b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[with_address-uei,legal_business_name,cage_code,business_types,physical_address] index 152f675..7650441 100644 --- a/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[with_address-uei,legal_business_name,cage_code,business_types,physical_address] +++ b/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[with_address-uei,legal_business_name,cage_code,business_types,physical_address] @@ -16,61 +16,59 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"JS\",\"description\":\"Small Business Joint - Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned - Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled - Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" - Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College - Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private - University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}],\"physical_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T - 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"70 Dysart Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"}},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" - BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit - Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"GASTONIA\",\"zip_code\":\"28056\",\"country_code\":\"USA\",\"address_line1\":\"3100 - CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"}}]}" + string: '{"count":1744479,"next":"https://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address","previous":null,"results":[{"uei":"ZM3PA9VDX2W1","legal_business_name":" + 106 Advisory Group L.L.C","cage_code":"18U69","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"QF","description":"Service Disabled Veteran Owned + Business"}],"physical_address":{"city":"Springfield","zip_code":"72157","country_code":"USA","address_line1":"32 + Reville Rd","address_line2":"","zip_code_plus4":"9515","state_or_province_code":"AR"}},{"uei":"QTY8TUJGMM34","legal_business_name":" + ALLIANCE PRO GLOBAL LLC","cage_code":"16CA8","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"JS","description":"Small Business Joint Venture"},{"code":"JV","description":"JV + Service-Disabled Veteran-Owned Business Joint Venture"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}],"physical_address":{"city":"Owings Mills","zip_code":"21117","country_code":"USA","address_line1":"11240 + Reisterstown Rd","address_line2":"","zip_code_plus4":"1965","state_or_province_code":"MD"}},{"uei":"NZQ7T5A89WP3","legal_business_name":" + ARMY LEGEND CLEANERS LLC","cage_code":"18LK9","business_types":[{"code":"23","description":"Minority + Owned Business"},{"code":"27","description":"Self Certified Small Disadvantaged + Business"},{"code":"2X","description":"For Profit Organization"},{"code":"A5","description":"Veteran + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"},{"code":"PI","description":"Hispanic American Owned"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}],"physical_address":{"city":"Vine Grove","zip_code":"40175","country_code":"USA","address_line1":"65 + Shacklette Ct","address_line2":"","zip_code_plus4":"1081","state_or_province_code":"KY"}},{"uei":"P6KLKJWXNGD5","legal_business_name":" + AccessIT Group, LLC.","cage_code":"3DCC1","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"F","description":"Business or Organization"}],"physical_address":{"city":"King + of Prussia","zip_code":"19406","country_code":"USA","address_line1":"2000 + Valley Forge Cir Ste 106","address_line2":"","zip_code_plus4":"4526","state_or_province_code":"PA"}},{"uei":"ER55X1L9EBZ7","legal_business_name":" + Andrews Consulting Services LLC","cage_code":"18P33","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"8W","description":"Woman Owned Small Business"},{"code":"A2","description":"Woman + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"}],"physical_address":{"city":"Poteau","zip_code":"74953","country_code":"USA","address_line1":"22680 + Cabot Ln","address_line2":"","zip_code_plus4":"7825","state_or_province_code":"OK"}}]}' headers: CF-RAY: - - 99f88c6dddc4a1ee-MSP + - 9d71a728ea00fc89-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:08 GMT + - Wed, 04 Mar 2026 14:43:23 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=WWXFgXnNoEq%2FXsbIK2AobKJkmOUHKwDQ%2BbVyOGCrIdmHj1UiRgCG0qNTML8Rd9dYpZuDGVjvVpr0qtOUl6t7AoExSmTKWncQbGA5SK33azLrVyP1xYoo9zoHxg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=xC5mrJlfA9nWCwyxzMdOtMog2RPMdkHItUQIuQd7L67XwBaPtRe%2BanUOtCLUGmnXpRro3RVFSurXxb%2B%2FXAehiQY%2BCbqEmUi2Hr4lo5SOzXqeAoz4dM2Qs6Ai"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '3292' + - '3318' cross-origin-opener-policy: - same-origin referrer-policy: @@ -80,27 +78,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.026s + - 0.019s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '966' + - '973' x-ratelimit-burst-reset: - - '45' + - '25' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998659' + - '1999733' x-ratelimit-daily-reset: - - '78' + - '84985' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '966' + - '973' x-ratelimit-reset: - - '45' + - '25' status: code: 200 message: OK diff --git a/tests/cassettes/TestForecastsIntegration.test_forecast_field_types b/tests/cassettes/TestForecastsIntegration.test_forecast_field_types index 4773ed2..a7022b8 100644 --- a/tests/cassettes/TestForecastsIntegration.test_forecast_field_types +++ b/tests/cassettes/TestForecastsIntegration.test_forecast_field_types @@ -16,42 +16,40 @@ interactions: uri: https://tango.makegov.com/api/forecasts/?page=1&limit=10&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus response: body: - string: '{"count":12610,"next":"http://tango.makegov.com/api/forecasts/?limit=10&page=2&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus","previous":null,"results":[{"id":12641,"title":"WHTF - World Cup 2026 Bulk Room Block","anticipated_award_date":"2025-11-24","fiscal_year":2026,"naics_code":"721110","status":null},{"id":12612,"title":"CAEIO - Recompete","anticipated_award_date":"2099-09-09","fiscal_year":2099,"naics_code":null,"status":"Acquisition - Planning"},{"id":12611,"title":"9mm RHTA AMMUNITION","anticipated_award_date":"2025-11-24","fiscal_year":2026,"naics_code":"332992","status":null},{"id":12610,"title":"BG252 - Swimming Pool Improvements","anticipated_award_date":"2025-12-31","fiscal_year":2026,"naics_code":"236220","status":null},{"id":12609,"title":"Telecommunications - Support for USCG Pacific Area/Southwest District Command Center","anticipated_award_date":"2025-12-31","fiscal_year":2026,"naics_code":"541512","status":null},{"id":12608,"title":"Inmarsat - Fleet Broadband (FBB) SIM Shared Corp Allowance Plan (SCAP)","anticipated_award_date":"2025-12-15","fiscal_year":2026,"naics_code":"517410","status":null},{"id":12607,"title":"Region - 4 Administrative Support Services","anticipated_award_date":"2026-01-15","fiscal_year":2026,"naics_code":"561110","status":null},{"id":12606,"title":"Targeting - Operations Division - Lead Development and Open-Source Intelligence Analysis","anticipated_award_date":"2026-05-08","fiscal_year":2026,"naics_code":"561990","status":null},{"id":12605,"title":"Audio - Visual Equipment","anticipated_award_date":"2025-12-01","fiscal_year":2026,"naics_code":"334310","status":null},{"id":12604,"title":"20V4000M93L - MTU Parts","anticipated_award_date":"2026-01-14","fiscal_year":2026,"naics_code":"333618","status":null}]}' + string: '{"count":14807,"next":"https://tango.makegov.com/api/forecasts/?limit=10&page=2&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus","previous":null,"results":[{"id":13931,"title":"PIDC + Range Targeting and Bullet Trap Systems","anticipated_award_date":"2026-04-01","fiscal_year":2026,"naics_code":"238990","status":null},{"id":13930,"title":"Enterprise + Gateway and Integration Services (EGIS) III","anticipated_award_date":"2027-03-01","fiscal_year":2027,"naics_code":"541512","status":null},{"id":13929,"title":"Base + Operation Support Services for Air Station Barbers Point","anticipated_award_date":"2026-03-23","fiscal_year":2026,"naics_code":"561210","status":null},{"id":13928,"title":"MH-60T + Jayhawk Flight Training Devices (FTD)","anticipated_award_date":"2026-07-01","fiscal_year":2026,"naics_code":"333310","status":null},{"id":13927,"title":"USCG + Cloud Center of Excellence","anticipated_award_date":"2026-03-31","fiscal_year":2026,"naics_code":"518210","status":null},{"id":13926,"title":"Overhaul + of Gear Boxes","anticipated_award_date":"2026-08-17","fiscal_year":2026,"naics_code":"336413","status":null},{"id":13925,"title":"Entrust + Maintenance License Renewals","anticipated_award_date":"2026-03-31","fiscal_year":2026,"naics_code":"541519","status":null},{"id":13924,"title":"IRIS + & MORIS Access","anticipated_award_date":"2026-03-06","fiscal_year":2026,"naics_code":"541519","status":null},{"id":13923,"title":"Akamai + Distributed Denial of Service (DDoS) Solution-Brand Name Only","anticipated_award_date":"2026-03-13","fiscal_year":2026,"naics_code":"541519","status":null},{"id":13922,"title":"Enterprise + Business Management Support Services","anticipated_award_date":"2026-04-27","fiscal_year":2026,"naics_code":"541990","status":null}]}' headers: CF-RAY: - - 99f88c81af9b4c92-MSP + - 9d71a73cded6a1ca-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:11 GMT + - Wed, 04 Mar 2026 14:43:26 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=bH%2BdJ9vPAOU7joMhU3x%2FBDE1B5yAZdmg%2BdTt9Oyz8joho1SfOCyta%2FUbqsthJ7DLXLT59%2BQ8l4htE%2BsHNwyx5%2BjZcWBnXdLPgLLPEJ8JyNs6I77%2FATvSTqDyew%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=mcRNzcH8iLBkxc4s5nmoLXMUwfLPwu%2BJbfZPJVl1hzg3tevDagZmIHLbN7sZZNETO9S2xkAnmUTdGwzGRme5wx3UICnAuI%2Ba3IGTGb4jaYi5VbU1Qfk42aqK"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1790' + - '1783' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.026s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '956' + - '958' x-ratelimit-burst-reset: - - '42' + - '22' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998649' + - '1999718' x-ratelimit-daily-reset: - - '75' + - '84982' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '956' + - '958' x-ratelimit-reset: - - '42' + - '22' status: code: 200 message: OK diff --git a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[custom-id,title,anticipated_award_date] b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[custom-id,title,anticipated_award_date] index b688cb3..a5601c7 100644 --- a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[custom-id,title,anticipated_award_date] +++ b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[custom-id,title,anticipated_award_date] @@ -16,37 +16,35 @@ interactions: uri: https://tango.makegov.com/api/forecasts/?page=1&limit=5&shape=id%2Ctitle%2Canticipated_award_date response: body: - string: '{"count":12610,"next":"http://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Ctitle%2Canticipated_award_date","previous":null,"results":[{"id":12641,"title":"WHTF - World Cup 2026 Bulk Room Block","anticipated_award_date":"2025-11-24"},{"id":12612,"title":"CAEIO - Recompete","anticipated_award_date":"2099-09-09"},{"id":12611,"title":"9mm - RHTA AMMUNITION","anticipated_award_date":"2025-11-24"},{"id":12610,"title":"BG252 - Swimming Pool Improvements","anticipated_award_date":"2025-12-31"},{"id":12609,"title":"Telecommunications - Support for USCG Pacific Area/Southwest District Command Center","anticipated_award_date":"2025-12-31"}]}' + string: '{"count":14807,"next":"https://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Ctitle%2Canticipated_award_date","previous":null,"results":[{"id":13931,"title":"PIDC + Range Targeting and Bullet Trap Systems","anticipated_award_date":"2026-04-01"},{"id":13930,"title":"Enterprise + Gateway and Integration Services (EGIS) III","anticipated_award_date":"2027-03-01"},{"id":13929,"title":"Base + Operation Support Services for Air Station Barbers Point","anticipated_award_date":"2026-03-23"},{"id":13928,"title":"MH-60T + Jayhawk Flight Training Devices (FTD)","anticipated_award_date":"2026-07-01"},{"id":13927,"title":"USCG + Cloud Center of Excellence","anticipated_award_date":"2026-03-31"}]}' headers: CF-RAY: - - 99f88c807beda209-MSP + - 9d71a73b8c564c9c-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:11 GMT + - Wed, 04 Mar 2026 14:43:26 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=6lWb1neeTiCHyBCdon%2BgkjTLSoaiggBnn7EL32P3bau3DrwkDxe0b17rlC9OCByHgipzQ3UM%2F8eOYtI6OAOVkT7AafLe4mYvdbIxEqCVvvHRoDC28n3%2FD%2BnRQA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=frXNf%2BUj5joO3ZOg%2FjrBIGyCEGoSzWzqSaBWHT7mdWE%2BBdxIU08UHSoxnFMU5krd%2Bv35JWNGFJHjL5FsZa03j0YE4J4icM%2B%2Byb7nm%2BqO75lu26BtaWsJw1j0"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '642' + - '694' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.025s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '956' + - '959' x-ratelimit-burst-reset: - - '42' + - '22' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998649' + - '1999719' x-ratelimit-daily-reset: - - '75' + - '84982' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '956' + - '959' x-ratelimit-reset: - - '42' + - '22' status: code: 200 message: OK diff --git a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[default-None] b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[default-None] index 676df71..0a56b21 100644 --- a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[default-None] +++ b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[default-None] @@ -16,37 +16,35 @@ interactions: uri: https://tango.makegov.com/api/forecasts/?page=1&limit=5&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus response: body: - string: '{"count":12610,"next":"http://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus","previous":null,"results":[{"id":12641,"title":"WHTF - World Cup 2026 Bulk Room Block","anticipated_award_date":"2025-11-24","fiscal_year":2026,"naics_code":"721110","status":null},{"id":12612,"title":"CAEIO - Recompete","anticipated_award_date":"2099-09-09","fiscal_year":2099,"naics_code":null,"status":"Acquisition - Planning"},{"id":12611,"title":"9mm RHTA AMMUNITION","anticipated_award_date":"2025-11-24","fiscal_year":2026,"naics_code":"332992","status":null},{"id":12610,"title":"BG252 - Swimming Pool Improvements","anticipated_award_date":"2025-12-31","fiscal_year":2026,"naics_code":"236220","status":null},{"id":12609,"title":"Telecommunications - Support for USCG Pacific Area/Southwest District Command Center","anticipated_award_date":"2025-12-31","fiscal_year":2026,"naics_code":"541512","status":null}]}' + string: '{"count":14807,"next":"https://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus","previous":null,"results":[{"id":13931,"title":"PIDC + Range Targeting and Bullet Trap Systems","anticipated_award_date":"2026-04-01","fiscal_year":2026,"naics_code":"238990","status":null},{"id":13930,"title":"Enterprise + Gateway and Integration Services (EGIS) III","anticipated_award_date":"2027-03-01","fiscal_year":2027,"naics_code":"541512","status":null},{"id":13929,"title":"Base + Operation Support Services for Air Station Barbers Point","anticipated_award_date":"2026-03-23","fiscal_year":2026,"naics_code":"561210","status":null},{"id":13928,"title":"MH-60T + Jayhawk Flight Training Devices (FTD)","anticipated_award_date":"2026-07-01","fiscal_year":2026,"naics_code":"333310","status":null},{"id":13927,"title":"USCG + Cloud Center of Excellence","anticipated_award_date":"2026-03-31","fiscal_year":2026,"naics_code":"518210","status":null}]}' headers: CF-RAY: - - 99f88c7c9e4ead06-MSP + - 9d71a7370e51a1f4-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:10 GMT + - Wed, 04 Mar 2026 14:43:26 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=GxJBKR8edUMqPLzu5gXsqiPtGqvFwH8kLWalHVhZtVGhBVTPpxWvIhMeOojkht%2FhMsgnuaJDBkQ9EeDHU%2Bgse0eyuecaR9kHizXpVpe734g1q6wrg940%2BHZD0g%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=PgsszDAXIDVkSJS%2BASv9G%2BAHJr4485uFCS0UWaWBFbI7UdhWTdgOxubJH2cpXfvmAT%2FSV%2FOoOxM2kPDnj7vrlGHE5LZuu%2FGUiwDddNZpbtqjL%2BFV3YBdZFi6"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '967' + - '1005' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.025s + - 0.024s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '956' + - '962' x-ratelimit-burst-reset: - - '42' + - '22' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998649' + - '1999722' x-ratelimit-daily-reset: - - '75' + - '84983' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '956' + - '962' x-ratelimit-reset: - - '42' + - '22' status: code: 200 message: OK diff --git a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[detailed-id,source_system,external_id,title,description,anticipated_award_date,fiscal_year,naics_code,status,is_active] b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[detailed-id,source_system,external_id,title,description,anticipated_award_date,fiscal_year,naics_code,status,is_active] index 7a42fb2..e5291e9 100644 --- a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[detailed-id,source_system,external_id,title,description,anticipated_award_date,fiscal_year,naics_code,status,is_active] +++ b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[detailed-id,source_system,external_id,title,description,anticipated_award_date,fiscal_year,naics_code,status,is_active] @@ -16,61 +16,94 @@ interactions: uri: https://tango.makegov.com/api/forecasts/?page=1&limit=5&shape=id%2Csource_system%2Cexternal_id%2Ctitle%2Cdescription%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus%2Cis_active response: body: - string: "{\"count\":12610,\"next\":\"http://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Csource_system%2Cexternal_id%2Ctitle%2Cdescription%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus%2Cis_active\",\"previous\":null,\"results\":[{\"id\":12641,\"source_system\":\"DHS\",\"external_id\":\"72497\",\"title\":\"WHTF - World Cup 2026 Bulk Room Block\",\"description\":\"The White House Task Force - (WHTF) seeks to secure hotel standard/deluxe room blocks in all designated - U.S. cities hosting the 2026 F\xE9d\xE9ration Internationale de Football Association - (FIFA) World Cup to support personnel and operational needs during the event. - The room blocks will accommodate WHTF staff and affiliated travelers for durations - ranging from 20 to 44 days per city. This initiative aims to ensure uniform - terms, flexibility, and convenience across all cities while meeting logistical - requirements.\",\"anticipated_award_date\":\"2025-11-24\",\"fiscal_year\":2026,\"naics_code\":\"721110\",\"status\":null,\"is_active\":true},{\"id\":12612,\"source_system\":\"GSA\",\"external_id\":\"39588\",\"title\":\"CAEIO - Recompete\",\"description\":\"The CAEIO Recompete is to provide Operations - and Maintenance (O&M) of the global CA IT environment within an Information - Technology Service Management (ITSM) framework.\",\"anticipated_award_date\":\"2099-09-09\",\"fiscal_year\":2099,\"naics_code\":null,\"status\":\"Acquisition - Planning\",\"is_active\":true},{\"id\":12611,\"source_system\":\"DHS\",\"external_id\":\"72499\",\"title\":\"9mm - RHTA AMMUNITION\",\"description\":\"This requirement is for 4 million rounds - of 9MM Reduced Hazard Training Ammunition (RHTA) against existing multiple - award IDIQ contracts and will be competed between those contract holders in - accordance with FAR 16.505(b)(1) Fair Opportunity. This is not a new requirement, - nor will any solicitation be issued.\",\"anticipated_award_date\":\"2025-11-24\",\"fiscal_year\":2026,\"naics_code\":\"332992\",\"status\":null,\"is_active\":true},{\"id\":12610,\"source_system\":\"DHS\",\"external_id\":\"72334\",\"title\":\"BG252 - Swimming Pool Improvements\",\"description\":\"Interior swimming pool resurfacing, - filter system replacement and installation of a monorail hoist system.\",\"anticipated_award_date\":\"2025-12-31\",\"fiscal_year\":2026,\"naics_code\":\"236220\",\"status\":null,\"is_active\":true},{\"id\":12609,\"source_system\":\"DHS\",\"external_id\":\"70899\",\"title\":\"Telecommunications - Support for USCG Pacific Area/Southwest District Command Center\",\"description\":\"The - purpose of this contract is to obtain telecommunications support services - for Command, Control, Communications, Computers, Cyber, and Intelligence (C5I) - CLASSIFIED and UNCLASSIFIED hardware and software services for the Department - of Homeland Security, United States Coast Guard, and the District Eleven / - Pacific Area Command Center. The overall purpose of this PWS is to fully support - the District Eleven / Pacific Area Command Center in maintaining classified - and unclassified C5I support with on-site contractor support. The specific - objective is to maintain C5I continuity for the Command Center and for the - United States Coast Guard.\",\"anticipated_award_date\":\"2025-12-31\",\"fiscal_year\":2026,\"naics_code\":\"541512\",\"status\":null,\"is_active\":true}]}" + string: '{"count":14807,"next":"https://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Csource_system%2Cexternal_id%2Ctitle%2Cdescription%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus%2Cis_active","previous":null,"results":[{"id":13931,"source_system":"DHS","external_id":"73269","title":"PIDC + Range Targeting and Bullet Trap Systems","description":"Remove the old Targeting + System and install a New Targeting System. Push back existing berms and install + concrete pads for bullet traps.\r\n\r\nThe new system shall include fully + electric turning targets with electronic controls through hand held computer + systems. The controls shall include single control,\r\n\r\nmultiple target + controls, and fully automatic target controls programmability.","anticipated_award_date":"2026-04-01","fiscal_year":2026,"naics_code":"238990","status":null,"is_active":true},{"id":13930,"source_system":"DHS","external_id":"73271","title":"Enterprise + Gateway and Integration Services (EGIS) III","description":"USCIS has a requirement + for Enterprise Gateway and Integration Services (EGIS) III. Historically, + EGIS has served as the enterprise integration backbone connecting USCIS internal + systems with Department of Homeland Security (DHS), interagency, and external + partners. While this core mission remains critical, EGIS will also expand + this role supporting national security, immigration system integrity and advanced + adjudication operations with key mission including: National security vetting + and evolving immigration policies; screening immigration benefit applicants; + protecting immigration benefits and work authorization integrity; advanced + data integration, analytics, AI-enabled anomaly detection, and decision support; + agility, rapid delivery, operational excellence, transparency, and reduced + duplication; fraud detection, risk scoring, and investigative data workflows. + \r\nAs of 3/3/2026 we are in the market research/ acquisition planning phase + of this acquisition, as such, some of the APFS fields may change over the + coming months. This record will continually be updated once changes to the + strategy are known.","anticipated_award_date":"2027-03-01","fiscal_year":2027,"naics_code":"541512","status":null,"is_active":true},{"id":13929,"source_system":"DHS","external_id":"73270","title":"Base + Operation Support Services for Air Station Barbers Point","description":"Provide + facilities maintenance, services and support for U.S. Coast Guard AIRSTA Barbers + which occupies over 58 acres with several buildings totaling over 105,000 + square feet of floor space. Types of structures include but are not limited + to: aircraft hangars, office buildings, warehouses, fuel storage tanks, industrial + shops, a galley, crew berthing area, equipment storage sheds, recreational + facilities and appurtenances serving the Coast Guard.\r\n\r\nThe contractor + will provide preventive and routine maintenance services for fire protection + systems, security and CCTV systems, grounds maintenance, oil water separator + & used cooking oil disposal/grease trap maintenance, food service equipment, + water treatment systems, HVAC & compressed air systems, floor scrubber/sweeper + equipment, fuel storage & distribution system, pavement sweeping service, + pest control service, janitorial service, laundry service, refuse disposal + service, and material handling equipment. The contract will include an IDIQ + component for corrective maintenance and repair needs related to these services.","anticipated_award_date":"2026-03-23","fiscal_year":2026,"naics_code":"561210","status":null,"is_active":true},{"id":13928,"source_system":"DHS","external_id":"73256","title":"MH-60T + Jayhawk Flight Training Devices (FTD)","description":"The United States Coast + Guard (USCG) is seeking a comprehensive, state-of-the-art training solution + to modernize the training infrastructure for its MH-60T Jayhawk helicopter + fleet. The contractor will serve as the systems integrator, responsible for + the design, fabrication, delivery, installation, integration, testing, and + support of a suite of three distinct, yet interoperable, advanced training + devices.\r\n\r\nThis acquisition will enhance the operational readiness, safety, + and mission effectiveness of both pilots and rear-crew members. The objective + is to provide comprehensive, high-fidelity training for a full spectrum of + mission scenarios, including search and rescue (SAR), emergency procedures, + and hoist operations, in a safe, repeatable, and cost-effective environment.\r\n\r\nThe + core of the requirement is the delivery of a turnkey solution that includes + three training systems:\r\n\r\nOne (1) MH-60T Level 7 Flight Training Device + (FTD): A high-fidelity, fixed-base flight simulator that fully replicates + the MH-60T cockpit and systems for pilot and aircrew procedure training.\r\nOne + (1) Hoist Mission Training System (HMTS): A full-size, immersive, mixed-reality + trainer designed for realistic SAR and hoist operations training for rear-crew + members.\r\nOne (1) Portable Hoist Mission Training System (P-HMTS): A modular, + transportable version of the hoist trainer that enables mobile and distributed + training capabilities.","anticipated_award_date":"2026-07-01","fiscal_year":2026,"naics_code":"333310","status":null,"is_active":true},{"id":13927,"source_system":"DHS","external_id":"72987","title":"USCG + Cloud Center of Excellence","description":"The United States Coast Guard (USCG) + Cloud Center of Excellence (CCoE) will serve as the strategic and operational + hub for all USCG cloud initiatives. Designed to align with Department of Homeland + Security (DHS) enterprise priorities and the strategic imperatives of Force + Design 2028 (FD2028), the CCoE will architect secure, resilient, and interoperable + cloud environments that support mission continuity across USCG terrestrial, + maritime, and airborne components.","anticipated_award_date":"2026-03-31","fiscal_year":2026,"naics_code":"518210","status":null,"is_active":true}]}' headers: CF-RAY: - - 99f88c7f2a47b45f-MSP + - 9d71a73a6f09a1e5-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:11 GMT + - Wed, 04 Mar 2026 14:43:26 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AlvlhAJB0oJNwKPZiW5wuiVjjIuHAlxIdg3ohvv7b5SViJDO7H%2FYECc1CCRslppY3T1H5Ij%2B7QLe7qtM5HpzZ4xCUhhjc92j9tln%2B7iyQmXxw4yTAoneKaL5%2FQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=lsv6zIFQvEeefi5N9Clbg2M7ton%2F84m92%2FrWKhINn9J60eADAqTeffmJGDMW77VTCg4Y%2Bvc2TSb6I7v%2FZld%2FaI02wOTRZYNA60LWoLSh6Beb0IKxVenxViwl"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '3152' + - '5967' cross-origin-opener-policy: - same-origin referrer-policy: @@ -80,27 +113,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.026s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '956' + - '960' x-ratelimit-burst-reset: - - '42' + - '22' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998649' + - '1999720' x-ratelimit-daily-reset: - - '75' + - '84982' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '956' + - '960' x-ratelimit-reset: - - '42' + - '22' status: code: 200 message: OK diff --git a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[minimal-id,title,anticipated_award_date,fiscal_year,naics_code,status] b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[minimal-id,title,anticipated_award_date,fiscal_year,naics_code,status] index 8251b09..3fe0382 100644 --- a/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[minimal-id,title,anticipated_award_date,fiscal_year,naics_code,status] +++ b/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[minimal-id,title,anticipated_award_date,fiscal_year,naics_code,status] @@ -16,37 +16,35 @@ interactions: uri: https://tango.makegov.com/api/forecasts/?page=1&limit=5&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus response: body: - string: '{"count":12610,"next":"http://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus","previous":null,"results":[{"id":12641,"title":"WHTF - World Cup 2026 Bulk Room Block","anticipated_award_date":"2025-11-24","fiscal_year":2026,"naics_code":"721110","status":null},{"id":12612,"title":"CAEIO - Recompete","anticipated_award_date":"2099-09-09","fiscal_year":2099,"naics_code":null,"status":"Acquisition - Planning"},{"id":12611,"title":"9mm RHTA AMMUNITION","anticipated_award_date":"2025-11-24","fiscal_year":2026,"naics_code":"332992","status":null},{"id":12610,"title":"BG252 - Swimming Pool Improvements","anticipated_award_date":"2025-12-31","fiscal_year":2026,"naics_code":"236220","status":null},{"id":12609,"title":"Telecommunications - Support for USCG Pacific Area/Southwest District Command Center","anticipated_award_date":"2025-12-31","fiscal_year":2026,"naics_code":"541512","status":null}]}' + string: '{"count":14807,"next":"https://tango.makegov.com/api/forecasts/?limit=5&page=2&shape=id%2Ctitle%2Canticipated_award_date%2Cfiscal_year%2Cnaics_code%2Cstatus","previous":null,"results":[{"id":13931,"title":"PIDC + Range Targeting and Bullet Trap Systems","anticipated_award_date":"2026-04-01","fiscal_year":2026,"naics_code":"238990","status":null},{"id":13930,"title":"Enterprise + Gateway and Integration Services (EGIS) III","anticipated_award_date":"2027-03-01","fiscal_year":2027,"naics_code":"541512","status":null},{"id":13929,"title":"Base + Operation Support Services for Air Station Barbers Point","anticipated_award_date":"2026-03-23","fiscal_year":2026,"naics_code":"561210","status":null},{"id":13928,"title":"MH-60T + Jayhawk Flight Training Devices (FTD)","anticipated_award_date":"2026-07-01","fiscal_year":2026,"naics_code":"333310","status":null},{"id":13927,"title":"USCG + Cloud Center of Excellence","anticipated_award_date":"2026-03-31","fiscal_year":2026,"naics_code":"518210","status":null}]}' headers: CF-RAY: - - 99f88c7dea93a206-MSP + - 9d71a7391a3f4c92-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:10 GMT + - Wed, 04 Mar 2026 14:43:26 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=VMtqOQtW%2BMOkFwZml%2F32ZqRaJaU9iJBsIfFGqSAZ%2BBEwEF2GVHnnxUZ5lIhXF7wNqtJON%2BmXTTBM%2FF5kZCcLdCDKoUcxe%2BjGC%2FlV%2F83Rz7jbMZlEwGZo085nHg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=yzkgu2V6cu1tnfKPZRhdFdJck%2Ft%2BDfBJhw5tI3E6GZOBqZ4Z6YIY1eBmr2brbOIX04rAFt1tkZEFhvEeoWFAmmYsN6%2BpRYFaat28n96OCiS%2BNxelTXer8yo0"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '967' + - '1005' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.024s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '956' + - '961' x-ratelimit-burst-reset: - - '42' + - '22' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998649' + - '1999721' x-ratelimit-daily-reset: - - '75' + - '84982' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '956' + - '961' x-ratelimit-reset: - - '42' + - '22' status: code: 200 message: OK diff --git a/tests/cassettes/TestGrantsIntegration.test_grant_field_types b/tests/cassettes/TestGrantsIntegration.test_grant_field_types index 2e68837..71f3a21 100644 --- a/tests/cassettes/TestGrantsIntegration.test_grant_field_types +++ b/tests/cassettes/TestGrantsIntegration.test_grant_field_types @@ -16,33 +16,31 @@ interactions: uri: https://tango.makegov.com/api/grants/?page=1&limit=1&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code response: body: - string: '{"count":2690,"next":"http://tango.makegov.com/api/grants/?limit=1&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":360862,"opportunity_number":"DE-FOA-0003390","title":"Infrastructure - Investment and Jobs Act (IIJA): Mine of the Future - Proving Ground Initiative","agency_code":"DOE-NETL","status":{"code":"P","description":"Posted"}}]}' + string: '{"count":3088,"next":"https://tango.makegov.com/api/grants/?limit=1&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":361395,"opportunity_number":"USAFCPFREEDOM250","title":"U.S. + Ambassadors Fund for Cultural Preservation Freedom 250","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}}]}' headers: CF-RAY: - - 99f95d2c7fec2706-YYZ + - 9d71a7442f507816-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 19:23:38 GMT + - Wed, 04 Mar 2026 14:43:28 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=qLyE5QTSogducXq4pGdMdL4PcNRuF0bm2SzdjZV7Vm3ruFEtwcsJZKCljioLHlzSzFIZTxDaNiTZyRtw9CX44iWzJoq2A2r2vTz09ZDEpDwfCRCBw8f%2FSa8o%2FQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=BMaOVYZRCfF6L72Vayv8JNlFd0Ej6WuZDCO4HaV9%2BzTdc5jyAnVP9Q4cqmOxkXcs8Uh7SZa%2Fe4MpnCI4ALHCX3ohSvUgjt%2ByA4CsRlETN4mnKDdLa5teMbMI"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '411' + - '379' cross-origin-opener-policy: - same-origin referrer-policy: @@ -52,27 +50,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.027s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '995' + - '953' x-ratelimit-burst-reset: - - '58' + - '20' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998707' + - '1999713' x-ratelimit-daily-reset: - - '832' + - '84981' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '995' + - '953' x-ratelimit-reset: - - '58' + - '20' status: code: 200 message: OK diff --git a/tests/cassettes/TestGrantsIntegration.test_grant_pagination b/tests/cassettes/TestGrantsIntegration.test_grant_pagination index 6044e87..b6c98bc 100644 --- a/tests/cassettes/TestGrantsIntegration.test_grant_pagination +++ b/tests/cassettes/TestGrantsIntegration.test_grant_pagination @@ -16,41 +16,35 @@ interactions: uri: https://tango.makegov.com/api/grants/?page=1&limit=5&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code response: body: - string: '{"count":2690,"next":"http://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":360862,"opportunity_number":"DE-FOA-0003390","title":"Infrastructure - Investment and Jobs Act (IIJA): Mine of the Future - Proving Ground Initiative","agency_code":"DOE-NETL","status":{"code":"P","description":"Posted"}},{"grant_id":360863,"opportunity_number":"DE-FOA-0003583","title":"Infrastructure - Investment and Jobs Act (IIJA) – Mines & Metals Capacity Expansion - – Piloting Byproduct Critical Minerals and Materials Recovery at Domestic - Industrial Facilities","agency_code":"DOE-NETL","status":{"code":"P","description":"Posted"}},{"grant_id":360861,"opportunity_number":"FR-6900-N-25","title":"FY - 2025 Continuum of Care Competition and Youth Homeless Demonstration Program - Grants NOFO","agency_code":"HUD","status":{"code":"P","description":"Posted"}},{"grant_id":360851,"opportunity_number":"ED-GRANTS-111225-001","title":"Office - of Postsecondary Education (OPE): Fund for the Improvement of Postsecondary - Education (FIPSE): Special Projects; Assistance Listing Number (ALN) 84.116J","agency_code":"ED","status":{"code":"P","description":"Posted"}},{"grant_id":345316,"opportunity_number":"2026TTPSF","title":"2026 - Tribal Transportation Program Safety Fund","agency_code":"DOT-FHWA","status":{"code":"P","description":"Posted"}}]}' + string: '{"count":3088,"next":"https://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":361395,"opportunity_number":"USAFCPFREEDOM250","title":"U.S. + Ambassadors Fund for Cultural Preservation Freedom 250","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}},{"grant_id":361394,"opportunity_number":"PAR-26-119","title":"NEI + Collaborative Clinical Vision Research (UG1 - Clinical Trial Optional)","agency_code":"HHS-NIH11","status":{"code":"F","description":"Forecasted"}},{"grant_id":361393,"opportunity_number":"DE-FOA-0003602","title":"Early + Career Research Program (ECRP)","agency_code":"PAMS-SC","status":{"code":"P","description":"Posted"}},{"grant_id":361398,"opportunity_number":"DFOP0017856","title":"FY + 2026 J. Christopher Stevens Virtual Exchange Initiative (JCSVEI) Program","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}},{"grant_id":361402,"opportunity_number":"DFOP0017868","title":"FY + 2026 American Film Showcase","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}}]}' headers: CF-RAY: - - 99f95d2e1b3ba20a-YYZ + - 9d71a7455af4acd0-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 19:23:38 GMT + - Wed, 04 Mar 2026 14:43:28 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=F6B6MttsgGvxTHipJYSEP1nA6xSCK%2BVkC5bdRDt73dEWbO3anpycN1YpziAeLXBN3bkb73NYKDP1REUcDqiddQHpcpgLIl0j1DxNxqPLMipMvO1ywom%2FBuYSMg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=e0b4yNFdU2dTaWDhHMyC%2FEKrVPcVLKR0bijGm%2FTLgNLl7nESWXzHut2jFA2SS5mEpIEaY3nphTjQkyizz3GB%2Bc9ngNIMVKRF3MB8yyWAHMJY7%2BAhH%2BHkL8zY"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1444' + - '1144' cross-origin-opener-policy: - same-origin referrer-policy: @@ -60,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.027s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '994' + - '952' x-ratelimit-burst-reset: - - '58' + - '20' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998706' + - '1999712' x-ratelimit-daily-reset: - - '832' + - '84980' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '994' + - '952' x-ratelimit-reset: - - '58' + - '20' status: code: 200 message: OK @@ -101,40 +95,35 @@ interactions: uri: https://tango.makegov.com/api/grants/?page=2&limit=5&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code response: body: - string: '{"count":2690,"next":"http://tango.makegov.com/api/grants/?limit=5&page=3&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":"http://tango.makegov.com/api/grants/?limit=5&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","results":[{"grant_id":360833,"opportunity_number":"DHS-FEMA-C-UAS-161","title":"Counter-Unmanned - Aircraft Systems (C-UAS) Grant Program","agency_code":"DHS-DHS","status":{"code":"P","description":"Posted"}},{"grant_id":360832,"opportunity_number":"DHS-FEMA-FWCGP-160","title":"FIFA - World Cup Grant Program (FWCGP)","agency_code":"DHS-DHS","status":{"code":"P","description":"Posted"}},{"grant_id":360836,"opportunity_number":"FR-CCD-24-013","title":"FY24 - CRISI Congressionally Directed - City of Belvidere","agency_code":"DOT-FRA","status":{"code":"P","description":"Posted"}},{"grant_id":360835,"opportunity_number":"CDC-RFA-JG-26-0156","title":"Strengthening - and modernizing sustainable public health systems and workforce in Uganda - for data science, informatics, implementation science and surveys, and surveillance - for timely, accurate, and integrated data for action under PEPFAR","agency_code":"HHS-CDC-GHC","status":{"code":"F","description":"Forecasted"}},{"grant_id":360834,"opportunity_number":"FR-CCD-24-009","title":"FY24 - CRS Congressionally Directed Spending-Track Intrusion System and Positive - Train Control Project, CA","agency_code":"DOT-FRA","status":{"code":"P","description":"Posted"}}]}' + string: '{"count":3088,"next":"https://tango.makegov.com/api/grants/?limit=5&page=3&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":"https://tango.makegov.com/api/grants/?limit=5&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","results":[{"grant_id":361400,"opportunity_number":"DFOP0017860","title":"FY + 2026 Leaders Lead On-Demand","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}},{"grant_id":360889,"opportunity_number":"CDC-RFA-CE21-210206CONT26","title":"Drug-Free + Communities (DFC) Support Program – COMPETING CONTINUATION (Year 6)","agency_code":"HHS-CDC-NCIPC","status":{"code":"P","description":"Posted"}},{"grant_id":361404,"opportunity_number":"O-OVW-2026-172530","title":"OVW + Fiscal Year 2026 Invitation to Apply Administrative Funding Adjustment 1","agency_code":"USDOJ-OJP-OVW","status":{"code":"P","description":"Posted"}},{"grant_id":361407,"opportunity_number":"PDS-DOS-GEO-FY26-01","title":"Ambassador''s + Fund for Cultural Preservation","agency_code":"DOS-GEO","status":{"code":"P","description":"Posted"}},{"grant_id":361396,"opportunity_number":"DFOP0017848","title":"FY + 2026 English Access Scholarship Program","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}}]}' headers: CF-RAY: - - 99f95d2edbc4a20a-YYZ + - 9d71a7464c3facd0-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 19:23:38 GMT + - Wed, 04 Mar 2026 14:43:28 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=xAU9jGsa09wR0LlAigy7wNDdhNoRtLrN7ypqd4QJ%2BQpDU%2FqO0x0rpykFA9OOLWTXyuRCmlA9Dz1lNtXAD77LeYBveajsomWriPaT4K7LEEzPxX86N0oA6f3nyw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=FyxLf2WhRSSNReJ0mei33oLN4YJJPZQNcCEGcSvhfi%2BWp54j0CdXdac%2B99q1NlggXVWZK93EodolyW%2FFUKQclLZpXpEZPB%2B4nt4Lb02GNVNHToYWBr4kmCX5"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1492' + - '1288' cross-origin-opener-policy: - same-origin referrer-policy: @@ -144,27 +133,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.027s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '993' + - '951' x-ratelimit-burst-reset: - - '58' + - '20' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998705' + - '1999711' x-ratelimit-daily-reset: - - '832' + - '84980' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '993' + - '951' x-ratelimit-reset: - - '58' + - '20' status: code: 200 message: OK diff --git a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[custom-grant_id,title,opportunity_number] b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[custom-grant_id,title,opportunity_number] index f88ab4e..dd1f27b 100644 --- a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[custom-grant_id,title,opportunity_number] +++ b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[custom-grant_id,title,opportunity_number] @@ -16,41 +16,35 @@ interactions: uri: https://tango.makegov.com/api/grants/?page=1&limit=5&shape=grant_id%2Ctitle%2Copportunity_number response: body: - string: '{"count":2690,"next":"http://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Ctitle%2Copportunity_number","previous":null,"results":[{"grant_id":360862,"title":"Infrastructure - Investment and Jobs Act (IIJA): Mine of the Future - Proving Ground Initiative","opportunity_number":"DE-FOA-0003390"},{"grant_id":360863,"title":"Infrastructure - Investment and Jobs Act (IIJA) – Mines & Metals Capacity Expansion - – Piloting Byproduct Critical Minerals and Materials Recovery at Domestic - Industrial Facilities","opportunity_number":"DE-FOA-0003583"},{"grant_id":360861,"title":"FY - 2025 Continuum of Care Competition and Youth Homeless Demonstration Program - Grants NOFO","opportunity_number":"FR-6900-N-25"},{"grant_id":360851,"title":"Office - of Postsecondary Education (OPE): Fund for the Improvement of Postsecondary - Education (FIPSE): Special Projects; Assistance Listing Number (ALN) 84.116J","opportunity_number":"ED-GRANTS-111225-001"},{"grant_id":345316,"title":"2026 - Tribal Transportation Program Safety Fund","opportunity_number":"2026TTPSF"}]}' + string: '{"count":3088,"next":"https://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Ctitle%2Copportunity_number","previous":null,"results":[{"grant_id":361395,"title":"U.S. + Ambassadors Fund for Cultural Preservation Freedom 250","opportunity_number":"USAFCPFREEDOM250"},{"grant_id":361394,"title":"NEI + Collaborative Clinical Vision Research (UG1 - Clinical Trial Optional)","opportunity_number":"PAR-26-119"},{"grant_id":361393,"title":"Early + Career Research Program (ECRP)","opportunity_number":"DE-FOA-0003602"},{"grant_id":361398,"title":"FY + 2026 J. Christopher Stevens Virtual Exchange Initiative (JCSVEI) Program","opportunity_number":"DFOP0017856"},{"grant_id":361402,"title":"FY + 2026 American Film Showcase","opportunity_number":"DFOP0017868"}]}' headers: CF-RAY: - - 99f95d2afc5fa1de-YYZ + - 9d71a742e8914c9e-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 19:23:38 GMT + - Wed, 04 Mar 2026 14:43:27 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=06lJ7dU0cgrEWK5EHqacLc48K1HP4UoOLS%2BW%2FdU9%2FCBWGo6VPdC97IaEjm5r3q1eOy1Htj11hFFh8MixvmuRji3qboVbhHhYFLuRbw8LRXjlCTKy0u1IQ%2F0XeA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ab%2FDvHWAicCvXv8Yrbiv4Luax6uH%2FOdt%2FBh2daNp3DIYQuY29dG7nRfOFVCaDOWr5uuhDd928%2BmdwJaOaMYTRcMuetI4YWgJ0qU7Mu9BUeAgOrZ2GpLDxq4H"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1073' + - '761' cross-origin-opener-policy: - same-origin referrer-policy: @@ -60,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.029s + - 0.020s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '996' + - '954' x-ratelimit-burst-reset: - - '59' + - '21' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998708' + - '1999714' x-ratelimit-daily-reset: - - '832' + - '84981' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '996' + - '954' x-ratelimit-reset: - - '59' + - '21' status: code: 200 message: OK diff --git a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[default-None] b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[default-None] index 33a9672..0b86b0e 100644 --- a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[default-None] +++ b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[default-None] @@ -16,41 +16,35 @@ interactions: uri: https://tango.makegov.com/api/grants/?page=1&limit=5&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code response: body: - string: '{"count":2690,"next":"http://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":360862,"opportunity_number":"DE-FOA-0003390","title":"Infrastructure - Investment and Jobs Act (IIJA): Mine of the Future - Proving Ground Initiative","agency_code":"DOE-NETL","status":{"code":"P","description":"Posted"}},{"grant_id":360863,"opportunity_number":"DE-FOA-0003583","title":"Infrastructure - Investment and Jobs Act (IIJA) – Mines & Metals Capacity Expansion - – Piloting Byproduct Critical Minerals and Materials Recovery at Domestic - Industrial Facilities","agency_code":"DOE-NETL","status":{"code":"P","description":"Posted"}},{"grant_id":360861,"opportunity_number":"FR-6900-N-25","title":"FY - 2025 Continuum of Care Competition and Youth Homeless Demonstration Program - Grants NOFO","agency_code":"HUD","status":{"code":"P","description":"Posted"}},{"grant_id":360851,"opportunity_number":"ED-GRANTS-111225-001","title":"Office - of Postsecondary Education (OPE): Fund for the Improvement of Postsecondary - Education (FIPSE): Special Projects; Assistance Listing Number (ALN) 84.116J","agency_code":"ED","status":{"code":"P","description":"Posted"}},{"grant_id":345316,"opportunity_number":"2026TTPSF","title":"2026 - Tribal Transportation Program Safety Fund","agency_code":"DOT-FHWA","status":{"code":"P","description":"Posted"}}]}' + string: '{"count":3088,"next":"https://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":361395,"opportunity_number":"USAFCPFREEDOM250","title":"U.S. + Ambassadors Fund for Cultural Preservation Freedom 250","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}},{"grant_id":361394,"opportunity_number":"PAR-26-119","title":"NEI + Collaborative Clinical Vision Research (UG1 - Clinical Trial Optional)","agency_code":"HHS-NIH11","status":{"code":"F","description":"Forecasted"}},{"grant_id":361393,"opportunity_number":"DE-FOA-0003602","title":"Early + Career Research Program (ECRP)","agency_code":"PAMS-SC","status":{"code":"P","description":"Posted"}},{"grant_id":361398,"opportunity_number":"DFOP0017856","title":"FY + 2026 J. Christopher Stevens Virtual Exchange Initiative (JCSVEI) Program","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}},{"grant_id":361402,"opportunity_number":"DFOP0017868","title":"FY + 2026 American Film Showcase","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}}]}' headers: CF-RAY: - - 99f95d25db7f36ac-YYZ + - 9d71a73e1d035116-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 19:23:37 GMT + - Wed, 04 Mar 2026 14:43:27 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=1MbOpSjl122fa0XrDdb6kR0Pm3jF7UNWGacn8%2BmFeolWpdP5mUXngCafpkGS2tPgUXFS%2BobaeFmlM5wD2DULTQjNvd%2FImyoD2x5yIOtTbebh3aMLK925bxXV0Q%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=8v93a1qasYxAUFEWiEanXOw40UDNd4yAmL%2FuLkN%2BB7gEjxqqOr5KbTTDrJd2dXPSZGmXgexzvxbnDXW34dBuW6BeVrnclKxa%2F%2FDFJ%2FCKyNVr28JYeYndJ5fe"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1444' + - '1144' cross-origin-opener-policy: - same-origin referrer-policy: @@ -60,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.026s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '999' + - '957' x-ratelimit-burst-reset: - - '59' + - '21' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998711' + - '1999717' x-ratelimit-daily-reset: - - '833' + - '84982' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '999' + - '957' x-ratelimit-reset: - - '59' + - '21' status: code: 200 message: OK diff --git a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[detailed-grant_id,opportunity_number,title,status(-),agency_code,description,last_updated,cfda_numbers(number,title),applicant_types(-),funding_categories(-)] b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[detailed-grant_id,opportunity_number,title,status(-),agency_code,description,last_updated,cfda_numbers(number,title),applicant_types(-),funding_categories(-)] index f50a42d..c0f6c8d 100644 --- a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[detailed-grant_id,opportunity_number,title,status(-),agency_code,description,last_updated,cfda_numbers(number,title),applicant_types(-),funding_categories(-)] +++ b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[detailed-grant_id,opportunity_number,title,status(-),agency_code,description,last_updated,cfda_numbers(number,title),applicant_types(-),funding_categories(-)] @@ -16,133 +16,198 @@ interactions: uri: https://tango.makegov.com/api/grants/?page=1&limit=5&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code%2Cdescription%2Clast_updated%2Ccfda_numbers%28number%2Ctitle%29%2Capplicant_types%28%2A%29%2Cfunding_categories%28%2A%29 response: body: - string: "{\"count\":2690,\"next\":\"http://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code%2Cdescription%2Clast_updated%2Ccfda_numbers%28number%2Ctitle%29%2Capplicant_types%28%2A%29%2Cfunding_categories%28%2A%29\",\"previous\":null,\"results\":[{\"grant_id\":360862,\"opportunity_number\":\"DE-FOA-0003390\",\"title\":\"Infrastructure - Investment and Jobs Act (IIJA): Mine of the Future - Proving Ground Initiative\",\"agency_code\":\"DOE-NETL\",\"description\":\"

The - objective of NOFO-0003390 is to establish mining technology proving grounds - that accelerate novel technology development for the U.S. mining sector. These - competitive awards would invest in the infrastructure and technologies to - transform mining practices and speed the development of secure and resilient - domestic CMM supply networks of the future.

\",\"last_updated\":\"2025-11-16T10:11:20+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"81.089\",\"title\":\"Fossil - Energy Research and Development\"}],\"applicant_types\":[{\"code\":\"99\",\"description\":\"Unrestricted - (i.e., open to any type of entity above), subject to any clarification in - text field entitled \\\"Additional Information on Eligibility\\\"\"}],\"funding_categories\":[{\"code\":\"EN\",\"description\":\"Energy\"}]},{\"grant_id\":360863,\"opportunity_number\":\"DE-FOA-0003583\",\"title\":\"Infrastructure - Investment and Jobs Act (IIJA) – Mines & Metals Capacity Expansion - – Piloting Byproduct Critical Minerals and Materials Recovery at Domestic - Industrial Facilities\",\"agency_code\":\"DOE-NETL\",\"description\":\"

The - focus of this NOFO is to invest in American industrial facilities that have - the potential to produce valuable critical material byproducts from existing - industrial processes. Industries such as mining and mineral processing, power - generation, coal, oil and gas, specialty metals, and basic materials have - the potential to address many of America\u2019s most severe mineral vulnerabilities.

\",\"last_updated\":\"2025-11-16T10:11:19+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"81.089\",\"title\":\"Fossil - Energy Research and Development\"}],\"applicant_types\":[{\"code\":\"99\",\"description\":\"Unrestricted - (i.e., open to any type of entity above), subject to any clarification in - text field entitled \\\"Additional Information on Eligibility\\\"\"}],\"funding_categories\":[{\"code\":\"IIJ\",\"description\":\"Infrastructure - Investment and Jobs Act (IIJA)\"}]},{\"grant_id\":360861,\"opportunity_number\":\"FR-6900-N-25\",\"title\":\"FY - 2025 Continuum of Care Competition and Youth Homeless Demonstration Program - Grants NOFO\",\"agency_code\":\"HUD\",\"description\":\"The Continuum of Care - (CoC) Program is designed to:promote a community-wide commitment to the goal - of ending homelessness;provide funding for efforts by nonprofit providers, - States, Indian Tribes or Tribally Designated Housing Entities [as defined - in section 4 of the Native American Housing Assistance and Self-Determination - Act of 1996 (25 U.S.C. 4103) (TDHEs)], and local governments to quickly rehouse - individuals and families experiencing homelessness, persons experiencing trauma - or a lack of safety related to fleeing or attempting to flee domestic violence, - dating violence, sexual assault, and stalking, and youth experiencing homelessness - while minimizing the trauma and dislocation caused by homelessness;promote - access to, and effective utilization of, mainstream programs and programs - funded with State or local resources; andoptimize self-sufficiency among individuals - and families experiencing homelessness.The goal of the Youth Homelessness - Demonstration Program (YHDP) is to support the development and implementation - of a coordinated community approach to preventing and ending youth homelessness - and sharing that experience with and mobilizing communities around the country - toward the same end. The population to be served by the demonstration program - is youth ages 24 and younger who are experiencing homelessness, including - unaccompanied and pregnant or parenting youth.\",\"last_updated\":\"2025-11-16T10:11:17+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"14.267\",\"title\":\"Continuum - of Care Program \"}],\"applicant_types\":[{\"code\":\"11\",\"description\":\"Native - American tribal organizations (other than Federally recognized tribal governments)\"},{\"code\":\"12\",\"description\":\"Nonprofits - having a 501(c)(3) status with the IRS, other than institutions of higher - education\"},{\"code\":\"07\",\"description\":\"Native American tribal governments - (Federally recognized)\"},{\"code\":\"25\",\"description\":\"Others (see text - field entitled \\\"Additional Information on Eligibility\\\" for clarification)\"},{\"code\":\"04\",\"description\":\"Special - district governments\"},{\"code\":\"08\",\"description\":\"Public housing - authorities/Indian housing authorities\"},{\"code\":\"01\",\"description\":\"County - governments\"},{\"code\":\"00\",\"description\":\"State governments\"},{\"code\":\"02\",\"description\":\"City - or township governments\"}],\"funding_categories\":[{\"code\":\"CD\",\"description\":\"Community - Development\"}]},{\"grant_id\":360851,\"opportunity_number\":\"ED-GRANTS-111225-001\",\"title\":\"Office - of Postsecondary Education (OPE): Fund for the Improvement of Postsecondary - Education (FIPSE): Special Projects; Assistance Listing Number (ALN) 84.116J\",\"agency_code\":\"ED\",\"description\":\"

Note: - Each funding opportunity description is a synopsis of information in the Federal - Register application notice. For specific information about eligibility, please - see the official application notice. The official version of this document - is the document published in the Federal Register. Please review the official - application notice for pre-application and application requirements, application - submission information, performance measures, priorities and program contact - information.


For the addresses for obtaining and submitting - an application, please refer to our Common Instructions for Applicants to - Department of Education Discretionary Grant Programs, published in the Federal - Register on August 29, 2025 (90 FR 42234), and available at https://www.federalregister.gov/documents/2025/08/29/2025-

16571/common-instructions-and-information-for-applicants-to\\u0002department-of-education-discretionary-grantams.


Purpose - of Program: The FIPSE Special Projects Program provides grants to institutions - of higher education (IHEs), combinations of such institutions, and other public - and private nonprofit institutions and agencies, as the Secretary deems necessary, - to support innovative projects concerning one or more areas of national need - identified by the Secretary. This competition focuses on supporting four areas - of national need\u2014(1) advancing the understanding of and use of Artificial - Intelligence (AI) technology in postsecondary education, (2) promoting civil - discourse on college and university campuses, (3) promoting accreditation - reform, and (4) supporting capacity-building for high-quality short-term programs.


In - order to support these four crucial needs, this competition includes seven - absolute priorities under which applicants can apply: two priorities dedicated - to advancing the understanding and use of AI in postsecondary education (Absolute - Priorities 1 and 2), one priority dedicated to promoting civil discourse on - college and university campuses (Absolute Priority 3), two priorities within - promoting accreditation reform (Absolute Priorities 4 and 5), and two priorities - for capacity-building for high-quality short-term programs (Absolute Priorities - 6 and 7). The Department intends to award $50 million to advance AI in Education, - $60 million to promote civil discourse on college and university campuses, - $7 million to support accreditation reform, and $50 million for high-quality - short-term programs. The Department may adjust these estimates based on interest - and quality of applications.


Assistance Listing Number 84.116J

\",\"last_updated\":\"2025-11-16T10:11:15+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"84.116\",\"title\":\"Fund - for the Improvement of Postsecondary Education\"}],\"applicant_types\":[{\"code\":\"25\",\"description\":\"Others + string: "{\"count\":3088,\"next\":\"https://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code%2Cdescription%2Clast_updated%2Ccfda_numbers%28number%2Ctitle%29%2Capplicant_types%28%2A%29%2Cfunding_categories%28%2A%29\",\"previous\":null,\"results\":[{\"grant_id\":361395,\"opportunity_number\":\"USAFCPFREEDOM250\",\"title\":\"U.S. + Ambassadors Fund for Cultural Preservation Freedom 250\",\"agency_code\":\"DOS-ECA\",\"description\":\"

This Freedom 250 special edition of the + AFCP honors the enduring commitment of the United States to + freedom, democracy, and unity via cultural heritage stewardship. In the + spirit of these values, priority projects should incorporate technical exchange + between Americans and foreign counterparts and illuminate the rich historical + and cultural ties between the United States and countries around the world. + AFCP will prioritize projects that meet one or more of the following + criteria: 

\\n

 

\\n
    \\n
  1. Cultural objects or sites + in other countries associated with, or frequently visited by notable + Americans, such as homes, studios, or institutions.
  2. \\n
  3. Cultural objects + or sites in other countries developed, excavated, or otherwise brought to + light by American archaeologists or other heritage professionals.
  4. \\n +
  5. Cultural objects or sites in other countries associated with American + history or American contributions to significant historical events, such as + peace agreements, military memorials, and other commemorative sites.
  6. \\n +
  7. Cultural objects or sites in other countries associated with American + innovations and leadership in the sciences, such as laboratories or observatories. 
  8. \\n +
  9. Cultural objects or sites in other countries highlighting the intellectual + and philosophical roots of American institutions.
  10. \\n
  11. Cultural objects + or sites in other countries associated with American-inspired independence + movements that showcase the United States as an example for nations + striving toward liberty and self-governance. 
  12. \\n
  13. Forms of traditional + cultural expression such as music and dance that heavily influenced American + art forms or vice versa. 
  14. \\n
  15. Historical sites of significance + to diaspora communities in the United States. 
  16. \\n
\\n


\\n

See + the USAFCPFreedom250 PDF on the Related Documents tab for details. 

\\n


\\n

NOTE: + Application deadlines vary by U.S. embassy. Contact the U.S. embassy directly + for application deadlines.

\",\"last_updated\":\"2026-03-04T10:11:22+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"19.025\",\"title\":\"U.S. + Ambassadors Fund for Cultural Preservation\"}],\"applicant_types\":[{\"code\":\"25\",\"description\":\"Others + (see text field entitled \\\"Additional Information on Eligibility\\\" for + clarification)\"}],\"funding_categories\":[{\"code\":\"O\",\"description\":\"Other\"}]},{\"grant_id\":361394,\"opportunity_number\":\"PAR-26-119\",\"title\":\"NEI + Collaborative Clinical Vision Research (UG1 - Clinical Trial Optional)\",\"agency_code\":\"HHS-NIH11\",\"description\":\"

The + NEI uses UG1 cooperative agreement awards to support investigator-initiated + clinical vision research projects, including multi-center clinical trials, + human gene-transfer, stem cell therapy trials, epidemiological studies, and + other studies that are complex, high resource, or that require increased oversight + due to elevated safety considerations.

These collaborative clinical + vision research projects would address chronic diseases across the lifespan + through research on the burden of eye and vision conditions, their causes, + diagnoses, prevention, treatment, and rehabilitation.  These projects + are multifaceted and of high public health significance, requiring careful + oversight and monitoring by National Institutes of Health (NIH) staff.  

The + intent of this funding opportunity announcement is to provide a collaborative + framework for the following components: Chair's Grant, Coordinating Center, + and Resource Center(s).

\",\"last_updated\":\"2026-03-04T10:11:22+00:00\",\"status\":{\"code\":\"F\",\"description\":\"Forecasted\"},\"cfda_numbers\":[{\"number\":\"93.867\",\"title\":\"Vision + Research\"}],\"applicant_types\":[{\"code\":\"06\",\"description\":\"Public + and State controlled institutions of higher education\"},{\"code\":\"02\",\"description\":\"City + or township governments\"},{\"code\":\"12\",\"description\":\"Nonprofits having + a 501(c)(3) status with the IRS, other than institutions of higher education\"},{\"code\":\"13\",\"description\":\"Nonprofits + that do not have a 501(c)(3) status with the IRS, other than institutions + of higher education\"},{\"code\":\"23\",\"description\":\"Small businesses\"},{\"code\":\"22\",\"description\":\"For + profit organizations other than small businesses\"},{\"code\":\"05\",\"description\":\"Independent + school districts\"},{\"code\":\"08\",\"description\":\"Public housing authorities/Indian + housing authorities\"},{\"code\":\"04\",\"description\":\"Special district + governments\"},{\"code\":\"25\",\"description\":\"Others (see text field entitled + \\\"Additional Information on Eligibility\\\" for clarification)\"},{\"code\":\"20\",\"description\":\"Private + institutions of higher education\"},{\"code\":\"00\",\"description\":\"State + governments\"},{\"code\":\"07\",\"description\":\"Native American tribal governments + (Federally recognized)\"},{\"code\":\"01\",\"description\":\"County governments\"},{\"code\":\"11\",\"description\":\"Native + American tribal organizations (other than Federally recognized tribal governments)\"}],\"funding_categories\":[{\"code\":\"HL\",\"description\":\"Health\"}]},{\"grant_id\":361393,\"opportunity_number\":\"DE-FOA-0003602\",\"title\":\"Early + Career Research Program (ECRP)\",\"agency_code\":\"PAMS-SC\",\"description\":\"

DOE + SC hereby invites applications for support under the ECRP in the following + program areas: Advanced Scientific Computing Research (ASCR); Basic Energy + Sciences (BES); Biological and Environmental Research (BER); Fusion Energy + Sciences (FES); High Energy Physics (HEP); Nuclear Physics (NP); Isotope Research + and Development and Production (DOE IP). The purpose of this program is to + support the development of individual research programs of outstanding scientists + early in their careers and to stimulate research careers in the areas supported + by SC.

\",\"last_updated\":\"2026-03-04T10:11:22+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"81.049\",\"title\":\"Office + of Science Financial Assistance Program\"}],\"applicant_types\":[{\"code\":\"25\",\"description\":\"Others (see text field entitled \\\"Additional Information on Eligibility\\\" for - clarification)\"}],\"funding_categories\":[{\"code\":\"ED\",\"description\":\"Education\"}]},{\"grant_id\":345316,\"opportunity_number\":\"2026TTPSF\",\"title\":\"2026 - Tribal Transportation Program Safety Fund\",\"agency_code\":\"DOT-FHWA\",\"description\":\"

Eligible - projects described in section 148(a)(4) are strategies, activities, and projects - on a public road that are consistent with a transportation safety plan and - that (i) correct or improve a hazardous road location or feature, or (ii) - address a highway safety problem. TTPSF emphasizes the development of strategic - transportation safety plans using a data-driven process as a means for Tribes - to identify transportation safety needs and determine how those needs will - be addressed in Tribal communities. FHWA has identified four eligibility categories: - transportation safety plans; data assessment, improvement, and analysis activities; - systemic roadway departure countermeasures; and infrastructure improvements - and other eligible activities as listed in 23 U.S.C. \xA7 148(a)(4).

\",\"last_updated\":\"2025-11-13T10:39:21+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"20.205\",\"title\":\"Highway - Planning and Construction\"}],\"applicant_types\":[{\"code\":\"07\",\"description\":\"Native - American tribal governments (Federally recognized)\"}],\"funding_categories\":[{\"code\":\"T\",\"description\":\"Transportation\"}]}]}" + clarification)\"},{\"code\":\"06\",\"description\":\"Public and State controlled + institutions of higher education\"},{\"code\":\"20\",\"description\":\"Private + institutions of higher education\"}],\"funding_categories\":[{\"code\":\"ST\",\"description\":\"Science + and Technology and other Research and Development\"}]},{\"grant_id\":361398,\"opportunity_number\":\"DFOP0017856\",\"title\":\"FY + 2026 J. Christopher Stevens Virtual Exchange Initiative (JCSVEI) Program\",\"agency_code\":\"DOS-ECA\",\"description\":\"

The + Global Leaders Division, Office of Citizen Exchanges, Bureau of Educational + and Cultural Affairs (ECA) invites proposal submissions for a cooperative + agreement to design, administer, and implement the J. Christopher Stevens + Virtual Exchange Initiative (JCSVEI). The JCSVEI advances U.S. foreign policy + priorities by championing American scientific excellence, technological leadership, + and innovation, while promoting core U.S. principles\u2014freedom of speech, + individual liberty, and the rule of law\u2014as foundations of peace and prosperity. + The program achieves these goals through American-led virtual exchanges that + connects young leaders in the Middle East and North Africa (MENA) with peers + across the United States.

\\n


\\n

Through interactive digital + programming, participants will explore U.S. global leadership in science, + technology, business, and civic life, while demonstrating how American freedom + of speech, rule of law, and individual liberty underpin prosperity and opportunity. + They will collaborate virtually with peers overseas to develop digital storytelling + projects, podcasts, vlogs, and other media that illustrate the strength of + American communities and the nation\u2019s commitment to open exchange, innovation, + and collaboration. The initiative will also challenge participants to apply + American ingenuity to practical solutions that promote economic opportunity, + job creation, and digital connectivity\u2014contributing to shared prosperity + and regional stability. By reinforcing the spirit of the Abraham Accords and + advancing U.S. engagement with the Gulf Cooperation Council, the program will + strengthen ties between the United States and key partners in the Middle East + while advancing America\u2019s vision of a secure, prosperous, and interconnected + region.

\\n


\\n

The JCSVEI + will use a range of virtual exchange formats\u2014live dialogues, collaborative + digital projects, online trainings, and virtual workshops\u2014to reach approximately + 8,000 participants annually.  Programming should promote mutual + collaboration grounded in U.S. leadership, encouraging youth to view the United + States as a trusted partner in science, entrepreneurship, and global problem-solving. 

\\n

An Alumni Leadership Academy will provide continued + engagement for participants who demonstrate strong leadership potential, + equipping them to serve as ambassadors of U.S. values and connectors between + American and Middle Eastern communities. Follow-on activities should reinforce + long-term networks that advance America\u2019s economic, security, and diplomatic + priorities. 

\\n

 

\\n

Organizations applying for this award must demonstrate the + capacity to recruit, select, and manage up to six partner organizations + as sub-award recipients to implement virtual exchange components under the + JCSVEI umbrella. The primary award recipient will maintain full + oversight of sub-awards, ensuring compliance, accountability, and alignment + with ECA\u2019s goals, performance measures, and branding standards. 

\\n


\\n

Please see the Notice of Funding Opportunity for + additional information.

\",\"last_updated\":\"2026-03-04T10:11:22+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"19.415\",\"title\":\"Professional + and Cultural Exchange Programs - Citizen Exchanges\"}],\"applicant_types\":[{\"code\":\"06\",\"description\":\"Public + and State controlled institutions of higher education\"},{\"code\":\"20\",\"description\":\"Private + institutions of higher education\"},{\"code\":\"25\",\"description\":\"Others + (see text field entitled \\\"Additional Information on Eligibility\\\" for + clarification)\"},{\"code\":\"12\",\"description\":\"Nonprofits having a 501(c)(3) + status with the IRS, other than institutions of higher education\"}],\"funding_categories\":[{\"code\":\"O\",\"description\":\"Other\"}]},{\"grant_id\":361402,\"opportunity_number\":\"DFOP0017868\",\"title\":\"FY + 2026 American Film Showcase\",\"agency_code\":\"DOS-ECA\",\"description\":\"

The Bureau of Educational and Cultural Affairs + (ECA) intends to award one Cooperative agreement for approximately $1,540,000 + to fund the FY 2026 American Film Showcase (AFS), a dynamic and adaptable + initiative that combines and harnesses the power of cultural and commercial + diplomacy to elevate American creativity as a driver of global influence and + economic vitality. By highlighting U.S. leadership in film, television, + gaming, and media arts, AFS opens new markets for American creative industries, + attracts foreign investment, and reinforces the nation\u2019s reputation as + a global center for innovation and storytelling.

\\n

 

\\n

U.S. embassies + play a key collaborative role by identifying and submitting program ideas + and nominating participants, allowing AFS to deliver tailored engagements, + such as lectures, masterclasses, residencies, screenings, and workshops, led + by top industry professionals. This flexible model not only advances U.S. + foreign policy but also strengthens American global business and creative + competitiveness and cultural influence by forging connections between U.S. + and international entertainment professionals, creating lasting commercial + and professional opportunities for American creatives.

\\n

 

\\n

Finally, the FY 2026 AFS + award will also include Made in America: Creative Capital, an expansion + component designed to further amplify program impact. This initiative + will broaden activities by incorporating a commercial diplomacy focus, featuring + activities such as business residencies, co-production labs, a Creative IP + & Licensing Exchange, creative showcases, export-ready labs, global creative + business accelerators, international fellowships, investment forums, and market + access and distribution workshops. These activities will help equip an + estimated 40-50 U.S. creators to succeed in international markets and forge + long-term commercial partnerships.  By integrating cultural initiatives + with commercial strategy, Made in America: Creative Capital positions + the United States as the premier destination for creative investment, fueling + job creation, innovation, and sustained economic growth. Together, these + efforts ensure that American public diplomacy remains agile and effective, + advancing national prosperity and global influence through the transformative + power of creativity.

\\n


\\n

Please see the Notice of Funding + Opportunity for additional information.

\",\"last_updated\":\"2026-03-04T10:11:22+00:00\",\"status\":{\"code\":\"P\",\"description\":\"Posted\"},\"cfda_numbers\":[{\"number\":\"19.415\",\"title\":\"Professional + and Cultural Exchange Programs - Citizen Exchanges\"}],\"applicant_types\":[{\"code\":\"20\",\"description\":\"Private + institutions of higher education\"},{\"code\":\"12\",\"description\":\"Nonprofits + having a 501(c)(3) status with the IRS, other than institutions of higher + education\"},{\"code\":\"25\",\"description\":\"Others (see text field entitled + \\\"Additional Information on Eligibility\\\" for clarification)\"},{\"code\":\"06\",\"description\":\"Public + and State controlled institutions of higher education\"}],\"funding_categories\":[{\"code\":\"O\",\"description\":\"Other\"}]}]}" headers: CF-RAY: - - 99f95d296d7836b7-YYZ + - 9d71a7411cd6a1d1-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 19:23:37 GMT + - Wed, 04 Mar 2026 14:43:27 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=6JUXlQvu7LLZoY2mMeXmy4Xg5%2BPpgiC4qMdV86%2FqLnrk9egyO1P2674q41bqEJMM%2FNXjObYFKxZ5Po9DZqDTlpjUAHln6bBMS6020sKpqOip5Ui3qcHw8UPIXg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=8oaog530M1OrdjVfbGn%2Bb5GgWUaG1B6BUaohD8elQi6fk%2FCyZK5KYrvEdmVj2Lbsjwaxn9Hb8rfHmWWYM7gjknJisVEyMT40h5EcVVXlIb2RGHOcX7cXagCU"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '9683' + - '14698' cross-origin-opener-policy: - same-origin referrer-policy: @@ -152,27 +217,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.033s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '997' + - '955' x-ratelimit-burst-reset: - - '59' + - '21' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998709' + - '1999715' x-ratelimit-daily-reset: - - '833' + - '84981' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '997' + - '955' x-ratelimit-reset: - - '59' + - '21' status: code: 200 message: OK diff --git a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[minimal-grant_id,opportunity_number,title,status(-),agency_code] b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[minimal-grant_id,opportunity_number,title,status(-),agency_code] index 65bd8a1..7d2644f 100644 --- a/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[minimal-grant_id,opportunity_number,title,status(-),agency_code] +++ b/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[minimal-grant_id,opportunity_number,title,status(-),agency_code] @@ -16,41 +16,35 @@ interactions: uri: https://tango.makegov.com/api/grants/?page=1&limit=5&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code response: body: - string: '{"count":2690,"next":"http://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":360862,"opportunity_number":"DE-FOA-0003390","title":"Infrastructure - Investment and Jobs Act (IIJA): Mine of the Future - Proving Ground Initiative","agency_code":"DOE-NETL","status":{"code":"P","description":"Posted"}},{"grant_id":360863,"opportunity_number":"DE-FOA-0003583","title":"Infrastructure - Investment and Jobs Act (IIJA) – Mines & Metals Capacity Expansion - – Piloting Byproduct Critical Minerals and Materials Recovery at Domestic - Industrial Facilities","agency_code":"DOE-NETL","status":{"code":"P","description":"Posted"}},{"grant_id":360861,"opportunity_number":"FR-6900-N-25","title":"FY - 2025 Continuum of Care Competition and Youth Homeless Demonstration Program - Grants NOFO","agency_code":"HUD","status":{"code":"P","description":"Posted"}},{"grant_id":360851,"opportunity_number":"ED-GRANTS-111225-001","title":"Office - of Postsecondary Education (OPE): Fund for the Improvement of Postsecondary - Education (FIPSE): Special Projects; Assistance Listing Number (ALN) 84.116J","agency_code":"ED","status":{"code":"P","description":"Posted"}},{"grant_id":345316,"opportunity_number":"2026TTPSF","title":"2026 - Tribal Transportation Program Safety Fund","agency_code":"DOT-FHWA","status":{"code":"P","description":"Posted"}}]}' + string: '{"count":3088,"next":"https://tango.makegov.com/api/grants/?limit=5&page=2&shape=grant_id%2Copportunity_number%2Ctitle%2Cstatus%28%2A%29%2Cagency_code","previous":null,"results":[{"grant_id":361395,"opportunity_number":"USAFCPFREEDOM250","title":"U.S. + Ambassadors Fund for Cultural Preservation Freedom 250","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}},{"grant_id":361394,"opportunity_number":"PAR-26-119","title":"NEI + Collaborative Clinical Vision Research (UG1 - Clinical Trial Optional)","agency_code":"HHS-NIH11","status":{"code":"F","description":"Forecasted"}},{"grant_id":361393,"opportunity_number":"DE-FOA-0003602","title":"Early + Career Research Program (ECRP)","agency_code":"PAMS-SC","status":{"code":"P","description":"Posted"}},{"grant_id":361398,"opportunity_number":"DFOP0017856","title":"FY + 2026 J. Christopher Stevens Virtual Exchange Initiative (JCSVEI) Program","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}},{"grant_id":361402,"opportunity_number":"DFOP0017868","title":"FY + 2026 American Film Showcase","agency_code":"DOS-ECA","status":{"code":"P","description":"Posted"}}]}' headers: CF-RAY: - - 99f95d27c97536a6-YYZ + - 9d71a73fdccba22d-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 19:23:37 GMT + - Wed, 04 Mar 2026 14:43:27 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=u8ln%2FEP460psTjjSnWMf9ucrdGbil3YW4X%2FSMOou9bFecFa04c2sxUSBg8aBbMiPPzHwobc9H%2BH3zqXtBk3FbS11vPX3HAKbfIcTiGK0WLz3%2FlpvA%2FxRToELEA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=8DrWPHJxEBEJYXq0dKNBl8XGJIp%2Be7Z4ZGgP2TQ7VxqYwbVQgrAbo14IuW5rIvg317a5w8ljlyLq5KpP4JWLjyRwL0MtY4NW5d7JCGbOzMlF3so%2Fg6b33W1R"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1444' + - '1144' cross-origin-opener-policy: - same-origin referrer-policy: @@ -60,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.025s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '998' + - '956' x-ratelimit-burst-reset: - - '59' + - '21' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998710' + - '1999716' x-ratelimit-daily-reset: - - '833' + - '84981' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '998' + - '956' x-ratelimit-reset: - - '59' + - '21' status: code: 200 message: OK diff --git a/tests/cassettes/TestIDVsIntegration.test_get_idv_summary b/tests/cassettes/TestIDVsIntegration.test_get_idv_summary index 026d3f6..2911a79 100644 --- a/tests/cassettes/TestIDVsIntegration.test_get_idv_summary +++ b/tests/cassettes/TestIDVsIntegration.test_get_idv_summary @@ -1,80 +1,4 @@ interactions: -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c431392eaa570c4-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:19 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=cIstw%2FQkVVTpk3mVjs76jajMuyEs82Mrhqsrf2Ak864vMKdya7PUUv6AVZg4VKE4Rji%2FvhG0vH%2FgFvXu61A%2FZvVpSoh0HGNASVAtxH6SooBq3WCuQYNf889L2%2Bs%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '721' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.028s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '985' - x-ratelimit-burst-reset: - - '56' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999800' - x-ratelimit-daily-reset: - - '56162' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '985' - x-ratelimit-reset: - - '56' - status: - code: 200 - message: OK - request: body: '' headers: @@ -92,13 +16,13 @@ interactions: uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date response: body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 + string: '{"count":5874,"next":"https://tango.makegov.com/api/vehicles/?limit=10&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"},{"uuid":"eb797c6e-6865-505e-9c71-7d0dfc3b1b35","solicitation_identifier":"0040626388","organization_id":"0d75c931-8b4e-5941-9ec3-2b35df3ea8d9","awardee_count":3,"order_count":6,"vehicle_obligations":37189.74,"vehicle_contracts_value":37189.74,"solicitation_title":"B--AZ ES ARCHAEOLOGICAL SERVICES","solicitation_date":"2023-08-29"},{"uuid":"ef62a4f0-080a-503f-adbe-a1705ae410c0","solicitation_identifier":"05GA0A22Q0023","organization_id":"2774a854-bcf4-5d85-94c0-d715f0c1819f","awardee_count":4,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"SOLICITATION - GAO IDIQ CONSTRUCTION SERVICES","solicitation_date":"2022-03-21"},{"uuid":"4c317645-db68-53e7-8d97-eeec38e7da2e","solicitation_identifier":"1069512","organization_id":"384a7047-2f7c-5a2f-88b0-8e47cb5f98f5","awardee_count":2,"order_count":5,"vehicle_obligations":1828095.0,"vehicle_contracts_value":1828095.0,"solicitation_title":"Intent to Sole Source Procurement for Specific Pathogen Free (SPF) Embryonating Chicken Eggs","solicitation_date":"2022-09-13"},{"uuid":"98718d55-29c9-56f8-9a19-058f2b6e7174","solicitation_identifier":"1131PL21RIQ71002","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":4,"order_count":6,"vehicle_obligations":332140.66,"vehicle_contracts_value":332140.66,"solicitation_title":"Monitoring - and Evaluations: Program Audit Series Services IDIQ","solicitation_date":"2021-08-06"},{"uuid":"e2b5a801-4ddd-5abe-92b4-ba1807421c8f","solicitation_identifier":"1131PL22RIQ0001","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":18,"order_count":52,"vehicle_obligations":32586217.82,"vehicle_contracts_value":32586217.82,"solicitation_title":"IDIQ: + and Evaluations: Program Audit Series Services IDIQ","solicitation_date":"2021-08-06"},{"uuid":"e2b5a801-4ddd-5abe-92b4-ba1807421c8f","solicitation_identifier":"1131PL22RIQ0001","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":18,"order_count":55,"vehicle_obligations":32511871.78,"vehicle_contracts_value":32687649.87,"solicitation_title":"IDIQ: Multiple Award Contract - - Reverse Trade Missions, Conferences, Workshops, Training, and Other Events","solicitation_date":"2022-04-08"},{"uuid":"a9df6717-67b2-51c1-9d6d-e29b1d89b4cb","solicitation_identifier":"1145PC20Q0026","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":9,"order_count":32,"vehicle_obligations":377286.14,"vehicle_contracts_value":383286.14,"solicitation_title":"Peace Corps Background Investigators","solicitation_date":"2020-03-17"},{"uuid":"8d124a98-17f3-5143-b11a-cba33b218145","solicitation_identifier":"1145PC22Q0042","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":7,"order_count":18,"vehicle_obligations":116624.52,"vehicle_contracts_value":116624.52,"solicitation_title":"Language @@ -107,17 +31,17 @@ interactions: 6 Coaching Services - BPA","solicitation_date":"2017-12-14"}]}' headers: CF-RAY: - - 9c4316dfad3661a6-ORD + - 9d71a7ac58914c91-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:26:34 GMT + - Wed, 04 Mar 2026 14:43:44 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=YhGIExzk%2BXb8IQoJa1CUA%2FKQW17W%2BnUptWcExoJW%2FmOhl2vg0oo%2FnlbQ60I%2FL7FccL46wHpj%2F80aCQilDJwFkAvlsGjuMT9oLg6x8y4GBXlrXJ0JHSJk9oomctU%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=VroD%2FWLx4M8jK8wx91mvi%2FjzOy6SWo6ZwNP2CqqnVfa5r0HGisNPbwYkBslQJNt95xIxwvABjUMVhL9%2BMXZOYvrkrLLG1hLcOuOGDp4I75cTleGd23C2dBe9"}]}' Server: - cloudflare Transfer-Encoding: @@ -127,7 +51,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '3915' + - '3916' cross-origin-opener-policy: - same-origin referrer-policy: @@ -137,27 +61,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.037s + - 0.039s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '985' + - '897' x-ratelimit-burst-reset: - - '55' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999784' + - '1999657' x-ratelimit-daily-reset: - - '56027' + - '84964' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '985' + - '897' x-ratelimit-reset: - - '55' + - '4' status: code: 200 message: OK @@ -178,75 +102,143 @@ interactions: uri: https://tango.makegov.com/api/idvs/0/summary/ response: body: - string: '{"solicitation_identifier":"0","competition_details":{"commercial_item_acquisition_procedures":{"code":"A","description":"Commercial - Products/Services"},"evaluated_preference":{"code":"NONE","description":"No - Preference used"},"extent_competed":{"code":"A","description":"Full and Open - Competition"},"most_recent_solicitation_date":"2023-09-22","number_of_offers_received":1,"original_solicitation_date":"2023-09-22","other_than_full_and_open_competition":{"code":"ONE","description":"Only - One Source-Other (FAR 6.302-1 other)"},"set_aside":{"code":"NONE","description":"No - set aside used"},"simplified_procedures_for_certain_commercial_items":{"code":"N","description":"No"},"small_business_competitiveness_demonstration_program":{"code":"N","description":"No"},"solicitation_identifier":"0","solicitation_procedures":{"code":"MAFO","description":"Subject - to Multiple Award Fair Opportunity"}},"acquisition_details":{"naics_code":339113,"psc_code":"6515"},"additional_details":{"contract_type":{"code":"J","description":"Firm - Fixed Price"},"idv_type":{"code":"E","description":"BPA"},"type_of_idc":{"code":"B","description":"Indefinite - Delivery / Indefinite Quantity"},"total_contract_value":0.0},"description":"1-YEAR - LE STAFF HEALTH INSURANCE - KYIV, UKRAINE","agency_details":{"funding_office":{"agency_code":"3600","agency_name":"Department - of Veterans Affairs","office_code":"36C512","office_name":"512-BALTIMORE(00512)(36C512)","department_code":36,"department_name":"Department - of Veterans Affairs"},"awarding_office":{"agency_code":"3600","agency_name":"Department - of Veterans Affairs","office_code":"36C250","office_name":"250-NETWORK CONTRACT - OFFICE 10 (36C250)","department_code":36,"department_name":"Department of - Veterans Affairs"}},"awardee_count":39,"awards_url":"http://tango.makegov.com/api/idvs/0/summary/awards/"}' + string: "\n\n \n \n + \ \n \n 404 - Page + Not Found | Tango by MakeGov\n \n \n \n + \ \n + \ \n \n + \ \n \n + \ \n + \ \n \n + \ \n + \ \n + \ \n + \ \n \n + \ \n \n \n \n \n \n \n Skip + to main content
\n
\n
\n + \
\n
\n
\n \n \n \n + \ \n + \ \n \n
\n + \
\n \n
\n
\n + \
\n
\n \n + \
\n
\n
\n \n
\n \n
\n \n

\"404

\n \n

Uh-oh! + Nothing here!

\n

Go + back

\n
\n \n
\n\n \n + \ \n \n\n" headers: CF-RAY: - - 9c4316e08e1461a6-ORD + - 9d71a7ad3a224c91-MSP Connection: - keep-alive Content-Type: - - application/json + - text/html; charset=utf-8 Date: - - Mon, 26 Jan 2026 21:26:34 GMT + - Wed, 04 Mar 2026 14:43:44 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=6NyjEA8vZcKC1Jv%2FSUFW%2BQT4MGovuXcSHKyuQFmwrH%2B0r754YPbuYhhIu5BjWzUMRAwBqAxEpmWkWwwoL6OS%2BT%2FNx%2BvEAAx2Mt9%2BVRxrdctrwyoa7%2BATazAudZY%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=cRtoQ5cjlmDfXAdhYCEdfYhRC5J4RtUZiPu1U%2FDAeN0yLnrzGQkp8KxFY5TIHed5WbYnpuDLOVpVX42QX5Ax%2Bt2Ijr4ROb9tsDRksQ5MXYvhgt5Q1JSuvKjE"}]}' Server: - cloudflare Transfer-Encoding: - chunked - allow: - - GET, HEAD, OPTIONS cf-cache-status: - DYNAMIC content-length: - - '1834' + - '7174' cross-origin-opener-policy: - same-origin referrer-policy: - same-origin vary: - - Accept, Cookie + - Cookie x-content-type-options: - nosniff x-execution-time: - - 0.063s + - 0.007s x-frame-options: - DENY x-ratelimit-burst-limit: - - '1000' + - '10' x-ratelimit-burst-remaining: - - '984' + - '10' x-ratelimit-burst-reset: - - '55' + - '0' x-ratelimit-daily-limit: - - '2000000' + - '100' x-ratelimit-daily-remaining: - - '1999783' + - '100' x-ratelimit-daily-reset: - - '56027' + - '0' x-ratelimit-limit: - - '1000' + - '10' x-ratelimit-remaining: - - '984' + - '10' x-ratelimit-reset: - - '55' + - '0' status: - code: 200 - message: OK + code: 404 + message: Not Found version: 1 diff --git a/tests/cassettes/TestIDVsIntegration.test_get_idv_uses_default_shape b/tests/cassettes/TestIDVsIntegration.test_get_idv_uses_default_shape index 3c27747..0e54bb2 100644 --- a/tests/cassettes/TestIDVsIntegration.test_get_idv_uses_default_shape +++ b/tests/cassettes/TestIDVsIntegration.test_get_idv_uses_default_shape @@ -16,22 +16,25 @@ interactions: uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' + string: '{"count":1161220,"next":"https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous_cursor":null,"results":[{"key":"CONT_IDV_1240LN26D0006_12C2","piid":"1240LN26D0006","award_date":"2026-03-03","description":"THIS + IS A COMBINED REGIONAL TREE PLANTING AND ASSOCIATED SERVICES IDIQ CONTRACT + FOR THE WESTERN MONTANA FORESTS POD WHICH IS COMPRISED OF THE BITTERROOT, + LOLO, AND FLATHEAD NATIONAL FORESTS AND THE BLM MISSOULA FIELD OFFICE. THE + AREA OF COVERAGE IS W","total_contract_value":7600000.0,"obligated":0.0,"idv_type":"B","recipient":{"uei":"SB3WP5CM9QS4","display_name":"SPROUT + FORESTRY INCORPORATED"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9c42ff6548c0a219-MSP + - 9d71a7a3b9bd5120-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:10:32 GMT + - Wed, 04 Mar 2026 14:43:43 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=vWpNPPFWjwKTPWHzjWMNFrLy9qO6UOcaqk2c4iu7I%2B1VaXT7KKmmX5QwN%2B4Osm8CZ3n97%2Fek1ZenZof50MJI4qOR55zJk8GtvynWduer1l0q38HFLP1%2FrM2X"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=cQ8QHUwHTmT5GiPU7LYxFICQSkDz%2FbgVVXLiQPyr3JYnP0F1dlNhV41O2g0DoAqf5hURLthRmiPbjq1qEXKvnNyC%2FpBp2xYY1eFINivI5E%2BDFeELL9p0DOkV"}]}' Server: - cloudflare Transfer-Encoding: @@ -41,171 +44,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '721' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.029s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '985' - x-ratelimit-burst-reset: - - '41' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999816' - x-ratelimit-daily-reset: - - '56989' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '985' - x-ratelimit-reset: - - '41' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/?shape=key%2Cpiid%2Caward_date%2Cdescription%2Cfiscal_year%2Ctotal_contract_value%2Cobligated%2Cidv_type%2Cmultiple_or_single_award_idv%2Ctype_of_idc%2Cperiod_of_performance%28start_date%2Clast_date_to_order%29%2Crecipient%28display_name%2Clegal_business_name%2Cuei%2Ccage%29%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29%2Cplace_of_performance%28%2A%29%2Cparent_award%28key%2Cpiid%29%2Ccompetition%28%2A%29%2Clegislative_mandates%28%2A%29%2Ctransactions%28%2A%29%2Csubawards_summary%28%2A%29 - response: - body: - string: '{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","fiscal_year":2026,"total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","multiple_or_single_award_idv":"S","type_of_idc":null,"period_of_performance":{"start_date":"2026-01-25"},"recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"},"awarding_office":{"office_code":"833101","office_name":"EXPORT - IMPORT BANK OF US","agency_code":"8300","agency_name":"Export-Import Bank - of the United States","department_code":83,"department_name":"Export-Import - Bank of the United States"},"funding_office":{"office_code":"833100","office_name":"EXPORT - IMPORT BANK OF THE US","agency_code":"8300","agency_name":"Export-Import Bank - of the United States","department_code":83,"department_name":"Export-Import - Bank of the United States"},"place_of_performance":{"country_code":null,"country_name":null,"state_code":null,"state_name":null,"city_name":"","zip_code":""},"parent_award":{"key":"CONT_IDV_47QSMS25D008R_4732","piid":"47QSMS25D008R"},"competition":{"contract_type":{"code":"J","description":"Firm - Fixed Price"},"extent_competed":{"code":"A","description":"Full and Open Competition"},"number_of_offers_received":1,"other_than_full_and_open_competition":null,"solicitation_date":null,"solicitation_identifier":"83310126QC007","solicitation_procedures":{"code":"MAFO","description":"Subject - to Multiple Award Fair Opportunity"}},"legislative_mandates":{"clinger_cohen_act_planning":{"code":"N","description":"No"},"construction_wage_rate_requirements":{"code":"X","description":"Not - Applicable"},"employment_eligibility_verification":null,"interagency_contracting_authority":{"code":"X","description":"Not - Applicable"},"labor_standards":{"code":"Y","description":"Yes"},"materials_supplies_articles_equipment":{"code":"X","description":"Not - Applicable"},"other_statutory_authority":null,"service_contract_inventory":null},"transactions":[{"obligated":0.0,"action_type":null,"description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","transaction_date":"2026-01-23","modification_number":"0"},{"obligated":0.0,"action_type":null,"description":null,"transaction_date":"2026-01-23","modification_number":"0"}],"subawards_summary":{}}' - headers: - CF-RAY: - - 9c42ff660a1da219-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:32 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CDmtotyd1YNAcya4vXmxhisr7jUyQG13WnZN7CZ3gwcTjMJJQ9TcPfu7W7kCv7HetrXob7aBKDaWw9uRd0CwO4epYtY7bAU1Gu9FRbiY3i6NzmvjekXxXRAs"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '2300' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.051s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '984' - x-ratelimit-burst-reset: - - '40' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999815' - x-ratelimit-daily-reset: - - '56989' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '984' - x-ratelimit-reset: - - '40' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c431387fdf41156-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:17 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=BwMqzL%2FSx4odkSKpO9f30x%2F5qf0DUVm4mQ01fFR6Rt0AiN0jS62MHEnf48CaFU8yNHf%2By6eCrQ8zy0HqmFldYdTne6gML5N14FI3Z%2F7MQcQNMvJbLBhg9ptMu0g%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '721' + - '937' cross-origin-opener-policy: - same-origin referrer-policy: @@ -221,185 +60,21 @@ interactions: x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '993' - x-ratelimit-burst-reset: - - '58' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999808' - x-ratelimit-daily-reset: - - '56164' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '993' - x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/?shape=key%2Cpiid%2Caward_date%2Cdescription%2Cfiscal_year%2Ctotal_contract_value%2Cobligated%2Cidv_type%2Cmultiple_or_single_award_idv%2Ctype_of_idc%2Cperiod_of_performance%28start_date%2Clast_date_to_order%29%2Crecipient%28display_name%2Clegal_business_name%2Cuei%2Ccage%29%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29%2Cplace_of_performance%28%2A%29%2Cparent_award%28key%2Cpiid%29%2Ccompetition%28%2A%29%2Clegislative_mandates%28%2A%29%2Ctransactions%28%2A%29%2Csubawards_summary%28%2A%29 - response: - body: - string: '{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","fiscal_year":2026,"total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","multiple_or_single_award_idv":"S","type_of_idc":null,"period_of_performance":{"start_date":"2026-01-25"},"recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"},"awarding_office":{"office_code":"833101","office_name":"EXPORT - IMPORT BANK OF US","agency_code":"8300","agency_name":"Export-Import Bank - of the United States","department_code":83,"department_name":"Export-Import - Bank of the United States"},"funding_office":{"office_code":"833100","office_name":"EXPORT - IMPORT BANK OF THE US","agency_code":"8300","agency_name":"Export-Import Bank - of the United States","department_code":83,"department_name":"Export-Import - Bank of the United States"},"place_of_performance":{"country_code":null,"country_name":null,"state_code":null,"state_name":null,"city_name":"","zip_code":""},"parent_award":{"key":"CONT_IDV_47QSMS25D008R_4732","piid":"47QSMS25D008R"},"competition":{"contract_type":{"code":"J","description":"Firm - Fixed Price"},"extent_competed":{"code":"A","description":"Full and Open Competition"},"number_of_offers_received":1,"other_than_full_and_open_competition":null,"solicitation_date":null,"solicitation_identifier":"83310126QC007","solicitation_procedures":{"code":"MAFO","description":"Subject - to Multiple Award Fair Opportunity"}},"legislative_mandates":{"clinger_cohen_act_planning":{"code":"N","description":"No"},"construction_wage_rate_requirements":{"code":"X","description":"Not - Applicable"},"employment_eligibility_verification":null,"interagency_contracting_authority":{"code":"X","description":"Not - Applicable"},"labor_standards":{"code":"Y","description":"Yes"},"materials_supplies_articles_equipment":{"code":"X","description":"Not - Applicable"},"other_statutory_authority":null,"service_contract_inventory":null},"transactions":[{"obligated":0.0,"action_type":null,"description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","transaction_date":"2026-01-23","modification_number":"0"},{"obligated":0.0,"action_type":null,"description":null,"transaction_date":"2026-01-23","modification_number":"0"}],"subawards_summary":{}}' - headers: - CF-RAY: - - 9c431388ef0f1156-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:17 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=sNNqc9G%2BrY4o357FmfGMUec419NFKSLQMaQ54J25XitqaJ%2Bvn%2Fq5n1xjMrinU0m6ZQ9agiXByyxnZntRwK47vmWGsA6wO0PGSZ7mM%2BQ3KV9A8cgX8r2lRG56sDo%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '2300' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.053s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '992' - x-ratelimit-burst-reset: - - '57' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999807' - x-ratelimit-daily-reset: - - '56164' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '992' - x-ratelimit-reset: - - '57' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4316d4c9bca242-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:32 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=8ecg7W8FD3%2BrCmR4HRWiACkOmCalOOVEFs%2BcbFmG7vj%2B5PBoBz0aowsiG2dlt14dUTvfs9Th5t3uuItTOpqjP9GR9F3ASIgEI6wNkesprWNFTa1lHFwyk5KuiC0%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '721' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.033s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '993' + - '905' x-ratelimit-burst-reset: - - '57' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999792' + - '1999665' x-ratelimit-daily-reset: - - '56029' + - '84965' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '993' + - '905' x-ratelimit-reset: - - '57' + - '5' status: code: 200 message: OK @@ -417,37 +92,42 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/?shape=key%2Cpiid%2Caward_date%2Cdescription%2Cfiscal_year%2Ctotal_contract_value%2Cobligated%2Cidv_type%2Cmultiple_or_single_award_idv%2Ctype_of_idc%2Cperiod_of_performance%28start_date%2Clast_date_to_order%29%2Crecipient%28display_name%2Clegal_business_name%2Cuei%2Ccage%29%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29%2Cplace_of_performance%28%2A%29%2Cparent_award%28key%2Cpiid%29%2Ccompetition%28%2A%29%2Clegislative_mandates%28%2A%29%2Ctransactions%28%2A%29%2Csubawards_summary%28%2A%29 + uri: https://tango.makegov.com/api/idvs/CONT_IDV_1240LN26D0006_12C2/?shape=key%2Cpiid%2Caward_date%2Cdescription%2Cfiscal_year%2Ctotal_contract_value%2Cobligated%2Cidv_type%2Cmultiple_or_single_award_idv%2Ctype_of_idc%2Cperiod_of_performance%28start_date%2Clast_date_to_order%29%2Crecipient%28display_name%2Clegal_business_name%2Cuei%2Ccage%29%2Cawarding_office%28%2A%29%2Cfunding_office%28%2A%29%2Cplace_of_performance%28%2A%29%2Cparent_award%28key%2Cpiid%29%2Ccompetition%28%2A%29%2Clegislative_mandates%28%2A%29%2Ctransactions%28%2A%29%2Csubawards_summary%28%2A%29 response: body: - string: '{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","fiscal_year":2026,"total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","multiple_or_single_award_idv":"S","type_of_idc":null,"period_of_performance":{"start_date":"2026-01-25"},"recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"},"awarding_office":{"office_code":"833101","office_name":"EXPORT - IMPORT BANK OF US","agency_code":"8300","agency_name":"Export-Import Bank - of the United States","department_code":83,"department_name":"Export-Import - Bank of the United States"},"funding_office":{"office_code":"833100","office_name":"EXPORT - IMPORT BANK OF THE US","agency_code":"8300","agency_name":"Export-Import Bank - of the United States","department_code":83,"department_name":"Export-Import - Bank of the United States"},"place_of_performance":{"country_code":null,"country_name":null,"state_code":null,"state_name":null,"city_name":"","zip_code":""},"parent_award":{"key":"CONT_IDV_47QSMS25D008R_4732","piid":"47QSMS25D008R"},"competition":{"contract_type":{"code":"J","description":"Firm - Fixed Price"},"extent_competed":{"code":"A","description":"Full and Open Competition"},"number_of_offers_received":1,"other_than_full_and_open_competition":null,"solicitation_date":null,"solicitation_identifier":"83310126QC007","solicitation_procedures":{"code":"MAFO","description":"Subject - to Multiple Award Fair Opportunity"}},"legislative_mandates":{"clinger_cohen_act_planning":{"code":"N","description":"No"},"construction_wage_rate_requirements":{"code":"X","description":"Not + string: '{"key":"CONT_IDV_1240LN26D0006_12C2","piid":"1240LN26D0006","award_date":"2026-03-03","description":"THIS + IS A COMBINED REGIONAL TREE PLANTING AND ASSOCIATED SERVICES IDIQ CONTRACT + FOR THE WESTERN MONTANA FORESTS POD WHICH IS COMPRISED OF THE BITTERROOT, + LOLO, AND FLATHEAD NATIONAL FORESTS AND THE BLM MISSOULA FIELD OFFICE. THE + AREA OF COVERAGE IS W","fiscal_year":2026,"total_contract_value":7600000.0,"obligated":0.0,"idv_type":"B","multiple_or_single_award_idv":"S","type_of_idc":null,"period_of_performance":{"start_date":"2026-03-02","last_date_to_order":"2031-02-03"},"recipient":{"uei":"SB3WP5CM9QS4","display_name":"SPROUT + FORESTRY INCORPORATED"},"awarding_office":{"office_code":"1240LN","office_name":"USDA-FS, + CSA INTERMOUNTAIN 3","agency_code":"12C2","agency_name":"FOREST SERVICE","department_code":"012","department_name":"AGRICULTURE, + DEPARTMENT OF"},"funding_office":{"office_code":"123430","office_name":"NORTHERN + RESEARCH STATION","agency_code":"12C2","agency_name":"FOREST SERVICE","department_code":"012","department_name":"AGRICULTURE, + DEPARTMENT OF"},"place_of_performance":{"country_code":null,"country_name":null,"state_code":null,"state_name":null,"city_name":"","zip_code":""},"parent_award":null,"competition":{"contract_type":{"code":"J","description":"Firm + Fixed Price"},"extent_competed":{"code":"D","description":"Full and Open Competition + after exclusion of sources"},"number_of_offers_received":23,"other_than_full_and_open_competition":null,"solicitation_date":"2025-12-12","solicitation_identifier":"1240LN26Q0002","solicitation_procedures":{"code":"NP","description":"Negotiated + Proposal/Quote"}},"legislative_mandates":{"clinger_cohen_act_planning":{"code":"N","description":"No"},"construction_wage_rate_requirements":{"code":"X","description":"Not Applicable"},"employment_eligibility_verification":null,"interagency_contracting_authority":{"code":"X","description":"Not - Applicable"},"labor_standards":{"code":"Y","description":"Yes"},"materials_supplies_articles_equipment":{"code":"X","description":"Not - Applicable"},"other_statutory_authority":null,"service_contract_inventory":null},"transactions":[{"obligated":0.0,"action_type":null,"description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","transaction_date":"2026-01-23","modification_number":"0"},{"obligated":0.0,"action_type":null,"description":null,"transaction_date":"2026-01-23","modification_number":"0"}],"subawards_summary":{}}' + Applicable"},"labor_standards":{"code":"X","description":"Not Applicable"},"materials_supplies_articles_equipment":{"code":"X","description":"Not + Applicable"},"other_statutory_authority":null,"service_contract_inventory":null},"transactions":[{"obligated":0.0,"action_type":null,"description":"THIS + IS A COMBINED REGIONAL TREE PLANTING AND ASSOCIATED SERVICES IDIQ CONTRACT + FOR THE WESTERN MONTANA FORESTS POD WHICH IS COMPRISED OF THE BITTERROOT, + LOLO, AND FLATHEAD NATIONAL FORESTS AND THE BLM MISSOULA FIELD OFFICE. THE + AREA OF COVERAGE IS W","transaction_date":"2026-03-03","modification_number":"0"}],"subawards_summary":{}}' headers: CF-RAY: - - 9c4316d66b24a242-ORD + - 9d71a7a49b165120-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:26:32 GMT + - Wed, 04 Mar 2026 14:43:43 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ATfp0dpDPDHZG%2Bt9F57m6Em2GBrkaz8ThUXP%2BDFzxUOaJqlsGNrdlxLfSuOhOnEK1SdZ%2BhMIaG%2F80KDPKb93OplPoVW5f5dujBihzwUTkRR6L5bTwAMaMNBJZJQ%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=KEaTrIC4TlOwhjuxVRhgSVK%2F85jBhLu8uJv5Q%2BD2AKOzqKpaNMwXpPe%2FTQ6k7dnQpMsMQFo%2BeTtstHQi3HEu2p2rtuEckJFGsEI6n7QnmRLhWaZ0CUUiSaBW"}]}' Server: - cloudflare Transfer-Encoding: @@ -457,7 +137,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '2300' + - '2541' cross-origin-opener-policy: - same-origin referrer-policy: @@ -467,27 +147,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.052s + - 0.027s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '992' + - '904' x-ratelimit-burst-reset: - - '57' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999791' + - '1999664' x-ratelimit-daily-reset: - - '56029' + - '84965' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '992' + - '904' x-ratelimit-reset: - - '57' + - '5' status: code: 200 message: OK diff --git a/tests/cassettes/TestIDVsIntegration.test_list_idv_awards_uses_default_shape b/tests/cassettes/TestIDVsIntegration.test_list_idv_awards_uses_default_shape index 9032ca0..dd7cd5e 100644 --- a/tests/cassettes/TestIDVsIntegration.test_list_idv_awards_uses_default_shape +++ b/tests/cassettes/TestIDVsIntegration.test_list_idv_awards_uses_default_shape @@ -16,22 +16,25 @@ interactions: uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' + string: '{"count":1161220,"next":"https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous_cursor":null,"results":[{"key":"CONT_IDV_1240LN26D0006_12C2","piid":"1240LN26D0006","award_date":"2026-03-03","description":"THIS + IS A COMBINED REGIONAL TREE PLANTING AND ASSOCIATED SERVICES IDIQ CONTRACT + FOR THE WESTERN MONTANA FORESTS POD WHICH IS COMPRISED OF THE BITTERROOT, + LOLO, AND FLATHEAD NATIONAL FORESTS AND THE BLM MISSOULA FIELD OFFICE. THE + AREA OF COVERAGE IS W","total_contract_value":7600000.0,"obligated":0.0,"idv_type":"B","recipient":{"uei":"SB3WP5CM9QS4","display_name":"SPROUT + FORESTRY INCORPORATED"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9c43138aaa7f10d1-ORD + - 9d71a7a5de9dacf6-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:24:17 GMT + - Wed, 04 Mar 2026 14:43:43 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=yZUNcnkTrEdarVYGa%2FcflMLJhs7NqEtwUH9vY60INmKI49BGiuIVrNb7knmqmK2w75DAObXXWNTRPpCYiMLWMX5YJvbFrD%2FSDxq%2FVYu2A2ISpm5XtE7Zo32vQM0%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=l8X%2FxghpzN%2Bp6CjmOhHJuDrpW2f6d6UGlznOpYb5dwLjx3iuXQq2D%2F7GzwMDv0O1kCwBt0UOMUN%2BmEjve%2FfNQ26i0h0xQAIp6ClKHdU0NN91CF6TqiMkv9N4"}]}' Server: - cloudflare Transfer-Encoding: @@ -41,7 +44,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '721' + - '937' cross-origin-opener-policy: - same-origin referrer-policy: @@ -51,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.029s + - 0.028s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '991' + - '903' x-ratelimit-burst-reset: - - '57' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999806' + - '1999663' x-ratelimit-daily-reset: - - '56164' + - '84965' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '991' + - '903' x-ratelimit-reset: - - '57' + - '5' status: code: 200 message: OK @@ -89,23 +92,23 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/awards/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/idvs/CONT_IDV_1240LN26D0006_12C2/awards/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: string: '{"count":0,"next":null,"previous":null,"cursor":null,"previous_cursor":null,"results":[],"count_type":"approximate"}' headers: CF-RAY: - - 9c43138bab6d10d1-ORD + - 9d71a7a6a813acf6-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:24:17 GMT + - Wed, 04 Mar 2026 14:43:43 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=8jnqlUQal5PqMf74IreAP%2BFaAQcndsBxY9SWOQV0H0lZ4i%2FdW4cjiUOcmhPtYAzYDDpAjKAICzHawqklt3AquAxRAT6wGyX79fpltj9xEdBXGRcOWiZ%2BVBHVj8s%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3QEBiqhXOXaZibULA7BFMycM6OCtEy1Bz7tkYYwI%2FX43QicfrKYKpwQxCByivTjxfzUpSkivioMyvCdNpPlhvKbQSBSZ87ILMM7Jiv39I4jLFM8QkKuTI2Rg"}]}' Server: - cloudflare Transfer-Encoding: @@ -125,177 +128,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.055s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '990' + - '902' x-ratelimit-burst-reset: - - '57' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999805' + - '1999662' x-ratelimit-daily-reset: - - '56163' + - '84965' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '990' + - '902' x-ratelimit-reset: - - '57' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4316d7f9f01150-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:33 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Pt8wWegli4AxUywblYHp8njNDZaxgkCLGZvzu4p1vJR4VghvEwCydu5mzWm7ZnDaSub9NSwWeMXo4AENrd3UBJR2Nh2p6xAsl%2BssIfhFUhWogz2ZuMiqKC8GQOE%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '721' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.030s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '991' - x-ratelimit-burst-reset: - - '56' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999790' - x-ratelimit-daily-reset: - - '56028' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '991' - x-ratelimit-reset: - - '56' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/awards/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value - response: - body: - string: '{"count":0,"next":null,"previous":null,"cursor":null,"previous_cursor":null,"results":[],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4316d8cabb1150-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:33 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=10lMw9Ks5igT7hz5N%2Br%2Bhc8S8bu8Fl3wY4Fkl60fAVaGUROD7JgNLZ4ez3ZrGZ7My%2BW9UER7u%2FEK%2BD7ewW2THxyAQc4lrvcI539dTkRyJqLg7x%2FQLaYudzgvFSA%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '116' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.050s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '990' - x-ratelimit-burst-reset: - - '56' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999789' - x-ratelimit-daily-reset: - - '56028' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '990' - x-ratelimit-reset: - - '56' + - '5' status: code: 200 message: OK diff --git a/tests/cassettes/TestIDVsIntegration.test_list_idv_child_idvs_uses_default_shape b/tests/cassettes/TestIDVsIntegration.test_list_idv_child_idvs_uses_default_shape index 5c717d9..2e65b84 100644 --- a/tests/cassettes/TestIDVsIntegration.test_list_idv_child_idvs_uses_default_shape +++ b/tests/cassettes/TestIDVsIntegration.test_list_idv_child_idvs_uses_default_shape @@ -16,22 +16,25 @@ interactions: uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' + string: '{"count":1161220,"next":"https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous_cursor":null,"results":[{"key":"CONT_IDV_1240LN26D0006_12C2","piid":"1240LN26D0006","award_date":"2026-03-03","description":"THIS + IS A COMBINED REGIONAL TREE PLANTING AND ASSOCIATED SERVICES IDIQ CONTRACT + FOR THE WESTERN MONTANA FORESTS POD WHICH IS COMPRISED OF THE BITTERROOT, + LOLO, AND FLATHEAD NATIONAL FORESTS AND THE BLM MISSOULA FIELD OFFICE. THE + AREA OF COVERAGE IS W","total_contract_value":7600000.0,"obligated":0.0,"idv_type":"B","recipient":{"uei":"SB3WP5CM9QS4","display_name":"SPROUT + FORESTRY INCORPORATED"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9c43138d4fb961fa-ORD + - 9d71a7a7db22acdc-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:24:18 GMT + - Wed, 04 Mar 2026 14:43:44 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=mbUBhGkGLNMJKc2QjTZ3zdX4O52mhg%2Fb%2B8t7GSy8yEhQ8HIKN9hilOlVZpbj%2BPsMZeLg39j8Hm4iEi47Z85wZQJ%2BW2R0d4TeRCGRarXZQfTyF6UxHNAULp3196c%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=SNUzVrq1M17zZ1jZ59aA7wNWkwp6SzsEo1OrrcxosphPtvreZnpAsVapL7Dal6dOJjAhbuOh2d4130MQL4mem5uKG22nA3U6r8bLdZP%2BD4%2FfjRBYAJSo31xS"}]}' Server: - cloudflare Transfer-Encoding: @@ -41,157 +44,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '721' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.034s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '989' - x-ratelimit-burst-reset: - - '57' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999804' - x-ratelimit-daily-reset: - - '56163' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '989' - x-ratelimit-reset: - - '57' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":0,"next":null,"previous":null,"cursor":null,"previous_cursor":null,"results":[],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c43138e88e361fa-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:18 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Ix%2B6gYsHTleYSNb2ZBlnbf%2FsHElmiMvPaGRflAdl63XjdwALG%2FRxXEUr4%2FuSST4dEfpChcB%2BHDmU%2FdMNFgBm1S6PdgtfbCnh%2FFXZjRKi5J68kN5EhIv2yBSaHI0%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '116' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.062s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '988' - x-ratelimit-burst-reset: - - '57' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999803' - x-ratelimit-daily-reset: - - '56163' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '988' - x-ratelimit-reset: - - '57' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4316da899190b3-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:33 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=6ro0Aq6AWOpF8H745bomr%2FM5afru2iriLt9shSYY3wal1N3b9A5LFqS4C%2FhNdeUybJvm228gIwElk9by2eRlxNjke33lSXv2tGtM9FgHYIdVdul%2FjLLLw%2BhedAs%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '721' + - '937' cross-origin-opener-policy: - same-origin referrer-policy: @@ -207,21 +60,21 @@ interactions: x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '989' + - '901' x-ratelimit-burst-reset: - - '56' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999788' + - '1999661' x-ratelimit-daily-reset: - - '56028' + - '84965' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '989' + - '901' x-ratelimit-reset: - - '56' + - '4' status: code: 200 message: OK @@ -239,23 +92,23 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type + uri: https://tango.makegov.com/api/idvs/CONT_IDV_1240LN26D0006_12C2/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: string: '{"count":0,"next":null,"previous":null,"cursor":null,"previous_cursor":null,"results":[],"count_type":"approximate"}' headers: CF-RAY: - - 9c4316db6d0590b3-ORD + - 9d71a7a8bcc2acdc-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:26:33 GMT + - Wed, 04 Mar 2026 14:43:44 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=MaeBch2Z3WPlCvQulvF820SObbCl90D%2BihrKUKChlF6R5sWlD1L8mu208BQrAEkJs0CyV%2F1hjAplRkzlqBHWPgM%2Fiojkd9agiGFCNCQMYvL6ZgYUDdqUQldqUVs%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AHPn284o85UpK7%2FM45obAWdnSfUuLPwjhUUwbxL0kYTg%2FlZrxkhVhiKlEnguoSXd4H8n%2BleraHcMjqgvJCXz9r%2Fp%2B8q0QOTgxKuModXke26jh6xiW8cy%2Bn1C"}]}' Server: - cloudflare Transfer-Encoding: @@ -275,27 +128,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.040s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '988' + - '900' x-ratelimit-burst-reset: - - '56' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999787' + - '1999660' x-ratelimit-daily-reset: - - '56028' + - '84964' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '988' + - '900' x-ratelimit-reset: - - '56' + - '4' status: code: 200 message: OK diff --git a/tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards b/tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards index 72f26ac..3aa7eef 100644 --- a/tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards +++ b/tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards @@ -1,80 +1,4 @@ interactions: -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4313947a931140-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:19 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rpTmNrkW7DlX3HLcVKIuecZtB828kvlNFneOcmJDY9H161skw46fpbQKbJ731LiBbBvyVVPz8qGA3aFmzdW%2BGvmO%2BrajaDNboxmB5z5Qy%2BKMjEQ4AegRYPnRfgw%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '721' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.031s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '984' - x-ratelimit-burst-reset: - - '56' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999799' - x-ratelimit-daily-reset: - - '56162' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '984' - x-ratelimit-reset: - - '56' - status: - code: 200 - message: OK - request: body: '' headers: @@ -92,13 +16,13 @@ interactions: uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date response: body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 + string: '{"count":5874,"next":"https://tango.makegov.com/api/vehicles/?limit=10&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"},{"uuid":"eb797c6e-6865-505e-9c71-7d0dfc3b1b35","solicitation_identifier":"0040626388","organization_id":"0d75c931-8b4e-5941-9ec3-2b35df3ea8d9","awardee_count":3,"order_count":6,"vehicle_obligations":37189.74,"vehicle_contracts_value":37189.74,"solicitation_title":"B--AZ ES ARCHAEOLOGICAL SERVICES","solicitation_date":"2023-08-29"},{"uuid":"ef62a4f0-080a-503f-adbe-a1705ae410c0","solicitation_identifier":"05GA0A22Q0023","organization_id":"2774a854-bcf4-5d85-94c0-d715f0c1819f","awardee_count":4,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"SOLICITATION - GAO IDIQ CONSTRUCTION SERVICES","solicitation_date":"2022-03-21"},{"uuid":"4c317645-db68-53e7-8d97-eeec38e7da2e","solicitation_identifier":"1069512","organization_id":"384a7047-2f7c-5a2f-88b0-8e47cb5f98f5","awardee_count":2,"order_count":5,"vehicle_obligations":1828095.0,"vehicle_contracts_value":1828095.0,"solicitation_title":"Intent to Sole Source Procurement for Specific Pathogen Free (SPF) Embryonating Chicken Eggs","solicitation_date":"2022-09-13"},{"uuid":"98718d55-29c9-56f8-9a19-058f2b6e7174","solicitation_identifier":"1131PL21RIQ71002","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":4,"order_count":6,"vehicle_obligations":332140.66,"vehicle_contracts_value":332140.66,"solicitation_title":"Monitoring - and Evaluations: Program Audit Series Services IDIQ","solicitation_date":"2021-08-06"},{"uuid":"e2b5a801-4ddd-5abe-92b4-ba1807421c8f","solicitation_identifier":"1131PL22RIQ0001","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":18,"order_count":52,"vehicle_obligations":32586217.82,"vehicle_contracts_value":32586217.82,"solicitation_title":"IDIQ: + and Evaluations: Program Audit Series Services IDIQ","solicitation_date":"2021-08-06"},{"uuid":"e2b5a801-4ddd-5abe-92b4-ba1807421c8f","solicitation_identifier":"1131PL22RIQ0001","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":18,"order_count":55,"vehicle_obligations":32511871.78,"vehicle_contracts_value":32687649.87,"solicitation_title":"IDIQ: Multiple Award Contract - - Reverse Trade Missions, Conferences, Workshops, Training, and Other Events","solicitation_date":"2022-04-08"},{"uuid":"a9df6717-67b2-51c1-9d6d-e29b1d89b4cb","solicitation_identifier":"1145PC20Q0026","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":9,"order_count":32,"vehicle_obligations":377286.14,"vehicle_contracts_value":383286.14,"solicitation_title":"Peace Corps Background Investigators","solicitation_date":"2020-03-17"},{"uuid":"8d124a98-17f3-5143-b11a-cba33b218145","solicitation_identifier":"1145PC22Q0042","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":7,"order_count":18,"vehicle_obligations":116624.52,"vehicle_contracts_value":116624.52,"solicitation_title":"Language @@ -107,17 +31,17 @@ interactions: 6 Coaching Services - BPA","solicitation_date":"2017-12-14"}]}' headers: CF-RAY: - - 9c4316e29bfcae13-ORD + - 9d71a7ae4ab2e892-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:26:34 GMT + - Wed, 04 Mar 2026 14:43:45 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=AiLUTevyVtkND2ikEiJC1W3S8KKcI7vASBwB9%2B%2F6mf9vofeaRRvRbRYjM4UUcJ%2BLyPBVgqxiHcDFy%2FaKqQM3KsJwxjyn%2Br2bVCfaR%2FaKKNszhOiQaFCamaV5EUE%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=OvpmH2vExpNiPBWcdm3GAsr09aIcFhHjgQtTI6UtMZUasLRUPXpzuzxpknZ0ngfA2w3nslPnSbb1aX7%2FufUv0N0TgW%2BbFobcdPZ6imb1GThiqkTxmbxoudY9"}]}' Server: - cloudflare Transfer-Encoding: @@ -127,7 +51,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '3915' + - '3916' cross-origin-opener-policy: - same-origin referrer-policy: @@ -137,27 +61,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.024s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '983' + - '896' x-ratelimit-burst-reset: - - '55' + - '3' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999782' + - '1999656' x-ratelimit-daily-reset: - - '56027' + - '84964' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '983' + - '896' x-ratelimit-reset: - - '55' + - '3' status: code: 200 message: OK @@ -178,79 +102,143 @@ interactions: uri: https://tango.makegov.com/api/idvs/0/summary/awards/?limit=10 response: body: - string: '{"count":39,"next":"http://tango.makegov.com/api/idvs/0/summary/awards/?limit=10&cursor=WyIyMDIxLTAzLTE3IiwgIjNhYjQzMjFkLTc2YTUtNThjMi1hYWY2LTg1MzIxY2NkMWJjMSJd","previous":null,"cursor":"WyIyMDIxLTAzLTE3IiwgIjNhYjQzMjFkLTc2YTUtNThjMi1hYWY2LTg1MzIxY2NkMWJjMSJd","previous_cursor":null,"results":[{"key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"},"award_date":"2025-02-26","obligated":0.0,"total_contract_value":242942.75,"fiscal_year":2025,"idv_type":"E","description":null},{"key":"CONT_IDV_19GE5023D0042_1900","piid":"19GE5023D0042","recipient":{"uei":"U5KJFB7SCY51","display_name":"PRIVATE - JOINT STOCK COMPANY ''INSURANCE COMPANY ''UNIQA''"},"award_date":"2023-09-22","obligated":0.0,"total_contract_value":2188360.07,"fiscal_year":2023,"idv_type":"B","description":"1-YEAR - LE STAFF HEALTH INSURANCE - KYIV, UKRAINE"},{"key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."},"award_date":"2023-09-21","obligated":0.0,"total_contract_value":15515.0,"fiscal_year":2023,"idv_type":"E","description":"LEXINGTON - VAMC AMOS CONSIGNMENT"},{"key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."},"award_date":"2023-09-19","obligated":0.0,"total_contract_value":5000000.0,"fiscal_year":2023,"idv_type":"E","description":"HR - SUPPORT SERVICES"},{"key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."},"award_date":"2023-06-23","obligated":0.0,"total_contract_value":240000.0,"fiscal_year":2023,"idv_type":"E","description":"CONSIGNMENT - INVENTORY"},{"key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."},"award_date":"2022-09-12","obligated":0.0,"total_contract_value":100000.0,"fiscal_year":2022,"idv_type":"E","description":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT"},{"key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"},"award_date":"2022-03-17","obligated":0.0,"total_contract_value":1.0,"fiscal_year":2022,"idv_type":"E","description":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA"},{"key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"},"award_date":"2021-10-01","obligated":0.0,"total_contract_value":281508.54,"fiscal_year":2022,"idv_type":"E","description":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS"},{"key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"},"award_date":"2021-03-23","obligated":0.0,"total_contract_value":150000.0,"fiscal_year":2021,"idv_type":"E","description":null},{"key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"},"award_date":"2021-03-17","obligated":0.0,"total_contract_value":2903970.0,"fiscal_year":2021,"idv_type":"E","description":"STERNAL - PLATES AND SCREWS"}]}' + string: "\n\n \n \n + \ \n \n 404 - Page + Not Found | Tango by MakeGov\n \n \n \n + \ \n + \ \n \n + \ \n \n + \ \n + \ \n \n + \ \n + \ \n + \ \n + \ \n \n + \ \n \n \n \n \n \n \n Skip + to main content
\n
\n
\n + \
\n
\n
\n \n \n \n + \ \n + \ \n \n
\n + \
\n \n
\n
\n + \
\n
\n \n + \
\n
\n
\n \n
\n \n
\n \n

\"404

\n \n

Uh-oh! + Nothing here!

\n

Go + back

\n
\n \n
\n\n \n + \ \n \n\n" headers: CF-RAY: - - 9c4316e35ddfae13-ORD + - 9d71a7af1e8ae892-MSP Connection: - keep-alive Content-Type: - - application/json + - text/html; charset=utf-8 Date: - - Mon, 26 Jan 2026 21:26:34 GMT + - Wed, 04 Mar 2026 14:43:45 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=dkh41CRYKWPvxHzfzJrjTUmnNsiu8vP3ka9KM2KJrfOkkhuNMB%2FxuhNnJ6FmHVQtN3SnZVscyzMGg%2FdGf%2FSWPUci9pxKL%2Fd1J4C9gzv9Zlg1gAPDEa6AfLHeqXY%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=K4YX978Y5QdYN7PdxuOgoP7dktNFnxH0T%2F3lbkIlScQMCQx17v0TtTrhqbwyFDbr9x1V%2BTKcLkJ6hK5DksN1odBzxSDQHXvGQ%2BP37yhnYlLApRWCDBX4VFt1"}]}' Server: - cloudflare Transfer-Encoding: - chunked - allow: - - GET, HEAD, OPTIONS cf-cache-status: - DYNAMIC content-length: - - '3201' + - '7174' cross-origin-opener-policy: - same-origin referrer-policy: - same-origin vary: - - Accept, Cookie + - Cookie x-content-type-options: - nosniff x-execution-time: - - 0.148s + - 0.007s x-frame-options: - DENY x-ratelimit-burst-limit: - - '1000' + - '10' x-ratelimit-burst-remaining: - - '982' + - '10' x-ratelimit-burst-reset: - - '54' + - '0' x-ratelimit-daily-limit: - - '2000000' + - '100' x-ratelimit-daily-remaining: - - '1999781' + - '100' x-ratelimit-daily-reset: - - '56026' + - '0' x-ratelimit-limit: - - '1000' + - '10' x-ratelimit-remaining: - - '982' + - '10' x-ratelimit-reset: - - '54' + - '0' status: - code: 200 - message: OK + code: 404 + message: Not Found version: 1 diff --git a/tests/cassettes/TestIDVsIntegration.test_list_idv_transactions b/tests/cassettes/TestIDVsIntegration.test_list_idv_transactions index fd29d57..30e8fe3 100644 --- a/tests/cassettes/TestIDVsIntegration.test_list_idv_transactions +++ b/tests/cassettes/TestIDVsIntegration.test_list_idv_transactions @@ -16,22 +16,25 @@ interactions: uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' + string: '{"count":1161220,"next":"https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImUxMTJiM2ZjLWNlZDUtNTgzNy04ODNlLTk2ZWRjOWE5MWMwMiJd","previous_cursor":null,"results":[{"key":"CONT_IDV_1240LN26D0006_12C2","piid":"1240LN26D0006","award_date":"2026-03-03","description":"THIS + IS A COMBINED REGIONAL TREE PLANTING AND ASSOCIATED SERVICES IDIQ CONTRACT + FOR THE WESTERN MONTANA FORESTS POD WHICH IS COMPRISED OF THE BITTERROOT, + LOLO, AND FLATHEAD NATIONAL FORESTS AND THE BLM MISSOULA FIELD OFFICE. THE + AREA OF COVERAGE IS W","total_contract_value":7600000.0,"obligated":0.0,"idv_type":"B","recipient":{"uei":"SB3WP5CM9QS4","display_name":"SPROUT + FORESTRY INCORPORATED"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9c4313903c821267-ORD + - 9d71a7aa4f16a1b9-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:24:18 GMT + - Wed, 04 Mar 2026 14:43:44 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=G8f2%2B3kfSKV2IxpqfOdnSxX55cZux9BjhrhfLkhNb31fiKVWADI9UBAmOkuaV1jPZ4pVlK9zPP35qtDP7iJWnUaVjOM5hqdjM8afs%2BSqUffJS9UzLUl397okg7k%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=mrTpR0MhGU%2BduZcrya9ynRCPOfiaJxV2mY4rmzHZAW8PODevDw1cLm4ktPHezEgOvF764P4LrRik3PboYXpDXqqbUXll3sAOli46hLWfMaSLMDg4rksX4An5"}]}' Server: - cloudflare Transfer-Encoding: @@ -41,7 +44,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '721' + - '937' cross-origin-opener-policy: - same-origin referrer-policy: @@ -51,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.028s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '987' + - '899' x-ratelimit-burst-reset: - - '56' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999802' + - '1999659' x-ratelimit-daily-reset: - - '56163' + - '84964' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '987' + - '899' x-ratelimit-reset: - - '56' + - '4' status: code: 200 message: OK @@ -89,24 +92,27 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/transactions/?limit=10 + uri: https://tango.makegov.com/api/idvs/CONT_IDV_1240LN26D0006_12C2/transactions/?limit=10 response: body: - string: '{"count":2,"next":null,"previous":null,"results":[{"modification_number":"0","transaction_date":"2026-01-23","obligated":0.0,"description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","action_type":null},{"modification_number":"0","transaction_date":"2026-01-23","obligated":0.0,"description":null,"action_type":null}]}' + string: '{"count":1,"next":null,"previous":null,"results":[{"modification_number":"0","transaction_date":"2026-03-03","obligated":0.0,"description":"THIS + IS A COMBINED REGIONAL TREE PLANTING AND ASSOCIATED SERVICES IDIQ CONTRACT + FOR THE WESTERN MONTANA FORESTS POD WHICH IS COMPRISED OF THE BITTERROOT, + LOLO, AND FLATHEAD NATIONAL FORESTS AND THE BLM MISSOULA FIELD OFFICE. THE + AREA OF COVERAGE IS W","action_type":null}]}' headers: CF-RAY: - - 9c4313911da11267-ORD + - 9d71a7ab083ba1b9-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:24:18 GMT + - Wed, 04 Mar 2026 14:43:44 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=hTVbkW0Wx%2BdFijGUOXb0xZ0cXPDSKWQi8DlYx01tMgxVah5yDxK79wKaTPf2leKe3pxgwMHMjKJVb7mlK5f6ifIVUghn3I%2FPFVeWPqAPwbfzMBpl17ES2v4%2FL08%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3H8weTIJpAi3cEhIGmHv%2FmMlZC7k%2Bi2gQ731oUUrUiHu007f2AbTDNgwZrr2jEKrxkbpC2MLsZE%2FjlLXc%2FG%2BSgazYscaHo%2BB2RKP1Bcffk7AGPKmZTy3BNsq"}]}' Server: - cloudflare Transfer-Encoding: @@ -116,7 +122,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '324' + - '413' cross-origin-opener-policy: - same-origin referrer-policy: @@ -126,178 +132,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.049s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '986' + - '898' x-ratelimit-burst-reset: - - '56' + - '4' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999801' + - '1999658' x-ratelimit-daily-reset: - - '56162' + - '84964' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '986' + - '898' x-ratelimit-reset: - - '56' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":1151197,"next":"http://tango.makegov.com/api/idvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous":null,"cursor":"WyIyMDI2LTAxLTIzIiwgImUyMzQzNTk2LTQ1MDctNTZjMi1iNjQ0LWJhMmYyODI0OGQ2NyJd","previous_cursor":null,"results":[{"key":"CONT_IDV_83310126AC060_8300","piid":"83310126AC060","award_date":"2026-01-23","description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","total_contract_value":7500000.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"P4XNSMKPNGM5","display_name":"PRICE - MODERN LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4316dcfc5d5552-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:33 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CYPjPKD3TTQk7qYy6mworEU3l0O3SJ4ORX9kf9QhQFkuoC7Rg8PIYixvMlAnoymg9IlMlvCZo5NF3vrvxctrNXCD%2FhtgnhSahT7dFIIixWGB3ctxSAyyZ77npMI%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '721' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.029s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '987' - x-ratelimit-burst-reset: - - '56' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999786' - x-ratelimit-daily-reset: - - '56027' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '987' - x-ratelimit-reset: - - '56' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/CONT_IDV_83310126AC060_8300/transactions/?limit=10 - response: - body: - string: '{"count":2,"next":null,"previous":null,"results":[{"modification_number":"0","transaction_date":"2026-01-23","obligated":0.0,"description":"FAR - 8.4 BPA FOR OFFICE FURNITURE - SB SET-ASIDE","action_type":null},{"modification_number":"0","transaction_date":"2026-01-23","obligated":0.0,"description":null,"action_type":null}]}' - headers: - CF-RAY: - - 9c4316ddcd285552-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:33 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=v4zHMW44crJI47MQUZ0lciG5SDraG1F0ZJAgpH%2FcNAkptLITMOg7XqDtPfo8IBbyw4WF9haZPlU%2BHs82NQFO%2BGzpMlLBqGtPAabhmg7W3JVH1Gt%2BSSYX0efs1mY%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '324' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.028s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '986' - x-ratelimit-burst-reset: - - '55' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999785' - x-ratelimit-daily-reset: - - '56027' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '986' - x-ratelimit-reset: - - '55' + - '4' status: code: 200 message: OK diff --git a/tests/cassettes/TestIDVsIntegration.test_list_idvs_uses_default_shape_and_keyset_params b/tests/cassettes/TestIDVsIntegration.test_list_idvs_uses_default_shape_and_keyset_params index f62c629..4c62291 100644 --- a/tests/cassettes/TestIDVsIntegration.test_list_idvs_uses_default_shape_and_keyset_params +++ b/tests/cassettes/TestIDVsIntegration.test_list_idvs_uses_default_shape_and_keyset_params @@ -16,40 +16,40 @@ interactions: uri: https://tango.makegov.com/api/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&awarding_agency=4700 response: body: - string: '{"count":5545,"next":"http://tango.makegov.com/api/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&awarding_agency=4700&cursor=WyIyMDI2LTAxLTIxIiwgIjZkOGUwZWZkLTNmMWUtNTg2Ni1iMzVjLWJiODFmMWIxMTdhMSJd","previous":null,"cursor":"WyIyMDI2LTAxLTIxIiwgIjZkOGUwZWZkLTNmMWUtNTg2Ni1iMzVjLWJiODFmMWIxMTdhMSJd","previous_cursor":null,"results":[{"key":"CONT_IDV_47QSMS26D0023_4732","piid":"47QSMS26D0023","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":475000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"R7A8T1CDJHA3","display_name":"IMAGE - PRINTING COMPANY, INC."}},{"key":"CONT_IDV_47QTCA26D0031_4732","piid":"47QTCA26D0031","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":1500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"VB34UDK8T7S7","display_name":"NAVCARA - LLC"}},{"key":"CONT_IDV_47QRAA26D0032_4732","piid":"47QRAA26D0032","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"GP58ACJU35Q3","display_name":"BONNER - COMMUNICATIONS LLC"}},{"key":"CONT_IDV_47QSMS26D0022_4732","piid":"47QSMS26D0022","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":1000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"C1NZB7KDTEK3","display_name":"SENTINEL - SERVICES, LLC"}},{"key":"CONT_IDV_47QRAA26D0031_4732","piid":"47QRAA26D0031","award_date":"2026-01-22","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":5002000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"XKNBXQT1K1Q9","display_name":"BULLDOG - CONSULTING SERVICES LLC"}},{"key":"CONT_IDV_47QRAA26D0030_4732","piid":"47QRAA26D0030","award_date":"2026-01-22","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":2850000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"PHU5ZESD58A7","display_name":"QSOURCE"}},{"key":"CONT_IDV_47QRAA26D002Z_4732","piid":"47QRAA26D002Z","award_date":"2026-01-21","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":2500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"PJKDKEL234X1","display_name":"ST. - MORITZ ENTERPRISES, L.L.C."}},{"key":"CONT_IDV_47QSCC26D0001_4732","piid":"47QSCC26D0001","award_date":"2026-01-21","description":"OTHER - THAN SCHEDULE","total_contract_value":77780735.0,"obligated":0.0,"idv_type":"B","recipient":{"uei":"QEMLRQA7PLG4","display_name":"AMENTUM - SERVICES, INC."}},{"key":"CONT_IDV_47QSMS26D0021_4732","piid":"47QSMS26D0021","award_date":"2026-01-21","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":10000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"CMNQCL7FNKB1","display_name":"DRI - INC"}},{"key":"CONT_IDV_47QRCA26DA018_4732","piid":"47QRCA26DA018","award_date":"2026-01-21","description":"ONE - ACQUISITION SOLUTION FOR INTEGRATED SERVICES PLUS (OASIS+) 8(A) SMALL BUSINESS - MULTIPLE AGENCY CONTRACT (MAC)","total_contract_value":999999999999.0,"obligated":2500.0,"idv_type":"B","recipient":{"uei":"N6LCFMKNCNT5","display_name":"CHUGACH - SOLUTIONS ENTERPRISE, LLC"}}],"count_type":"approximate"}' + string: '{"count":4834,"next":"https://tango.makegov.com/api/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&awarding_agency=4700&cursor=WyIyMDI2LTAyLTI2IiwgIjQ0NzkyYzNlLWU2NjgtNTFiNS1hMTkwLWNmMzYwY2FiZjVkZiJd","previous":null,"cursor":"WyIyMDI2LTAyLTI2IiwgIjQ0NzkyYzNlLWU2NjgtNTFiNS1hMTkwLWNmMzYwY2FiZjVkZiJd","previous_cursor":null,"results":[{"key":"CONT_IDV_47QTCA26D003Q_4732","piid":"47QTCA26D003Q","award_date":"2026-03-03","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":475000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"PTH7Z5BD9GK5","display_name":"NAKUPUNA + FEDERAL LLC"}},{"key":"CONT_IDV_47QTCA26D003P_4732","piid":"47QTCA26D003P","award_date":"2026-03-02","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":20000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"L87DPH1AC7N5","display_name":"EPIC + BROADBAND SOLUTIONS INC"}},{"key":"CONT_IDV_47PC5126D0003_4740","piid":"47PC5126D0003","award_date":"2026-03-02","description":"RAISED + FLOORING COURTROOM 11B - USDC","total_contract_value":79899.0,"obligated":79899.0,"idv_type":"B","recipient":{"uei":"ZL7MRVE6E4N3","display_name":"EASTERN + CONSTRUCTION & ELECTRIC INC"}},{"key":"CONT_IDV_47QTCA26D003N_4732","piid":"47QTCA26D003N","award_date":"2026-02-27","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":1646500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"Q2M4FYALZJ89","display_name":"IRON + BOW TECHNOLOGIES, LLC"}},{"key":"CONT_IDV_47QSMS26D0035_4732","piid":"47QSMS26D0035","award_date":"2026-02-27","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"DVXRUACX7Y99","display_name":"ACTION + ELEVATOR COMPANY LLC"}},{"key":"CONT_IDV_47QACA26A0008_4732","piid":"47QACA26A0008","award_date":"2026-02-26","description":"86614822A00001 NATIONWIDE + ADVERTISING MEDIA PLACEMENT SERVICES BPA - ADMINISTRATIVE CONTINUANCE","total_contract_value":4425997.0,"obligated":0.0,"idv_type":"E","recipient":{"uei":"Q6ULESYWUAG6","display_name":"SCHATZ + PUBLISHING GROUP, LLC"}},{"key":"CONT_IDV_47QRAA26D0049_4732","piid":"47QRAA26D0049","award_date":"2026-02-26","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":1200000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"SK2KN8JPJNX5","display_name":"ANTHRO-TECH, + INC."}},{"key":"CONT_IDV_47QSMS26D0034_4732","piid":"47QSMS26D0034","award_date":"2026-02-26","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":900000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"W7H9LMGJUFQ9","display_name":"LOCKMASTERS + INC"}},{"key":"CONT_IDV_47QTCA26D003L_4732","piid":"47QTCA26D003L","award_date":"2026-02-26","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":1000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"DMDDWNZL7A46","display_name":"SPHINX + LLC"}},{"key":"CONT_IDV_47QTCA26D003K_4732","piid":"47QTCA26D003K","award_date":"2026-02-26","description":"FEDERAL + SUPPLY SCHEDULE CONTRACT","total_contract_value":500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"ZPNJTGJU3HF9","display_name":"MAXTENA, + INC."}}],"count_type":"approximate"}' headers: CF-RAY: - - 9c42ff639876e544-ORD + - 9d71a7a22f75a1fb-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:10:32 GMT + - Wed, 04 Mar 2026 14:43:43 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Jon5gWiH9%2FIqIbVyXcdfVjZnoDuYOnq8Jsvr6cN6BhY%2Fe7huuo4c8jTP3XHjwqR54x1ySiKun%2BMWJWOtANgc%2F8cf72X0JVkGLFBlT33AE4mXEJJoVyZaVA4NVrQ%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=hoB%2BbLVCY87XCW3yg8f5TkdUib8jEdbBJcavBgpIr%2BuxoR0Rmn6sAabfZBi3BVFYcwgEKrlxzDO07bidpnZdRWD1BxSuKu%2B7FHLEd9hICJk6j6ZuIuT51z1A"}]}' Server: - cloudflare Transfer-Encoding: @@ -59,7 +59,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '3278' + - '3277' cross-origin-opener-policy: - same-origin referrer-policy: @@ -69,215 +69,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.081s + - 0.050s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '986' + - '906' x-ratelimit-burst-reset: - - '41' + - '5' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999817' + - '1999666' x-ratelimit-daily-reset: - - '56989' + - '84965' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '986' + - '906' x-ratelimit-reset: - - '41' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&awarding_agency=4700 - response: - body: - string: '{"count":5545,"next":"http://tango.makegov.com/api/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&awarding_agency=4700&cursor=WyIyMDI2LTAxLTIxIiwgIjZkOGUwZWZkLTNmMWUtNTg2Ni1iMzVjLWJiODFmMWIxMTdhMSJd","previous":null,"cursor":"WyIyMDI2LTAxLTIxIiwgIjZkOGUwZWZkLTNmMWUtNTg2Ni1iMzVjLWJiODFmMWIxMTdhMSJd","previous_cursor":null,"results":[{"key":"CONT_IDV_47QSMS26D0023_4732","piid":"47QSMS26D0023","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":475000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"R7A8T1CDJHA3","display_name":"IMAGE - PRINTING COMPANY, INC."}},{"key":"CONT_IDV_47QTCA26D0031_4732","piid":"47QTCA26D0031","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":1500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"VB34UDK8T7S7","display_name":"NAVCARA - LLC"}},{"key":"CONT_IDV_47QRAA26D0032_4732","piid":"47QRAA26D0032","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"GP58ACJU35Q3","display_name":"BONNER - COMMUNICATIONS LLC"}},{"key":"CONT_IDV_47QSMS26D0022_4732","piid":"47QSMS26D0022","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":1000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"C1NZB7KDTEK3","display_name":"SENTINEL - SERVICES, LLC"}},{"key":"CONT_IDV_47QRAA26D0031_4732","piid":"47QRAA26D0031","award_date":"2026-01-22","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":5002000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"XKNBXQT1K1Q9","display_name":"BULLDOG - CONSULTING SERVICES LLC"}},{"key":"CONT_IDV_47QRAA26D0030_4732","piid":"47QRAA26D0030","award_date":"2026-01-22","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":2850000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"PHU5ZESD58A7","display_name":"QSOURCE"}},{"key":"CONT_IDV_47QRAA26D002Z_4732","piid":"47QRAA26D002Z","award_date":"2026-01-21","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":2500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"PJKDKEL234X1","display_name":"ST. - MORITZ ENTERPRISES, L.L.C."}},{"key":"CONT_IDV_47QSCC26D0001_4732","piid":"47QSCC26D0001","award_date":"2026-01-21","description":"OTHER - THAN SCHEDULE","total_contract_value":77780735.0,"obligated":0.0,"idv_type":"B","recipient":{"uei":"QEMLRQA7PLG4","display_name":"AMENTUM - SERVICES, INC."}},{"key":"CONT_IDV_47QSMS26D0021_4732","piid":"47QSMS26D0021","award_date":"2026-01-21","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":10000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"CMNQCL7FNKB1","display_name":"DRI - INC"}},{"key":"CONT_IDV_47QRCA26DA018_4732","piid":"47QRCA26DA018","award_date":"2026-01-21","description":"ONE - ACQUISITION SOLUTION FOR INTEGRATED SERVICES PLUS (OASIS+) 8(A) SMALL BUSINESS - MULTIPLE AGENCY CONTRACT (MAC)","total_contract_value":999999999999.0,"obligated":2500.0,"idv_type":"B","recipient":{"uei":"N6LCFMKNCNT5","display_name":"CHUGACH - SOLUTIONS ENTERPRISE, LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4313859b381177-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:17 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=gbn4C1NVvPJ7KoMp%2F75kZlFZB5s33Pzl8gMrqFm%2BagtXTzakrSodS9nank4n4TqNT7rSDERbp%2BqJvNAo6TrSKi%2FGbED%2FCzRJSl0IKisL7quNnHv47IDpPfXeFUs%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3278' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.101s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '994' - x-ratelimit-burst-reset: - - '58' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999809' - x-ratelimit-daily-reset: - - '56164' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '994' - x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&awarding_agency=4700 - response: - body: - string: '{"count":5545,"next":"http://tango.makegov.com/api/idvs/?limit=10&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&awarding_agency=4700&cursor=WyIyMDI2LTAxLTIxIiwgIjZkOGUwZWZkLTNmMWUtNTg2Ni1iMzVjLWJiODFmMWIxMTdhMSJd","previous":null,"cursor":"WyIyMDI2LTAxLTIxIiwgIjZkOGUwZWZkLTNmMWUtNTg2Ni1iMzVjLWJiODFmMWIxMTdhMSJd","previous_cursor":null,"results":[{"key":"CONT_IDV_47QSMS26D0023_4732","piid":"47QSMS26D0023","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":475000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"R7A8T1CDJHA3","display_name":"IMAGE - PRINTING COMPANY, INC."}},{"key":"CONT_IDV_47QTCA26D0031_4732","piid":"47QTCA26D0031","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":1500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"VB34UDK8T7S7","display_name":"NAVCARA - LLC"}},{"key":"CONT_IDV_47QRAA26D0032_4732","piid":"47QRAA26D0032","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"GP58ACJU35Q3","display_name":"BONNER - COMMUNICATIONS LLC"}},{"key":"CONT_IDV_47QSMS26D0022_4732","piid":"47QSMS26D0022","award_date":"2026-01-23","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":1000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"C1NZB7KDTEK3","display_name":"SENTINEL - SERVICES, LLC"}},{"key":"CONT_IDV_47QRAA26D0031_4732","piid":"47QRAA26D0031","award_date":"2026-01-22","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":5002000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"XKNBXQT1K1Q9","display_name":"BULLDOG - CONSULTING SERVICES LLC"}},{"key":"CONT_IDV_47QRAA26D0030_4732","piid":"47QRAA26D0030","award_date":"2026-01-22","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":2850000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"PHU5ZESD58A7","display_name":"QSOURCE"}},{"key":"CONT_IDV_47QRAA26D002Z_4732","piid":"47QRAA26D002Z","award_date":"2026-01-21","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":2500000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"PJKDKEL234X1","display_name":"ST. - MORITZ ENTERPRISES, L.L.C."}},{"key":"CONT_IDV_47QSCC26D0001_4732","piid":"47QSCC26D0001","award_date":"2026-01-21","description":"OTHER - THAN SCHEDULE","total_contract_value":77780735.0,"obligated":0.0,"idv_type":"B","recipient":{"uei":"QEMLRQA7PLG4","display_name":"AMENTUM - SERVICES, INC."}},{"key":"CONT_IDV_47QSMS26D0021_4732","piid":"47QSMS26D0021","award_date":"2026-01-21","description":"FEDERAL - SUPPLY SCHEDULE CONTRACT","total_contract_value":10000000.0,"obligated":0.0,"idv_type":"C","recipient":{"uei":"CMNQCL7FNKB1","display_name":"DRI - INC"}},{"key":"CONT_IDV_47QRCA26DA018_4732","piid":"47QRCA26DA018","award_date":"2026-01-21","description":"ONE - ACQUISITION SOLUTION FOR INTEGRATED SERVICES PLUS (OASIS+) 8(A) SMALL BUSINESS - MULTIPLE AGENCY CONTRACT (MAC)","total_contract_value":999999999999.0,"obligated":2500.0,"idv_type":"B","recipient":{"uei":"N6LCFMKNCNT5","display_name":"CHUGACH - SOLUTIONS ENTERPRISE, LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c4316d29c6d61a1-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:32 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=LxavUXBOLUK9EVBwDpBQ37sj%2FZtDBQpel35WMOGkYrjhsClltYwTUHXGGFol6Brh8qysVvNqOY0jKa2O%2FEkWlajZYtXC1B%2FRevdP%2F%2FrKyGRAAwtspB9bWDPPDXk%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3278' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.143s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '994' - x-ratelimit-burst-reset: - - '57' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999793' - x-ratelimit-daily-reset: - - '56029' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '994' - x-ratelimit-reset: - - '57' + - '5' status: code: 200 message: OK diff --git a/tests/cassettes/TestNaicsIntegration.test_list_naics b/tests/cassettes/TestNaicsIntegration.test_list_naics index 878a594..788a13e 100644 --- a/tests/cassettes/TestNaicsIntegration.test_list_naics +++ b/tests/cassettes/TestNaicsIntegration.test_list_naics @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/naics/?page=1&limit=10 response: body: - string: '{"count":1012,"next":"http://tango.makegov.com/api/naics/?limit=10&page=2","previous":null,"results":[{"code":111110,"description":"Soybean + string: '{"count":1012,"next":"https://tango.makegov.com/api/naics/?limit=10&page=2","previous":null,"results":[{"code":111110,"description":"Soybean Farming"},{"code":111120,"description":"Oilseed (except Soybean) Farming"},{"code":111130,"description":"Dry Pea and Bean Farming"},{"code":111140,"description":"Wheat Farming"},{"code":111150,"description":"Corn Farming"},{"code":111160,"description":"Rice Farming"},{"code":111191,"description":"Oilseed @@ -25,17 +25,17 @@ interactions: Vegetable (except Potato) and Melon Farming"}]}' headers: CF-RAY: - - 9cc8ee2dc963a1c7-MSP + - 9d71a7477f25acff-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:16:59 GMT + - Wed, 04 Mar 2026 14:43:28 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CgIX49cZWQu0gqgo7uv%2F6TQJQj%2BvSn9ezrnzvH5Q6EwTpFfGFa20BOJZC%2Bon3QDJda85%2Fbf5y5Vt4di9CIjzStG3cyLigqsEicAzMTuc"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=eJM%2FfmshHRKIDjje09wmdSytt%2BN8JJv7Ap0ux7LQD1rsnFabCjK9xhhL8XcAC9I5CFX4J3B5IpJOg5hZ6bLw38DtVEYOwLtOUfwU3tPjEpde5SHMCNTUq6AY"}]}' Server: - cloudflare Transfer-Encoding: @@ -45,7 +45,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '664' + - '665' cross-origin-opener-policy: - same-origin referrer-policy: @@ -55,27 +55,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.038s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '7' + - '950' x-ratelimit-burst-reset: - - '59' + - '20' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '40' + - '1999710' x-ratelimit-daily-reset: - - '50685' + - '84980' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '7' + - '950' x-ratelimit-reset: - - '59' + - '20' status: code: 200 message: OK diff --git a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[custom-notice_id,title,solicitation_number] b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[custom-notice_id,title,solicitation_number] index 0530d5a..345630c 100644 --- a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[custom-notice_id,title,solicitation_number] +++ b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[custom-notice_id,title,solicitation_number] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=5&shape=notice_id%2Ctitle%2Csolicitation_number response: body: - string: '{"count":7975196,"next":"http://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford + string: '{"count":8079823,"next":"https://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford Modular Bunkhouse, Boise National Forest","solicitation_number":"1240LT23R0034"},{"notice_id":"d5e94509-01a7-4e85-9308-274c30d6ba4e","title":"6835--Medical Air/Gas and Cylinder Rental","solicitation_number":"36C24623Q0127"},{"notice_id":"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa","title":"Z--GAOA - EMDDO ROADS AND REC SITE REPAIRS","solicitation_number":"140L3625B0002"},{"notice_id":"23f87f32-a95f-4d63-a750-229784139aa3","title":"Maintenance @@ -24,29 +24,27 @@ interactions: Waste Disposal San Diego","solicitation_number":"SP450025R0004"}]}' headers: CF-RAY: - - 99f88c868a547816-MSP + - 9d71a74d3886a215-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:12 GMT + - Wed, 04 Mar 2026 14:43:29 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=fEEZ1MknY%2B3TyEYLS%2FqUKJWe81%2FtodPfjI7%2BwpytCWs3RLHsSGpLccLal%2BOlDeFYnwTKjFUeznhEQxMhFAEMtYk89zmCT1bFMUMX8rPkpesFcqmB8kDwVCo5fA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=s9J8YH2K1BHklefySx4OX0ARft5fUGnMGbNauQ0qwts89SU2X%2FmdYp1TfLW85q4zqkva4FjOv7J%2BvbP9YHuX5mTiNNX77sZLMItNMQHFEjb9BnGEj1EIwd7x"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '874' + - '875' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.032s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '952' + - '946' x-ratelimit-burst-reset: - - '41' + - '19' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998645' + - '1999706' x-ratelimit-daily-reset: - - '74' + - '84979' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '952' + - '946' x-ratelimit-reset: - - '41' + - '19' status: code: 200 message: OK diff --git a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[default-None] b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[default-None] index 97ceff6..10bfa3e 100644 --- a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[default-None] +++ b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[default-None] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=5&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date response: body: - string: '{"count":7975196,"next":"http://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford + string: '{"count":8079823,"next":"https://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford Modular Bunkhouse, Boise National Forest","solicitation_number":"1240LT23R0034","posted_date":null},{"notice_id":"d5e94509-01a7-4e85-9308-274c30d6ba4e","title":"6835--Medical Air/Gas and Cylinder Rental","solicitation_number":"36C24623Q0127","posted_date":null},{"notice_id":"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa","title":"Z--GAOA - EMDDO ROADS AND REC SITE REPAIRS","solicitation_number":"140L3625B0002","posted_date":null},{"notice_id":"23f87f32-a95f-4d63-a750-229784139aa3","title":"Maintenance @@ -24,29 +24,27 @@ interactions: Waste Disposal San Diego","solicitation_number":"SP450025R0004","posted_date":null}]}' headers: CF-RAY: - - 99f88c82dbc2a1d1-MSP + - 9d71a748cd385114-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:11 GMT + - Wed, 04 Mar 2026 14:43:28 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=UeA2NrkShwK4%2FWM2QGe7oK5d4Zyzib2YK7s7QMS%2F3WGgBw1rsABRvH8YyY9fwtuLUu5HHIwHuvOQ8K%2FND4zNrnMPX%2FQT2bPrYXZHArwIDMzA1N3ieKXt9oXjGA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=HiX2B1wo5byWWD7%2BLTdEYJCpD5Dlm0huFamL5VSVHIlwTrIxws6llZZb4tNTPRW5c0Uz9IGsl8htRScdNTtYojtCVKhtYuy%2FHE9s3GYIehhixirZgIdKg67G"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '983' + - '984' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.029s + - 0.017s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '955' + - '949' x-ratelimit-burst-reset: - - '41' + - '20' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998648' + - '1999709' x-ratelimit-daily-reset: - - '74' + - '84980' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '955' + - '949' x-ratelimit-reset: - - '41' + - '20' status: code: 200 message: OK diff --git a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] index d5fa6af..8b50133 100644 --- a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] +++ b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=5&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cposted_date%2Cnaics_code%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29 response: body: - string: "{\"count\":7975196,\"next\":\"http://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cposted_date%2Cnaics_code%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29\",\"previous\":null,\"results\":[{\"notice_id\":\"d5e7d516-698c-4b08-9d2d-f245e36627d6\",\"title\":\"Crawford + string: "{\"count\":8079823,\"next\":\"https://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cposted_date%2Cnaics_code%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29\",\"previous\":null,\"results\":[{\"notice_id\":\"d5e7d516-698c-4b08-9d2d-f245e36627d6\",\"title\":\"Crawford Modular Bunkhouse, Boise National Forest\",\"description\":\"

Amendment #2 is to remove any mention of Demolition work from the SOW. 
\\nNO demolition work will need to be completed.  
\\nAlso remove from @@ -309,29 +309,27 @@ interactions: https://sam.gov/wage-determination/1996-0223/63.

\\n\",\"solicitation_number\":\"SP450025R0004\",\"posted_date\":null,\"naics_code\":\"562211\",\"set_aside\":null,\"office\":null,\"place_of_performance\":{\"street_address\":null,\"state\":null,\"city\":null,\"zip\":null,\"country\":null}}]}" headers: CF-RAY: - - 99f88c855a64a1d9-MSP + - 9d71a74b6f3b510e-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:11 GMT + - Wed, 04 Mar 2026 14:43:29 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ycLq2PSTQvG2ZHIotNq%2Bs4ZVc0L6pL8OV4wmZ8D3udgwSgfSjt2cGLV1RVizmzkEpwDCI0XCJPYvCwJatDhqdeGjF60U2b9vjTrF%2BeafSNsA5LOt9TSeQsp7LQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Mb1ocQMMrjK%2BRhkI9SlRLqbSLaigD9tUd1U0IzzGtre9mtR13Q5w%2FxTA6nWw5TWakPAwDFUiNInP%2B0riepMdVtBE1kAdxu8tKq7OyLVi0sSQi4%2FnGokDxoRh"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '24469' + - '24470' cross-origin-opener-policy: - same-origin referrer-policy: @@ -341,27 +339,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.027s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '953' + - '947' x-ratelimit-burst-reset: - - '41' + - '19' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998646' + - '1999707' x-ratelimit-daily-reset: - - '74' + - '84979' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '953' + - '947' x-ratelimit-reset: - - '41' + - '19' status: code: 200 message: OK diff --git a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[minimal-notice_id,title,solicitation_number,posted_date] b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[minimal-notice_id,title,solicitation_number,posted_date] index ba97945..db8b4d5 100644 --- a/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[minimal-notice_id,title,solicitation_number,posted_date] +++ b/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[minimal-notice_id,title,solicitation_number,posted_date] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=5&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date response: body: - string: '{"count":7975196,"next":"http://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford + string: '{"count":8079823,"next":"https://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford Modular Bunkhouse, Boise National Forest","solicitation_number":"1240LT23R0034","posted_date":null},{"notice_id":"d5e94509-01a7-4e85-9308-274c30d6ba4e","title":"6835--Medical Air/Gas and Cylinder Rental","solicitation_number":"36C24623Q0127","posted_date":null},{"notice_id":"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa","title":"Z--GAOA - EMDDO ROADS AND REC SITE REPAIRS","solicitation_number":"140L3625B0002","posted_date":null},{"notice_id":"23f87f32-a95f-4d63-a750-229784139aa3","title":"Maintenance @@ -24,29 +24,27 @@ interactions: Waste Disposal San Diego","solicitation_number":"SP450025R0004","posted_date":null}]}' headers: CF-RAY: - - 99f88c841c5e4c97-MSP + - 9d71a74a0926a1fa-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:11 GMT + - Wed, 04 Mar 2026 14:43:29 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=K9NtDw9L9zjLbXr8Qw724aXmbVx2POey9XgUBd3kPs0b75J7IWSXCKhGXEmqPVfu%2BT%2FIKhNHOnXU8VjPOuZB%2FO6mnx35ageHKVa%2BmkHoM%2F75otIRkhWk56KRKg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=HSDV5qC4vPxX52VtkdcofwB1a%2FncZuML5b5Ky0grT0QbYAES26WSKGQ8Fuv6hPgl9AGoo7Cv79c6COfIT1SyIM724FxR3r4sXoT6TfWqrDlIXYAnCnUkmw18"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '983' + - '984' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.028s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '954' + - '948' x-ratelimit-burst-reset: - - '41' + - '19' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998647' + - '1999708' x-ratelimit-daily-reset: - - '74' + - '84980' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '954' + - '948' x-ratelimit-reset: - - '41' + - '19' status: code: 200 message: OK diff --git a/tests/cassettes/TestNoticesIntegration.test_notice_field_types b/tests/cassettes/TestNoticesIntegration.test_notice_field_types index 3d68779..bd2c66e 100644 --- a/tests/cassettes/TestNoticesIntegration.test_notice_field_types +++ b/tests/cassettes/TestNoticesIntegration.test_notice_field_types @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=10&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date response: body: - string: '{"count":7975196,"next":"http://tango.makegov.com/api/notices/?limit=10&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford + string: '{"count":8079823,"next":"https://tango.makegov.com/api/notices/?limit=10&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford Modular Bunkhouse, Boise National Forest","solicitation_number":"1240LT23R0034","posted_date":null},{"notice_id":"d5e94509-01a7-4e85-9308-274c30d6ba4e","title":"6835--Medical Air/Gas and Cylinder Rental","solicitation_number":"36C24623Q0127","posted_date":null},{"notice_id":"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa","title":"Z--GAOA - EMDDO ROADS AND REC SITE REPAIRS","solicitation_number":"140L3625B0002","posted_date":null},{"notice_id":"23f87f32-a95f-4d63-a750-229784139aa3","title":"Maintenance @@ -29,29 +29,27 @@ interactions: Repair Building 53 for Interim Occupancy","solicitation_number":"W50S8K25QA003","posted_date":null}]}' headers: CF-RAY: - - 99f88c87cc3fa1e9-MSP + - 9d71a74e7ab6a215-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:12 GMT + - Wed, 04 Mar 2026 14:43:29 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=KXuQ0C6oFCUx%2FuIl0DNRsyskqdCJU8jDRhljbmv3Xt2KfT5Opcp9uKaQtPjcG0i%2F1n4YatjjPGM8FpITUAnvpzdcuQ8BJ7hWa90YPfYUED%2F1PyCXw2hrBCvdHw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=VYsKGvKoHuV7gnk0Oe0sT5uLxVKuBOgjZayC0t9bg53wX3aOC%2Fjj6G0AbW1dDvEw0FPwXcsvFb8ClnPJxfU%2BBN1CFR9hGOOQ9J%2BWDjIudJvHgn7%2BWaphaP16"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1870' + - '1871' cross-origin-opener-policy: - same-origin referrer-policy: @@ -61,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.032s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '951' + - '945' x-ratelimit-burst-reset: - - '41' + - '19' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998644' + - '1999705' x-ratelimit-daily-reset: - - '74' + - '84979' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '951' + - '945' x-ratelimit-reset: - - '41' + - '19' status: code: 200 message: OK diff --git a/tests/cassettes/TestNoticesIntegration.test_notice_pagination b/tests/cassettes/TestNoticesIntegration.test_notice_pagination index 5c01810..f405467 100644 --- a/tests/cassettes/TestNoticesIntegration.test_notice_pagination +++ b/tests/cassettes/TestNoticesIntegration.test_notice_pagination @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=5&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date response: body: - string: '{"count":7975196,"next":"http://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford + string: '{"count":8079823,"next":"https://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford Modular Bunkhouse, Boise National Forest","solicitation_number":"1240LT23R0034","posted_date":null},{"notice_id":"d5e94509-01a7-4e85-9308-274c30d6ba4e","title":"6835--Medical Air/Gas and Cylinder Rental","solicitation_number":"36C24623Q0127","posted_date":null},{"notice_id":"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa","title":"Z--GAOA - EMDDO ROADS AND REC SITE REPAIRS","solicitation_number":"140L3625B0002","posted_date":null},{"notice_id":"23f87f32-a95f-4d63-a750-229784139aa3","title":"Maintenance @@ -24,29 +24,27 @@ interactions: Waste Disposal San Diego","solicitation_number":"SP450025R0004","posted_date":null}]}' headers: CF-RAY: - - 99f88c8abd7d5122-MSP + - 9d71a75188625122-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:12 GMT + - Wed, 04 Mar 2026 14:43:30 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=tK522CYDk9d2wJYOqfbYcteeRcDAX6joGIp%2BHEsmYbkuBkWNaImsANfTicpoBJh6pzpPALwUt19BPci6tsOG6B48vPRv91UeNDRtL3K%2BtgMvCip8mk0nw92TXg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=HzzaVAAZoGMGEAslFP%2Bk4w5fwTNBu0lPtDDmpoS%2BVg8Mi3XDnanQ%2F5lhJlt5LMlo0P8K%2BTesKUlCYZFXYjqMZPdx9uqVxNnT00VSEVNvXZLi8NlFXf%2FSh24n"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '983' + - '984' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.026s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '949' + - '943' x-ratelimit-burst-reset: - - '40' + - '18' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998642' + - '1999703' x-ratelimit-daily-reset: - - '73' + - '84978' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '949' + - '943' x-ratelimit-reset: - - '40' + - '18' status: code: 200 message: OK @@ -97,7 +95,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=2&limit=5&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date response: body: - string: '{"count":7975196,"next":"http://tango.makegov.com/api/notices/?limit=5&page=3&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":"http://tango.makegov.com/api/notices/?limit=5&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","results":[{"notice_id":"acb7e123-b9d0-43b5-9b99-2ee924a763ee","title":"120mm + string: '{"count":8079823,"next":"https://tango.makegov.com/api/notices/?limit=5&page=3&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":"https://tango.makegov.com/api/notices/?limit=5&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","results":[{"notice_id":"acb7e123-b9d0-43b5-9b99-2ee924a763ee","title":"120mm Tank Training Ammunition - FY22-FY26","solicitation_number":"W52P1J-21-R-0035","posted_date":null},{"notice_id":"f85f22bb-512b-42da-83bd-b78446b146d1","title":"SPE4A624R0101, 6340012871321, SENSOR,FIRE, 3800-01-1125/340-212-17","solicitation_number":"SPE4A624R0101","posted_date":null},{"notice_id":"5a2edf47-1876-4524-b33b-d9368237d83d","title":"M--Wayside Exhibit Planning, Design, Fabrication, and","solicitation_number":"140P2124R0007","posted_date":null},{"notice_id":"9d89412a-fd63-44cb-9958-ab1e3730b534","title":"Safety @@ -105,29 +103,27 @@ interactions: Repair Building 53 for Interim Occupancy","solicitation_number":"W50S8K25QA003","posted_date":null}]}' headers: CF-RAY: - - 99f88c8b8e805122-MSP + - 9d71a753cc2d5122-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:12 GMT + - Wed, 04 Mar 2026 14:43:30 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=zePMKAinMRLM3Oua%2BG%2F2i7DiXlxVVrfQm2Gvd0RIV3mMXpEQKIISooB1RnVZtpuhBD3%2Bo2fjGTH8eHCJuCvfW9E%2BunthYivBBQadE6%2FfFWxhahPT8FGwfPyM3w%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=gN4qRNSKWT0EGOfbRBDesKN%2B5YUn8PmJq36nXej7uNeg4tsOTO%2FGCi7dFlNxU7tHDR21MmCqXyNz1p9lGrCSlo6nDpIfYm7u%2FbWBQfIfW3G%2BjBt6I7t2xn44"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1156' + - '1158' cross-origin-opener-policy: - same-origin referrer-policy: @@ -137,27 +133,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.029s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '948' + - '942' x-ratelimit-burst-reset: - - '40' + - '18' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998641' + - '1999702' x-ratelimit-daily-reset: - - '73' + - '84978' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '948' + - '942' x-ratelimit-reset: - - '40' + - '18' status: code: 200 message: OK diff --git a/tests/cassettes/TestNoticesIntegration.test_notice_with_meta_fields b/tests/cassettes/TestNoticesIntegration.test_notice_with_meta_fields index bcab7f4..2fa12d5 100644 --- a/tests/cassettes/TestNoticesIntegration.test_notice_with_meta_fields +++ b/tests/cassettes/TestNoticesIntegration.test_notice_with_meta_fields @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=10&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cnaics_code%2Cposted_date%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29%2Cprimary_contact%28%2A%29%2Cattachments%28%2A%29 response: body: - string: "{\"count\":7975196,\"next\":\"http://tango.makegov.com/api/notices/?limit=10&page=2&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cnaics_code%2Cposted_date%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29%2Cprimary_contact%28%2A%29%2Cattachments%28%2A%29\",\"previous\":null,\"results\":[{\"notice_id\":\"d5e7d516-698c-4b08-9d2d-f245e36627d6\",\"title\":\"Crawford + string: "{\"count\":8079823,\"next\":\"https://tango.makegov.com/api/notices/?limit=10&page=2&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cnaics_code%2Cposted_date%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29%2Cprimary_contact%28%2A%29%2Cattachments%28%2A%29\",\"previous\":null,\"results\":[{\"notice_id\":\"d5e7d516-698c-4b08-9d2d-f245e36627d6\",\"title\":\"Crawford Modular Bunkhouse, Boise National Forest\",\"description\":\"

Amendment #2 is to remove any mention of Demolition work from the SOW. 
\\nNO demolition work will need to be completed.  
\\nAlso remove from @@ -29,15 +29,15 @@ interactions: help make the changes more apparent.

\\n\\n

\\n\\n

SOLICITATION POSTING

\\n\",\"solicitation_number\":\"1240LT23R0034\",\"naics_code\":\"236220\",\"posted_date\":null,\"set_aside\":null,\"office\":null,\"place_of_performance\":{\"street_address\":null,\"state\":\"Idaho\",\"city\":\"Cascade\",\"zip\":\"83611\",\"country\":\"UNITED STATES\"},\"primary_contact\":{\"title\":null,\"full_name\":\"Tanya Spanfellner\",\"email\":\"tanya.spanfellner@usda.gov\",\"phone\":\"2082581041\",\"fax\":null},\"attachments\":[{\"attachment_id\":\"ea12468a-0235-4098-8d6f-6b8367857d46\",\"mime_type\":\".pdf\",\"name\":\"Amendment - 2.pdf\",\"posted_date\":\"2023-06-05T22:28:37.348000\",\"resource_id\":\"e7ca0eff-af97-4a70-adb3-c7df787c3afe\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/e7ca0effaf974a70adb3c7df787c3afe/download?&token=\"},{\"attachment_id\":\"401b23c9-fbbf-4fda-bdf3-97b7aa05ad30\",\"mime_type\":\".pdf\",\"name\":\"Amendment - 1_CompiledDrawings_Revised.pdf\",\"posted_date\":\"2023-05-15T16:18:06.290000\",\"resource_id\":\"fe353edb-ec69-47e7-be36-ebd5a40525e1\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/fe353edbec6947e7be36ebd5a40525e1/download?&token=\"},{\"attachment_id\":\"7dda865d-2306-46ba-b2e7-170055e8556e\",\"mime_type\":\".pdf\",\"name\":\"Amendment - 1.pdf\",\"posted_date\":\"2023-05-15T16:18:06.290000\",\"resource_id\":\"9aae8085-00a5-4bf6-bbbf-cc796032d9e3\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/9aae808500a54bf6bbbfcc796032d9e3/download?&token=\"},{\"attachment_id\":\"8896e061-f177-492c-a5a8-5c7d04d4f25b\",\"mime_type\":\".pdf\",\"name\":\"J.3_DWG_Crawford.Bunkhouse_FINAL_3.31.2023.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"a3b127b6-a4d9-4922-9760-cb70f80a5e9a\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/a3b127b6a4d949229760cb70f80a5e9a/download?&token=\"},{\"attachment_id\":\"f221c7de-9bc1-453f-bdc3-fe12e85be31c\",\"mime_type\":\".pdf\",\"name\":\"J.2_Specs_Crawford.Bunkhouse.Final_3.31.2023.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"92838c59-9dcf-4bf9-b1d3-e27694e3407f\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/92838c599dcf4bf9b1d3e27694e3407f/download?&token=\"},{\"attachment_id\":\"8ae20e21-d584-4799-84bb-0d9a92cf75a8\",\"mime_type\":\".pdf\",\"name\":\"1240LT23R0034.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"208a1f8d-0420-4600-8dce-2024c9297bca\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/208a1f8d042046008dce2024c9297bca/download?&token=\"},{\"attachment_id\":\"33835a84-5bcb-4861-8a06-6c595c30524f\",\"mime_type\":\".pdf\",\"name\":\"J.1_Wage + 2.pdf\",\"posted_date\":\"2023-06-05T22:28:37.348000\",\"resource_id\":\"e7ca0eff-af97-4a70-adb3-c7df787c3afe\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/e7ca0effaf974a70adb3c7df787c3afe/download?&token=\"},{\"attachment_id\":\"7dda865d-2306-46ba-b2e7-170055e8556e\",\"mime_type\":\".pdf\",\"name\":\"Amendment + 1.pdf\",\"posted_date\":\"2023-05-15T16:18:06.290000\",\"resource_id\":\"9aae8085-00a5-4bf6-bbbf-cc796032d9e3\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/9aae808500a54bf6bbbfcc796032d9e3/download?&token=\"},{\"attachment_id\":\"401b23c9-fbbf-4fda-bdf3-97b7aa05ad30\",\"mime_type\":\".pdf\",\"name\":\"Amendment + 1_CompiledDrawings_Revised.pdf\",\"posted_date\":\"2023-05-15T16:18:06.290000\",\"resource_id\":\"fe353edb-ec69-47e7-be36-ebd5a40525e1\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/fe353edbec6947e7be36ebd5a40525e1/download?&token=\"},{\"attachment_id\":\"33835a84-5bcb-4861-8a06-6c595c30524f\",\"mime_type\":\".pdf\",\"name\":\"J.1_Wage Determination.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"48e844f0-461f-4d87-a54c-d5d9447b3943\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/48e844f0461f4d87a54cd5d9447b3943/download?&token=\"},{\"attachment_id\":\"f345745b-bda7-467d-8c1d-6ce6cce3c4ac\",\"mime_type\":\".pdf\",\"name\":\"J.4_Determination - of Responsibility.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"3be11ca2-d16c-4340-810b-adbb4be392fd\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/3be11ca2d16c4340810badbb4be392fd/download?&token=\"}]},{\"notice_id\":\"d5e94509-01a7-4e85-9308-274c30d6ba4e\",\"title\":\"6835--Medical + of Responsibility.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"3be11ca2-d16c-4340-810b-adbb4be392fd\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/3be11ca2d16c4340810badbb4be392fd/download?&token=\"},{\"attachment_id\":\"8896e061-f177-492c-a5a8-5c7d04d4f25b\",\"mime_type\":\".pdf\",\"name\":\"J.3_DWG_Crawford.Bunkhouse_FINAL_3.31.2023.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"a3b127b6-a4d9-4922-9760-cb70f80a5e9a\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/a3b127b6a4d949229760cb70f80a5e9a/download?&token=\"},{\"attachment_id\":\"f221c7de-9bc1-453f-bdc3-fe12e85be31c\",\"mime_type\":\".pdf\",\"name\":\"J.2_Specs_Crawford.Bunkhouse.Final_3.31.2023.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"92838c59-9dcf-4bf9-b1d3-e27694e3407f\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/92838c599dcf4bf9b1d3e27694e3407f/download?&token=\"},{\"attachment_id\":\"8ae20e21-d584-4799-84bb-0d9a92cf75a8\",\"mime_type\":\".pdf\",\"name\":\"1240LT23R0034.pdf\",\"posted_date\":\"2023-05-03T21:03:55.462000\",\"resource_id\":\"208a1f8d-0420-4600-8dce-2024c9297bca\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/208a1f8d042046008dce2024c9297bca/download?&token=\"}]},{\"notice_id\":\"d5e94509-01a7-4e85-9308-274c30d6ba4e\",\"title\":\"6835--Medical Air/Gas and Cylinder Rental\",\"description\":\"Medical Oxygen/Gas and Cylinder Rental\\n\",\"solicitation_number\":\"36C24623Q0127\",\"naics_code\":\"325120\",\"posted_date\":null,\"set_aside\":null,\"office\":null,\"place_of_performance\":{\"street_address\":null,\"state\":null,\"city\":null,\"zip\":null,\"country\":null},\"primary_contact\":{\"title\":\"Contract - Specialist Intern\",\"full_name\":\"Daleta S Coles\",\"email\":\"Daleta.Coles@va.gov\",\"phone\":null,\"fax\":null},\"attachments\":[{\"attachment_id\":\"786a6ba9-a296-45fe-8451-6f37286af282\",\"mime_type\":\".pdf\",\"name\":\"36C24623Q0127.pdf\",\"posted_date\":\"2022-11-03T20:15:33.233000\",\"resource_id\":\"9a322e1e-0523-4d5d-9348-749f9a733525\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/9a322e1e05234d5d9348749f9a733525/download?&token=\"},{\"attachment_id\":\"3ec7982a-37f3-4f37-8bdb-40af90146a55\",\"mime_type\":\".docx\",\"name\":\"36C24623Q0127.docx\",\"posted_date\":\"2022-11-03T20:07:11.916000\",\"resource_id\":\"5b2788a2-a6fd-4c95-a644-afa38bfef827\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/5b2788a2a6fd4c95a644afa38bfef827/download?&token=\"},{\"attachment_id\":\"61cd209c-4dda-4eee-89c4-5997af546708\",\"mime_type\":\".xlsx\",\"name\":\"36C24623Q0127 - Supply eCMS LIne Item.xlsx\",\"posted_date\":\"2022-11-03T20:07:11.916000\",\"resource_id\":\"933f8ebb-d2cf-4548-a377-05d3cecf6afa\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/933f8ebbd2cf4548a37705d3cecf6afa/download?&token=\"}]},{\"notice_id\":\"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa\",\"title\":\"Z--GAOA + Specialist Intern\",\"full_name\":\"Daleta S Coles\",\"email\":\"Daleta.Coles@va.gov\",\"phone\":null,\"fax\":null},\"attachments\":[{\"attachment_id\":\"786a6ba9-a296-45fe-8451-6f37286af282\",\"mime_type\":\".pdf\",\"name\":\"36C24623Q0127.pdf\",\"posted_date\":\"2022-11-03T20:15:33.233000\",\"resource_id\":\"9a322e1e-0523-4d5d-9348-749f9a733525\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/9a322e1e05234d5d9348749f9a733525/download?&token=\"},{\"attachment_id\":\"61cd209c-4dda-4eee-89c4-5997af546708\",\"mime_type\":\".xlsx\",\"name\":\"36C24623Q0127 + Supply eCMS LIne Item.xlsx\",\"posted_date\":\"2022-11-03T20:07:11.916000\",\"resource_id\":\"933f8ebb-d2cf-4548-a377-05d3cecf6afa\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/933f8ebbd2cf4548a37705d3cecf6afa/download?&token=\"},{\"attachment_id\":\"3ec7982a-37f3-4f37-8bdb-40af90146a55\",\"mime_type\":\".docx\",\"name\":\"36C24623Q0127.docx\",\"posted_date\":\"2022-11-03T20:07:11.916000\",\"resource_id\":\"5b2788a2-a6fd-4c95-a644-afa38bfef827\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/5b2788a2a6fd4c95a644afa38bfef827/download?&token=\"}]},{\"notice_id\":\"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa\",\"title\":\"Z--GAOA - EMDDO ROADS AND REC SITE REPAIRS\",\"description\":\"The Department of Interior, Bureau of Land Management (BLM), Montana State Office intends is soliciting SEALED BIDS for construction activities associated with the repair of roads @@ -342,9 +342,9 @@ interactions: 2026 (FY22-26) 120mm Tank Training Ammunition, along with 15 Attachments and 1 Exhibit. Please note, the closing date is 12:00pm Central Time on Friday, 06 August 2021.

\\n\",\"solicitation_number\":\"W52P1J-21-R-0035\",\"naics_code\":\"332993\",\"posted_date\":null,\"set_aside\":null,\"office\":null,\"place_of_performance\":{\"street_address\":null,\"state\":null,\"city\":null,\"zip\":null,\"country\":null},\"primary_contact\":{\"title\":null,\"full_name\":\"David - W. Buennig\",\"email\":\"david.w.buennig.civ@mail.mil\",\"phone\":\"3097822912\",\"fax\":null},\"attachments\":[{\"attachment_id\":\"594d932b-c754-4dcc-9d64-db75d3f40550\",\"mime_type\":\".pdf\",\"name\":\"W52P1J21R0035-0004 - FINAL.pdf\",\"posted_date\":\"2021-08-18T19:57:51.525000\",\"resource_id\":\"3abd52f0-36ce-4629-b6bb-10c61ff92a12\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/3abd52f036ce4629b6bb10c61ff92a12/download?&token=\"},{\"attachment_id\":\"b909662f-8fe0-4d91-abf0-5615418c121b\",\"mime_type\":\".pdf\",\"name\":\"Attachment - 0018 - W52P1J-21-R-0035 Offeror Questions and USG Responses through 11-Aug-2021.pdf\",\"posted_date\":\"2021-08-18T19:57:51.525000\",\"resource_id\":\"2f03915c-f843-48b8-a8a1-adca0e76f849\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/2f03915cf84348b8a8a1adca0e76f849/download?&token=\"}]},{\"notice_id\":\"f85f22bb-512b-42da-83bd-b78446b146d1\",\"title\":\"SPE4A624R0101, + W. Buennig\",\"email\":\"david.w.buennig.civ@mail.mil\",\"phone\":\"3097822912\",\"fax\":null},\"attachments\":[{\"attachment_id\":\"b909662f-8fe0-4d91-abf0-5615418c121b\",\"mime_type\":\".pdf\",\"name\":\"Attachment + 0018 - W52P1J-21-R-0035 Offeror Questions and USG Responses through 11-Aug-2021.pdf\",\"posted_date\":\"2021-08-18T19:57:51.525000\",\"resource_id\":\"2f03915c-f843-48b8-a8a1-adca0e76f849\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/2f03915cf84348b8a8a1adca0e76f849/download?&token=\"},{\"attachment_id\":\"594d932b-c754-4dcc-9d64-db75d3f40550\",\"mime_type\":\".pdf\",\"name\":\"W52P1J21R0035-0004 + FINAL.pdf\",\"posted_date\":\"2021-08-18T19:57:51.525000\",\"resource_id\":\"3abd52f0-36ce-4629-b6bb-10c61ff92a12\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/3abd52f036ce4629b6bb10c61ff92a12/download?&token=\"}]},{\"notice_id\":\"f85f22bb-512b-42da-83bd-b78446b146d1\",\"title\":\"SPE4A624R0101, 6340012871321, SENSOR,FIRE, 3800-01-1125/340-212-17\",\"description\":\"

** On 02/06/24, The quantity was updated from 17 EA to 40 EA. **

\\n\\n

\\n\\n

Purchase Request: 7005398617, NSN: 6340012871321, SENSOR, FIRE, IAW Part Number: 3800-01-1125/340-212-17. @@ -423,35 +423,33 @@ interactions: arrange a site visit.

\\n\\n

Update, 15 May 2025: Amendment 2 with revised Statement of Work clarifying the fixture requirements in the bathrooms added to attachments. Updated RFI responses also added.

\\n\",\"solicitation_number\":\"W50S8K25QA003\",\"naics_code\":\"236220\",\"posted_date\":null,\"set_aside\":null,\"office\":null,\"place_of_performance\":{\"street_address\":null,\"state\":null,\"city\":null,\"zip\":null,\"country\":null},\"primary_contact\":{\"title\":null,\"full_name\":\"MSgt - Joe Bernier\",\"email\":\"joseph.bernier.1@us.af.mil\",\"phone\":\"3145278033\",\"fax\":null},\"attachments\":[{\"attachment_id\":\"f3c286d4-c662-4e98-ba5d-5accfd0c32f4\",\"mime_type\":\".pdf\",\"name\":\"B6 - Pre-Award RFI_W50S8K25QA003 (cao20250515).pdf\",\"posted_date\":\"2025-05-15T19:40:15.714000\",\"resource_id\":\"8a6f020a-7bea-4bd0-8dc6-91f2cb1e1b61\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/8a6f020a7bea4bd08dc691f2cb1e1b61/download?&token=\"},{\"attachment_id\":\"59d58977-e486-4373-8c45-11c3808ce1f7\",\"mime_type\":\".pdf\",\"name\":\"A2 - SOW_LTUY252018_Rpr B53 for Interim Occupancy_20250515.pdf\",\"posted_date\":\"2025-05-15T19:40:15.714000\",\"resource_id\":\"231c4ece-9b31-4fb6-86c5-53ad507420f0\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/231c4ece9b314fb686c553ad507420f0/download?&token=\"},{\"attachment_id\":\"e394f4e8-fb0b-4f97-9835-470870aa5d96\",\"mime_type\":\".pdf\",\"name\":\"Solicitation + Joe Bernier\",\"email\":\"joseph.bernier.1@us.af.mil\",\"phone\":\"3145278033\",\"fax\":null},\"attachments\":[{\"attachment_id\":\"59d58977-e486-4373-8c45-11c3808ce1f7\",\"mime_type\":\".pdf\",\"name\":\"A2 + SOW_LTUY252018_Rpr B53 for Interim Occupancy_20250515.pdf\",\"posted_date\":\"2025-05-15T19:40:15.714000\",\"resource_id\":\"231c4ece-9b31-4fb6-86c5-53ad507420f0\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/231c4ece9b314fb686c553ad507420f0/download?&token=\"},{\"attachment_id\":\"f3c286d4-c662-4e98-ba5d-5accfd0c32f4\",\"mime_type\":\".pdf\",\"name\":\"B6 + Pre-Award RFI_W50S8K25QA003 (cao20250515).pdf\",\"posted_date\":\"2025-05-15T19:40:15.714000\",\"resource_id\":\"8a6f020a-7bea-4bd0-8dc6-91f2cb1e1b61\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/8a6f020a7bea4bd08dc691f2cb1e1b61/download?&token=\"},{\"attachment_id\":\"e394f4e8-fb0b-4f97-9835-470870aa5d96\",\"mime_type\":\".pdf\",\"name\":\"Solicitation Amendment W50S8K25QA0030002 SF 30.pdf\",\"posted_date\":\"2025-05-15T19:40:15.714000\",\"resource_id\":\"56636fb2-9a94-4f56-b2ef-053c0d3407fe\",\"type\":\"file\",\"url\":\"https://sam.gov/api/prod/opps/v3/opportunities/resources/files/56636fb29a944f56b2ef053c0d3407fe/download?&token=\"}]}]}" headers: CF-RAY: - - 99f88c893fdaacd0-MSP + - 9d71a75029f8e02b-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:12 GMT + - Wed, 04 Mar 2026 14:43:30 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rwT1ZvcUmwjPeamMWGmmPI1tbESXJ%2Bk8lBz%2Byl6RLy09yJf0QqGJ2nFS6eWj1z9dONR0dxrHT5lrtQUwlIdN9wyqERG0%2FoKRQ4f4D5%2Fbjlg5w1Mb%2FExrkYLTtQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Trf%2FaSso9k4%2BiMLnrkyB2uENpKuTkXn9dMnmLtBAgR4Fri6bWOG%2FdBuOm%2FTUgJLvy26xzPdvJJC55VOx%2BK9wHEyZi1dnyS7biDKWEDsstlZaK301SCIdWhaP"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '43034' + - '43035' cross-origin-opener-policy: - same-origin referrer-policy: @@ -461,27 +459,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.060s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '950' + - '944' x-ratelimit-burst-reset: - - '40' + - '18' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998643' + - '1999704' x-ratelimit-daily-reset: - - '73' + - '84979' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '950' + - '944' x-ratelimit-reset: - - '40' + - '18' status: code: 200 message: OK diff --git a/tests/cassettes/TestOTAsIntegration.test_get_ota b/tests/cassettes/TestOTAsIntegration.test_get_ota index d9191d4..c208555 100644 --- a/tests/cassettes/TestOTAsIntegration.test_get_ota +++ b/tests/cassettes/TestOTAsIntegration.test_get_ota @@ -16,22 +16,22 @@ interactions: uri: https://tango.makegov.com/api/otas/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated response: body: - string: '{"count":7021,"next":"http://tango.makegov.com/api/otas/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated&cursor=WyIyMDI2LTAxLTMwIiwgImExM2IyZjgxLWMwY2MtNWYwZC1iODYwLTRlOTI0NjQ4OGRmNyJd","previous":null,"cursor":"WyIyMDI2LTAxLTMwIiwgImExM2IyZjgxLWMwY2MtNWYwZC1iODYwLTRlOTI0NjQ4OGRmNyJd","previous_cursor":null,"results":[{"key":"OT_AWD_140D042690006_1406_-NONE-_-NONE-","piid":"140D042690006","award_date":"2026-01-30","description":"COLUMBIA - - TEARWISE | OCULAB","total_contract_value":17341223.0,"obligated":9364971.0,"recipient":{"uei":"F4N1QNPB95M4","display_name":"THE - TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK"}}],"count_type":"approximate"}' + string: '{"count":7079,"next":"https://tango.makegov.com/api/otas/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated&cursor=WyIyMDI2LTAyLTI3IiwgImM3MjRmZDZlLTRjOGMtNThjNC1iMzMzLTUxODE5YjFhYzIwNiJd","previous":null,"cursor":"WyIyMDI2LTAyLTI3IiwgImM3MjRmZDZlLTRjOGMtNThjNC1iMzMzLTUxODE5YjFhYzIwNiJd","previous_cursor":null,"results":[{"key":"OT_AWD_140D042690005_1406_-NONE-_-NONE-","piid":"140D042690005","award_date":"2026-02-27","description":"SELF-POWERED, + TRANSMITTING LACRIMAL ARTIFICIAL SENSOR (SPOT-LAS)","total_contract_value":10091432.0,"obligated":5076134.0,"recipient":{"uei":"E2NYLCDML6V1","display_name":"MASSACHUSETTS + INSTITUTE OF TECHNOLOGY"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9cc8fb5e88fe4c9c-MSP + - 9d71a7682e00348b-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:25:59 GMT + - Wed, 04 Mar 2026 14:43:33 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=eg4zgbwcYMJVsQkCZ6PgLdXTvGNiEE8mX%2BzNWACsnpNKsErEZ0WrFMMVzaE5vN7oUU2DPmfXhYtfhYva8o8qCobsUMomyaxuNofs3YKx"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=fLvaKy%2B%2FrZQvrD%2BTuhKx3rduzxiGbUQkojyVcHHRZ9Vvgb90qpHskGH7Kl0DBCm%2Ff5V3od21U1UKJ0Kf%2BslSiG7w1J4NtKJY9pXQphVhpZWZPXRnNHByvkts"}]}' Server: - cloudflare Transfer-Encoding: @@ -41,7 +41,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '735' + - '750' cross-origin-opener-policy: - same-origin referrer-policy: @@ -51,27 +51,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.038s + - 0.028s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '997' + - '929' x-ratelimit-burst-reset: - - '34' + - '15' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999585' + - '1999689' x-ratelimit-daily-reset: - - '34462' + - '84975' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '997' + - '929' x-ratelimit-reset: - - '34' + - '15' status: code: 200 message: OK @@ -89,25 +89,25 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/otas/OT_AWD_140D042690006_1406_-NONE-_-NONE-/?shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated + uri: https://tango.makegov.com/api/otas/OT_AWD_140D042690005_1406_-NONE-_-NONE-/?shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated response: body: - string: '{"key":"OT_AWD_140D042690006_1406_-NONE-_-NONE-","piid":"140D042690006","award_date":"2026-01-30","description":"COLUMBIA - - TEARWISE | OCULAB","total_contract_value":17341223.0,"obligated":9364971.0,"recipient":{"uei":"F4N1QNPB95M4","display_name":"THE - TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK"}}' + string: '{"key":"OT_AWD_140D042690005_1406_-NONE-_-NONE-","piid":"140D042690005","award_date":"2026-02-27","description":"SELF-POWERED, + TRANSMITTING LACRIMAL ARTIFICIAL SENSOR (SPOT-LAS)","total_contract_value":10091432.0,"obligated":5076134.0,"recipient":{"uei":"E2NYLCDML6V1","display_name":"MASSACHUSETTS + INSTITUTE OF TECHNOLOGY"}}' headers: CF-RAY: - - 9cc8fb5fab1d4c9c-MSP + - 9d71a7690a18348b-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:25:59 GMT + - Wed, 04 Mar 2026 14:43:34 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=THrFBx9%2FlBiWKKq1IdrC2TzYOeU7V1yW8gI7veHjFpPddEJs1cGJ%2BwaYUeZRHt00VHi6xWtq%2ByKhPOsIpoE9XG5TZHu8gVt6kLbxeYbR"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3pEtOgRlMdpSU8jreogNbeevMxMwoP6kwlAJMV0xLAy24E3H596atXoCPAz6l0uz%2FIHuR77ZC9CocQMtCylCmxt%2BhfUDUXhPVBfRaE601gWm7TptIOXkxgE0"}]}' Server: - cloudflare Transfer-Encoding: @@ -117,7 +117,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '311' + - '325' cross-origin-opener-policy: - same-origin referrer-policy: @@ -127,179 +127,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.018s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '996' + - '928' x-ratelimit-burst-reset: - - '33' + - '14' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999584' + - '1999688' x-ratelimit-daily-reset: - - '34462' + - '84975' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '996' + - '928' x-ratelimit-reset: - - '33' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/otas/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated - response: - body: - string: '{"count":7021,"next":"http://tango.makegov.com/api/otas/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated&cursor=WyIyMDI2LTAxLTMwIiwgImExM2IyZjgxLWMwY2MtNWYwZC1iODYwLTRlOTI0NjQ4OGRmNyJd","previous":null,"cursor":"WyIyMDI2LTAxLTMwIiwgImExM2IyZjgxLWMwY2MtNWYwZC1iODYwLTRlOTI0NjQ4OGRmNyJd","previous_cursor":null,"results":[{"key":"OT_AWD_140D042690006_1406_-NONE-_-NONE-","piid":"140D042690006","award_date":"2026-01-30","description":"COLUMBIA - - TEARWISE | OCULAB","total_contract_value":17341223.0,"obligated":9364971.0,"recipient":{"uei":"F4N1QNPB95M4","display_name":"THE - TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9cc8fedfdd345108-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Thu, 12 Feb 2026 03:28:23 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=P553qdumsYNmdbK9YWeYnVjsTo1t8cl3YFBFWzFfgv%2Fy4PlSgAk4VCiIfuTeVJQSRFxwwnkwG6iop43UwMndvtxb2BDjuAiy65Ti2gZh"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '735' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.025s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '998' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999565' - x-ratelimit-daily-reset: - - '34318' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '998' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/otas/OT_AWD_140D042690006_1406_-NONE-_-NONE-/?shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated - response: - body: - string: '{"key":"OT_AWD_140D042690006_1406_-NONE-_-NONE-","piid":"140D042690006","award_date":"2026-01-30","description":"COLUMBIA - - TEARWISE | OCULAB","total_contract_value":17341223.0,"obligated":9364971.0,"recipient":{"uei":"F4N1QNPB95M4","display_name":"THE - TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK"}}' - headers: - CF-RAY: - - 9cc8fee0ae7a5108-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Thu, 12 Feb 2026 03:28:23 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=qVM1gjFV8SFgR9yeWh4pc1Xpr794j6TESnd2mVl3o0lee2pNvaEmWMEVCcqhreVkNY%2BXvDqOo5GT4NuMKmcAnSDyDYVM6%2BBq7mdsg3Fq"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '311' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.033s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999564' - x-ratelimit-daily-reset: - - '34318' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '59' + - '14' status: code: 200 message: OK diff --git a/tests/cassettes/TestOTAsIntegration.test_list_otas b/tests/cassettes/TestOTAsIntegration.test_list_otas index 846d88e..b8234d8 100644 --- a/tests/cassettes/TestOTAsIntegration.test_list_otas +++ b/tests/cassettes/TestOTAsIntegration.test_list_otas @@ -16,30 +16,31 @@ interactions: uri: https://tango.makegov.com/api/otas/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated response: body: - string: '{"count":7021,"next":"http://tango.makegov.com/api/otas/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated&cursor=WyIyMDI1LTExLTA3IiwgImQzOTdhZTExLTcyMzYtNTIzYi1hZDQ1LWY4MjJkZDgwMjc2OCJd","previous":null,"cursor":"WyIyMDI1LTExLTA3IiwgImQzOTdhZTExLTcyMzYtNTIzYi1hZDQ1LWY4MjJkZDgwMjc2OCJd","previous_cursor":null,"results":[{"key":"OT_AWD_140D042690006_1406_-NONE-_-NONE-","piid":"140D042690006","award_date":"2026-01-30","description":"COLUMBIA + string: '{"count":7079,"next":"https://tango.makegov.com/api/otas/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated&cursor=WyIyMDI2LTAxLTMwIiwgImExM2IyZjgxLWMwY2MtNWYwZC1iODYwLTRlOTI0NjQ4OGRmNyJd","previous":null,"cursor":"WyIyMDI2LTAxLTMwIiwgImExM2IyZjgxLWMwY2MtNWYwZC1iODYwLTRlOTI0NjQ4OGRmNyJd","previous_cursor":null,"results":[{"key":"OT_AWD_140D042690005_1406_-NONE-_-NONE-","piid":"140D042690005","award_date":"2026-02-27","description":"SELF-POWERED, + TRANSMITTING LACRIMAL ARTIFICIAL SENSOR (SPOT-LAS)","total_contract_value":10091432.0,"obligated":5076134.0,"recipient":{"uei":"E2NYLCDML6V1","display_name":"MASSACHUSETTS + INSTITUTE OF TECHNOLOGY"}},{"key":"OT_AWD_140D042690013_1406_-NONE-_-NONE-","piid":"140D042690013","award_date":"2026-02-27","description":"EVIDENCE-DRIVEN + MANUFACTURING TO EXPAND PEDIATRIC CELL THERAPY ACCESS IN RARE DISEASES","total_contract_value":6842620.0,"obligated":6842620.0,"recipient":{"uei":"G88KLJR3KYT5","display_name":"UNIVERSITY + OF SOUTHERN CALIFORNIA"}},{"key":"OT_AWD_140D042690009_1406_-NONE-_-NONE-","piid":"140D042690009","award_date":"2026-02-20","description":"LEGO-LIKE + ASSEMBLY OF PERFUSABLE ECM CUBES TO GENERATE TISSUE-AGNOSTIC, SUTURABLE, ORGAN-SIZED, + VIABLE AND FUNCTIONAL GRAFTS","total_contract_value":2256884.0,"obligated":4513768.0,"recipient":{"uei":"C4BXLBC11LC6","display_name":"SYRACUSE + UNIVERSITY"}},{"key":"OT_AWD_140D042690008_1406_-NONE-_-NONE-","piid":"140D042690008","award_date":"2026-02-12","description":"PERSONALIZED + AUTOMATED CONTINUOUS TREATMENT FOR EYE PLUS SYSTEMIC DISEASE (PACE+)","total_contract_value":7809281.0,"obligated":15618562.0,"recipient":{"uei":"G88KLJR3KYT5","display_name":"UNIVERSITY + OF SOUTHERN CALIFORNIA"}},{"key":"OT_AWD_140D042690006_1406_-NONE-_-NONE-","piid":"140D042690006","award_date":"2026-01-30","description":"COLUMBIA - TEARWISE | OCULAB","total_contract_value":17341223.0,"obligated":9364971.0,"recipient":{"uei":"F4N1QNPB95M4","display_name":"THE - TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK"}},{"key":"OT_AWD_140D042690011_1406_-NONE-_-NONE-","piid":"140D042690011","award_date":"2026-01-29","description":"COSMIC: - CLOSED - LOOP SENSING AND MICRODOSING FOR DRY EYE AND SYSTEMIC DISEASE MANAGEMENT","total_contract_value":16356306.9,"obligated":9628264.0,"recipient":{"uei":"TMFGLT8F3QB9","display_name":"LACRISTAT - LLC"}},{"key":"OT_AWD_HT0038269E001_9700_-NONE-_-NONE-","piid":"HT0038269E001","award_date":"2025-11-12","description":"AMBIENT - LISTENING PROTOTYPE","total_contract_value":100.0,"obligated":100.0,"recipient":{"uei":"DMHXTXRARC74","display_name":"CERNER - CORPORATION"}},{"key":"OT_AWD_FA91012690003_9700_-NONE-_-NONE-","piid":"FA91012690003","award_date":"2025-11-10","description":"NFAC - FRONT-END HARDWARE PROTOTYPE","total_contract_value":7500.0,"obligated":7500.0,"recipient":{"uei":"Q8BAQDYG3DG4","display_name":"BUSTEC, - INC."}},{"key":"OT_AWD_HB00012692016_9700_HB00012492000_9700","piid":"HB00012692016","award_date":"2025-11-07","description":"HFO - KITS","total_contract_value":450000000.0,"obligated":0.0,"recipient":{"uei":"WZZSXMA52K46","display_name":"SEALING - TECHNOLOGIES, LLC"}}],"count_type":"approximate"}' + TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9cc8fb5cb919ace8-MSP + - 9d71a7665c80a1c7-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:25:59 GMT + - Wed, 04 Mar 2026 14:43:33 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=mYyBjqs%2FiJlxeAv9qlc%2FRMMqSuiUQ3urqhWJDpLXEOF5ltPq48EQ71FEO2L9OPfCR4Pa1rr3JJUE724k3VFWzikCO%2FfkpfHbJ7eu8xZh"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=IUnW84yhEwQWkTvXwNkYo0VxgWYF6QAkGLr8jsuIi38gEHyazfY88lL9oCcIqkkZOcm%2BQMK66ujRF1msKcJE3%2BOtTBuM5eqrCwqgA3M%2FsVqw6rAku8K2%2F%2BQp"}]}' Server: - cloudflare Transfer-Encoding: @@ -49,7 +50,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '1844' + - '2111' cross-origin-opener-policy: - same-origin referrer-policy: @@ -59,111 +60,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.074s + - 0.104s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '998' + - '930' x-ratelimit-burst-reset: - - '34' + - '15' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999586' + - '1999690' x-ratelimit-daily-reset: - - '34462' + - '84975' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '998' + - '930' x-ratelimit-reset: - - '34' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/otas/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated - response: - body: - string: '{"count":7021,"next":"http://tango.makegov.com/api/otas/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated&cursor=WyIyMDI1LTExLTA3IiwgImQzOTdhZTExLTcyMzYtNTIzYi1hZDQ1LWY4MjJkZDgwMjc2OCJd","previous":null,"cursor":"WyIyMDI1LTExLTA3IiwgImQzOTdhZTExLTcyMzYtNTIzYi1hZDQ1LWY4MjJkZDgwMjc2OCJd","previous_cursor":null,"results":[{"key":"OT_AWD_140D042690006_1406_-NONE-_-NONE-","piid":"140D042690006","award_date":"2026-01-30","description":"COLUMBIA - - TEARWISE | OCULAB","total_contract_value":17341223.0,"obligated":9364971.0,"recipient":{"uei":"F4N1QNPB95M4","display_name":"THE - TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK"}},{"key":"OT_AWD_140D042690011_1406_-NONE-_-NONE-","piid":"140D042690011","award_date":"2026-01-29","description":"COSMIC: - CLOSED - LOOP SENSING AND MICRODOSING FOR DRY EYE AND SYSTEMIC DISEASE MANAGEMENT","total_contract_value":16356306.9,"obligated":9628264.0,"recipient":{"uei":"TMFGLT8F3QB9","display_name":"LACRISTAT - LLC"}},{"key":"OT_AWD_HT0038269E001_9700_-NONE-_-NONE-","piid":"HT0038269E001","award_date":"2025-11-12","description":"AMBIENT - LISTENING PROTOTYPE","total_contract_value":100.0,"obligated":100.0,"recipient":{"uei":"DMHXTXRARC74","display_name":"CERNER - CORPORATION"}},{"key":"OT_AWD_FA91012690003_9700_-NONE-_-NONE-","piid":"FA91012690003","award_date":"2025-11-10","description":"NFAC - FRONT-END HARDWARE PROTOTYPE","total_contract_value":7500.0,"obligated":7500.0,"recipient":{"uei":"Q8BAQDYG3DG4","display_name":"BUSTEC, - INC."}},{"key":"OT_AWD_HB00012692016_9700_HB00012492000_9700","piid":"HB00012692016","award_date":"2025-11-07","description":"HFO - KITS","total_contract_value":450000000.0,"obligated":0.0,"recipient":{"uei":"WZZSXMA52K46","display_name":"SEALING - TECHNOLOGIES, LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9cc8fedd59c2ad0b-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Thu, 12 Feb 2026 03:28:22 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Q8C7ixmptCHTMRAFVHToi9wzIRhWFSN67Oxf4%2FL%2Bf2UNy8jgxN9M1MNbIGNYtS664noerQGsicz7WdUFx3u1fYtkL%2FUhFD7%2B9k86eH2a"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '1844' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.037s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '999' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999566' - x-ratelimit-daily-reset: - - '34319' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '999' - x-ratelimit-reset: - - '59' + - '15' status: code: 200 message: OK diff --git a/tests/cassettes/TestOTIDVsIntegration.test_get_otidv b/tests/cassettes/TestOTIDVsIntegration.test_get_otidv index 0b56575..29a2b33 100644 --- a/tests/cassettes/TestOTIDVsIntegration.test_get_otidv +++ b/tests/cassettes/TestOTIDVsIntegration.test_get_otidv @@ -16,23 +16,22 @@ interactions: uri: https://tango.makegov.com/api/otidvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: - string: '{"count":2053,"next":"http://tango.makegov.com/api/otidvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI1LTExLTEyIiwgIjlhYmY1OWJmLTE3ZWYtNTI3ZC1hNTIwLWVhMmI2ZTE2Zjg4YyJd","previous":null,"cursor":"WyIyMDI1LTExLTEyIiwgIjlhYmY1OWJmLTE3ZWYtNTI3ZC1hNTIwLWVhMmI2ZTE2Zjg4YyJd","previous_cursor":null,"results":[{"key":"OT_IDV_HR0011269E026_9700","piid":"HR0011269E026","award_date":"2025-11-12","description":"DEVELOPMENT - OF NEW COMPUTATIONAL PRINCIPLES FOR ADAPTATION, ORCHESTRATION, AND ENGINEERING - OF BIOLOGICAL SYSTEMS","total_contract_value":1838712.0,"obligated":318987.0,"idv_type":"O","recipient":{"uei":"CURENVCZT6Z4","display_name":"WOLFRAM - FOUNDATION"}}],"count_type":"approximate"}' + string: '{"count":2074,"next":"https://tango.makegov.com/api/otidvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI2LTAyLTE3IiwgImU0MzdmYjE2LWM5YWEtNWMyMS1hNGFkLTczZTA2MTdkZTllNSJd","previous":null,"cursor":"WyIyMDI2LTAyLTE3IiwgImU0MzdmYjE2LWM5YWEtNWMyMS1hNGFkLTczZTA2MTdkZTllNSJd","previous_cursor":null,"results":[{"key":"OT_IDV_HR00112590164_9700","piid":"HR00112590164","award_date":"2026-02-17","description":"INTELLIGENT + NETWORKING VIA KOOPMAN-BASED SEMANTIC-COMMUNICATIONS (INKS)","total_contract_value":350000.0,"obligated":350000.0,"idv_type":"O","recipient":{"uei":"JFNPF1DXEP54","display_name":"AIMDYN, + INC."}}],"count_type":"approximate"}' headers: CF-RAY: - - 9cc8fb62ecd183b0-MSP + - 9d71a76c3f8da22d-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:26:00 GMT + - Wed, 04 Mar 2026 14:43:34 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=TOWLJSuuy07ah861K2efrAAUawEFRv2k2AMMP3RivApPNqGn2yH5zEnl%2BjvvS280UlfhjsRwXoIgQyfaHl8twQpZ%2F5FN%2Fg12eeMviFjK"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=n3e6SbQfub8ZXRVm3j31cxn6OK3O6bhVJLv8xEjEW0ELWtlUrAopvtHXtj5Wsm9NEoDu8QPqUc0nrn7v5MWGCA%2BaDX%2BZ5AoIJe2mOp4cz8DQzumz8ejzKN1G"}]}' Server: - cloudflare Transfer-Encoding: @@ -42,7 +41,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '790' + - '743' cross-origin-opener-policy: - same-origin referrer-policy: @@ -52,27 +51,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.022s + - 0.020s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '994' + - '926' x-ratelimit-burst-reset: - - '33' + - '14' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999582' + - '1999686' x-ratelimit-daily-reset: - - '34461' + - '84974' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '994' + - '926' x-ratelimit-reset: - - '33' + - '14' status: code: 200 message: OK @@ -90,26 +89,25 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/otidvs/OT_IDV_HR0011269E026_9700/?shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type + uri: https://tango.makegov.com/api/otidvs/OT_IDV_HR00112590164_9700/?shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: - string: '{"key":"OT_IDV_HR0011269E026_9700","piid":"HR0011269E026","award_date":"2025-11-12","description":"DEVELOPMENT - OF NEW COMPUTATIONAL PRINCIPLES FOR ADAPTATION, ORCHESTRATION, AND ENGINEERING - OF BIOLOGICAL SYSTEMS","total_contract_value":1838712.0,"obligated":318987.0,"idv_type":"O","recipient":{"uei":"CURENVCZT6Z4","display_name":"WOLFRAM - FOUNDATION"}}' + string: '{"key":"OT_IDV_HR00112590164_9700","piid":"HR00112590164","award_date":"2026-02-17","description":"INTELLIGENT + NETWORKING VIA KOOPMAN-BASED SEMANTIC-COMMUNICATIONS (INKS)","total_contract_value":350000.0,"obligated":350000.0,"idv_type":"O","recipient":{"uei":"JFNPF1DXEP54","display_name":"AIMDYN, + INC."}}' headers: CF-RAY: - - 9cc8fb63a92383b0-MSP + - 9d71a76eab47a22d-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:26:00 GMT + - Wed, 04 Mar 2026 14:43:34 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=N8r%2FlaXy0JGVVZeqxE6BQkzbzQsXFmzGVXUUbHxEWg2CdJO5W%2BDjLj5lLpiyO3s9f3CbNr4BpGUvIPyfFCrJZ5nKWcYx%2BP5l9mDK0xrR"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=nZvlesYi%2BOjBnhAG%2BcasYSsbpwohSdWXSQOoTJZceHv96BAmyjODSas2PpbVcbuAvABksDoyzJrgG1FoPOMG6of7KcpvPRDb4Q6Z6N0qger5XcbwyFlqHDLL"}]}' Server: - cloudflare Transfer-Encoding: @@ -119,7 +117,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '353' + - '305' cross-origin-opener-policy: - same-origin referrer-policy: @@ -129,181 +127,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.026s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '993' + - '925' x-ratelimit-burst-reset: - - '33' + - '14' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999581' + - '1999685' x-ratelimit-daily-reset: - - '34461' + - '84974' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '993' + - '925' x-ratelimit-reset: - - '33' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/otidvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":2053,"next":"http://tango.makegov.com/api/otidvs/?limit=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI1LTExLTEyIiwgIjlhYmY1OWJmLTE3ZWYtNTI3ZC1hNTIwLWVhMmI2ZTE2Zjg4YyJd","previous":null,"cursor":"WyIyMDI1LTExLTEyIiwgIjlhYmY1OWJmLTE3ZWYtNTI3ZC1hNTIwLWVhMmI2ZTE2Zjg4YyJd","previous_cursor":null,"results":[{"key":"OT_IDV_HR0011269E026_9700","piid":"HR0011269E026","award_date":"2025-11-12","description":"DEVELOPMENT - OF NEW COMPUTATIONAL PRINCIPLES FOR ADAPTATION, ORCHESTRATION, AND ENGINEERING - OF BIOLOGICAL SYSTEMS","total_contract_value":1838712.0,"obligated":318987.0,"idv_type":"O","recipient":{"uei":"CURENVCZT6Z4","display_name":"WOLFRAM - FOUNDATION"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9cc8fee389ffacd5-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Thu, 12 Feb 2026 03:28:23 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=sfNhj4uBWpJtqygC%2FsfM5XsJbHaHOyy%2BnfDC8dWdhN%2F1adXThTrsoL314hXqifVhOM23upuNAsZXJ9bC3yWrpaF69ezVyNOw0n5MYgqY"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '790' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.036s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999562' - x-ratelimit-daily-reset: - - '34318' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/otidvs/OT_IDV_HR0011269E026_9700/?shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"key":"OT_IDV_HR0011269E026_9700","piid":"HR0011269E026","award_date":"2025-11-12","description":"DEVELOPMENT - OF NEW COMPUTATIONAL PRINCIPLES FOR ADAPTATION, ORCHESTRATION, AND ENGINEERING - OF BIOLOGICAL SYSTEMS","total_contract_value":1838712.0,"obligated":318987.0,"idv_type":"O","recipient":{"uei":"CURENVCZT6Z4","display_name":"WOLFRAM - FOUNDATION"}}' - headers: - CF-RAY: - - 9cc8fee4bc7facd5-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Thu, 12 Feb 2026 03:28:23 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=lkpuIEYYiEupwWDVnVNH1vLYTeM9z90THqzsP74qlC05Q1D2MMnz%2BbU27Dds0%2FrM%2F5L5uIN7%2BSDp91Pz4cahG5y2Sc0SPdv4rznFPTx5"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '353' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.017s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '994' - x-ratelimit-burst-reset: - - '58' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999561' - x-ratelimit-daily-reset: - - '34318' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '994' - x-ratelimit-reset: - - '58' + - '14' status: code: 200 message: OK diff --git a/tests/cassettes/TestOTIDVsIntegration.test_list_otidvs b/tests/cassettes/TestOTIDVsIntegration.test_list_otidvs index 3a55bc3..d68a445 100644 --- a/tests/cassettes/TestOTIDVsIntegration.test_list_otidvs +++ b/tests/cassettes/TestOTIDVsIntegration.test_list_otidvs @@ -16,33 +16,32 @@ interactions: uri: https://tango.makegov.com/api/otidvs/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type response: body: - string: '{"count":2053,"next":"http://tango.makegov.com/api/otidvs/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI1LTEwLTIyIiwgImJkZmE1MDJhLTRjOTMtNWM0ZS1hMDcxLTYzNWRhNThiNGVlMSJd","previous":null,"cursor":"WyIyMDI1LTEwLTIyIiwgImJkZmE1MDJhLTRjOTMtNWM0ZS1hMDcxLTYzNWRhNThiNGVlMSJd","previous_cursor":null,"results":[{"key":"OT_IDV_HR0011269E026_9700","piid":"HR0011269E026","award_date":"2025-11-12","description":"DEVELOPMENT - OF NEW COMPUTATIONAL PRINCIPLES FOR ADAPTATION, ORCHESTRATION, AND ENGINEERING - OF BIOLOGICAL SYSTEMS","total_contract_value":1838712.0,"obligated":318987.0,"idv_type":"O","recipient":{"uei":"CURENVCZT6Z4","display_name":"WOLFRAM - FOUNDATION"}},{"key":"OT_IDV_H92405269E001_9700","piid":"H92405269E001","award_date":"2025-11-03","description":"OTA - PROTOTYPE OF FUTURESS/INNOVATION CYCLES RAPID\nPROTOTYPING BUSINESS PROCESS","total_contract_value":49000000.0,"obligated":2988524.1,"idv_type":"O","recipient":{"uei":"QNXRK3LEY5W8","display_name":"LIBERTY - ALLIANCE, LLC"}},{"key":"OT_IDV_HR0011269E022_9700","piid":"HR0011269E022","award_date":"2025-10-28","description":"RAPID - RESILIENCE RESPONSES (R3) - PROGRAM TASK CALL 08, AUTHORING TRAINING FOR HUNT - AND EXQUISITE NETWORK ANALYTICS (ATHENA).","total_contract_value":9072116.0,"obligated":4054352.0,"idv_type":"O","recipient":{"uei":"MQ1TKVG8MN89","display_name":"ULTIMATE - KNOWLEDGE CORPORATION"}},{"key":"OT_IDV_N000392690001_9700","piid":"N000392690001","award_date":"2025-10-27","description":"PHASE - 1 COMPLETION","total_contract_value":5095641.0,"obligated":10191282.0,"idv_type":"O","recipient":{"uei":"SMM7VQCC87V3","display_name":"APPLIED - INTUITION GOVERNMENT INC"}},{"key":"OT_IDV_HR0011269E038_9700","piid":"HR0011269E038","award_date":"2025-10-22","description":"INERTIAL - SCALING FOR DERISKING STABILITY AND CONTROL OF TIGHTLY COUPLED AEROPROPULSIVE - AIRCRAFT CONFIGURATIONS","total_contract_value":1800000.0,"obligated":2600000.0,"idv_type":"O","recipient":{"uei":"QCRHSCGFBLN4","display_name":"WHISPER - AERO INC"}}],"count_type":"approximate"}' + string: '{"count":2074,"next":"https://tango.makegov.com/api/otidvs/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI1LTEyLTAzIiwgIjlmN2Y5ZmQzLWQzNmEtNWU2OS1iZWIwLWM3YzFkZDk5ZDVmZCJd","previous":null,"cursor":"WyIyMDI1LTEyLTAzIiwgIjlmN2Y5ZmQzLWQzNmEtNWU2OS1iZWIwLWM3YzFkZDk5ZDVmZCJd","previous_cursor":null,"results":[{"key":"OT_IDV_HR00112590164_9700","piid":"HR00112590164","award_date":"2026-02-17","description":"INTELLIGENT + NETWORKING VIA KOOPMAN-BASED SEMANTIC-COMMUNICATIONS (INKS)","total_contract_value":350000.0,"obligated":350000.0,"idv_type":"O","recipient":{"uei":"JFNPF1DXEP54","display_name":"AIMDYN, + INC."}},{"key":"OT_IDV_W519TC2592037_9700","piid":"W519TC2592037","award_date":"2026-02-09","description":"MUNITIONS + AND ENERGETICS TECHNOLOGY CENTER (METC) - DEVELOPMENT AND INTEGRATION OF NEXT-GENERATION + MUNITION SYSTEMS AWARD.","total_contract_value":980693.0,"obligated":980693.0,"idv_type":"O","recipient":{"uei":"VFVENKZEF891","display_name":"ONE + NATION INNOVATION"}},{"key":"OT_IDV_HR0011269E046_9700","piid":"HR0011269E046","award_date":"2025-12-03","description":"DARPA + RESEARCH PROJECT","total_contract_value":999829.0,"obligated":999829.0,"idv_type":"O","recipient":{"uei":"KBVQPMHDD4V7","display_name":"GRAPHENE + COMPOSITES LLC"}},{"key":"OT_IDV_FA9101269B003_9700","piid":"FA9101269B003","award_date":"2025-12-03","description":"BURST + DIAPHRAGM FABRICATION FOLLOW-ON PRODUCTION - UNITED PRECISION CORP","total_contract_value":6800000.0,"obligated":0.0,"idv_type":"O","recipient":{"uei":"HFALSP1F9ZD3","display_name":"UNITED + PRECISION CORP."}},{"key":"OT_IDV_W91CRB269Z021_9700","piid":"W91CRB269Z021","award_date":"2025-12-03","description":"PROTOTYPE + PROJECT ORDER C5-21-2021 RTC APPROACH TO PERSISTENT INTEGRATED DEVELOPMENTAL + (RAPID) TESTING.","total_contract_value":3359272.85,"obligated":3359272.85,"idv_type":"O","recipient":{"uei":"GFJNNNA72UN4","display_name":"CONSORTIUM + MANAGEMENT GROUP, INC."}}],"count_type":"approximate"}' headers: CF-RAY: - - 9cc8fb610806a1d9-MSP + - 9d71a76ab8174ca9-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:25:59 GMT + - Wed, 04 Mar 2026 14:43:34 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5RmWeXI5DiklZEB9XlgTzqJxMKXj%2FmOeZk33CRVmzP32Ji25dZNgH3dXTRYSNqXCRvlv33aeLA4ZRXDzEe4il7iwVZMf7rD%2B9x2Lfxjo"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=f5LQLhbnzqCmYhEuioJvj473GcztsNIrCf3sVXFIAse7oFe005Ueb4qPpidEqFXRvb5tI%2BUUMzh9%2BJhznV4vC%2BR88nrbGgl4YcQ%2BM1tL4vocYKjU5%2BAsQwR0"}]}' Server: - cloudflare Transfer-Encoding: @@ -52,7 +51,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '2123' + - '2053' cross-origin-opener-policy: - same-origin referrer-policy: @@ -62,114 +61,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.038s + - 0.036s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '995' + - '927' x-ratelimit-burst-reset: - - '33' + - '14' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999583' + - '1999687' x-ratelimit-daily-reset: - - '34462' + - '84974' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '995' + - '927' x-ratelimit-reset: - - '33' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/otidvs/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type - response: - body: - string: '{"count":2053,"next":"http://tango.makegov.com/api/otidvs/?limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%2Cuei%29%2Cdescription%2Ctotal_contract_value%2Cobligated%2Cidv_type&cursor=WyIyMDI1LTEwLTIyIiwgImJkZmE1MDJhLTRjOTMtNWM0ZS1hMDcxLTYzNWRhNThiNGVlMSJd","previous":null,"cursor":"WyIyMDI1LTEwLTIyIiwgImJkZmE1MDJhLTRjOTMtNWM0ZS1hMDcxLTYzNWRhNThiNGVlMSJd","previous_cursor":null,"results":[{"key":"OT_IDV_HR0011269E026_9700","piid":"HR0011269E026","award_date":"2025-11-12","description":"DEVELOPMENT - OF NEW COMPUTATIONAL PRINCIPLES FOR ADAPTATION, ORCHESTRATION, AND ENGINEERING - OF BIOLOGICAL SYSTEMS","total_contract_value":1838712.0,"obligated":318987.0,"idv_type":"O","recipient":{"uei":"CURENVCZT6Z4","display_name":"WOLFRAM - FOUNDATION"}},{"key":"OT_IDV_H92405269E001_9700","piid":"H92405269E001","award_date":"2025-11-03","description":"OTA - PROTOTYPE OF FUTURESS/INNOVATION CYCLES RAPID\nPROTOTYPING BUSINESS PROCESS","total_contract_value":49000000.0,"obligated":2988524.1,"idv_type":"O","recipient":{"uei":"QNXRK3LEY5W8","display_name":"LIBERTY - ALLIANCE, LLC"}},{"key":"OT_IDV_HR0011269E022_9700","piid":"HR0011269E022","award_date":"2025-10-28","description":"RAPID - RESILIENCE RESPONSES (R3) - PROGRAM TASK CALL 08, AUTHORING TRAINING FOR HUNT - AND EXQUISITE NETWORK ANALYTICS (ATHENA).","total_contract_value":9072116.0,"obligated":4054352.0,"idv_type":"O","recipient":{"uei":"MQ1TKVG8MN89","display_name":"ULTIMATE - KNOWLEDGE CORPORATION"}},{"key":"OT_IDV_N000392690001_9700","piid":"N000392690001","award_date":"2025-10-27","description":"PHASE - 1 COMPLETION","total_contract_value":5095641.0,"obligated":10191282.0,"idv_type":"O","recipient":{"uei":"SMM7VQCC87V3","display_name":"APPLIED - INTUITION GOVERNMENT INC"}},{"key":"OT_IDV_HR0011269E038_9700","piid":"HR0011269E038","award_date":"2025-10-22","description":"INERTIAL - SCALING FOR DERISKING STABILITY AND CONTROL OF TIGHTLY COUPLED AEROPROPULSIVE - AIRCRAFT CONFIGURATIONS","total_contract_value":1800000.0,"obligated":2600000.0,"idv_type":"O","recipient":{"uei":"QCRHSCGFBLN4","display_name":"WHISPER - AERO INC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9cc8fee21e454c91-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Thu, 12 Feb 2026 03:28:23 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=kWPjvB7QGrMtsezlFvY59XUQ%2ByxeqyOdMq1rbTRxUbRQ1BdR8jTLZlrpCcZJjQ2bFBD8A4C3ms9gqB41Vnk1Cl2iUAnQHMWi%2Fk30HSy8"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '2123' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.025s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999563' - x-ratelimit-daily-reset: - - '34318' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '59' + - '14' status: code: 200 message: OK diff --git a/tests/cassettes/TestOfficesIntegration.test_get_office b/tests/cassettes/TestOfficesIntegration.test_get_office index 49cff05..b461eea 100644 --- a/tests/cassettes/TestOfficesIntegration.test_get_office +++ b/tests/cassettes/TestOfficesIntegration.test_get_office @@ -16,22 +16,22 @@ interactions: uri: https://tango.makegov.com/api/offices/?page=1&limit=1 response: body: - string: '{"count":166427,"next":"http://tango.makegov.com/api/offices/?limit=1&page=2","previous":null,"results":[{"office_code":"960207","office_name":"","agency_code":"96CE","agency_name":"U.S. + string: '{"count":166427,"next":"https://tango.makegov.com/api/offices/?limit=1&page=2","previous":null,"results":[{"office_code":"960207","office_name":"","agency_code":"96CE","agency_name":"U.S. Army Corps of Engineers - Civil Program Financing Only","department_code":96,"department_name":"Corps of Engineers - Civil Works"}]}' headers: CF-RAY: - - 9cc8ee2c0d60acf4-MSP + - 9d71a756c8c94c94-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:16:58 GMT + - Wed, 04 Mar 2026 14:43:31 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CK8zmhB6yCzN2PROXTNzHpT4%2B87LTKrxMUDOSeRtvw1wDquuc1YhoF%2FLvFpFsMxXL9vcJEiv6kuWsU9dKuIYe8bpCCkuxfo57o%2FTmk0B"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=JxVMrDQE7wiob2jJedbttdfsXkjw%2FQjYeziRT2rzO9V%2Bgk22q0QT21K7xldhmFeESG2qwKrzbQwmnZQV5cO3%2F0sDgs89l3brbwpGEQqji4DobljKs24a6XOW"}]}' Server: - cloudflare Transfer-Encoding: @@ -41,7 +41,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '319' + - '320' cross-origin-opener-policy: - same-origin referrer-policy: @@ -51,27 +51,103 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.040s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '8' + - '940' x-ratelimit-burst-reset: - - '59' + - '17' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '41' + - '1999700' x-ratelimit-daily-reset: - - '50685' + - '84978' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '8' + - '940' x-ratelimit-reset: - - '59' + - '17' + status: + code: 200 + message: OK +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - tango.makegov.com + user-agent: + - python-httpx/0.28.1 + method: GET + uri: https://tango.makegov.com/api/offices/960207/ + response: + body: + string: '{"office_code":"960207","office_name":"","agency_code":"96CE","agency_name":"U.S. + Army Corps of Engineers - Civil Program Financing Only","department_code":96,"department_name":"Corps + of Engineers - Civil Works"}' + headers: + CF-RAY: + - 9d71a7578a004c94-MSP + Connection: + - keep-alive + Content-Type: + - application/json + Date: + - Wed, 04 Mar 2026 14:43:31 GMT + Nel: + - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' + Report-To: + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ioRA8Bs7A2bgOnTAdzS2Bg8zNtd%2BmwmU4lfHMtRwJvW88QibvDKB6PUXXZB9ExA1ciTGHxnom14qmPLzoqs9KPdQR4gcm68pOaW254KHrjXsRZyP6GEXcJkp"}]}' + Server: + - cloudflare + Transfer-Encoding: + - chunked + allow: + - GET, HEAD, OPTIONS + cf-cache-status: + - DYNAMIC + content-length: + - '212' + cross-origin-opener-policy: + - same-origin + referrer-policy: + - same-origin + vary: + - Accept, Cookie + x-content-type-options: + - nosniff + x-execution-time: + - 0.024s + x-frame-options: + - DENY + x-ratelimit-burst-limit: + - '1000' + x-ratelimit-burst-remaining: + - '939' + x-ratelimit-burst-reset: + - '17' + x-ratelimit-daily-limit: + - '2000000' + x-ratelimit-daily-remaining: + - '1999699' + x-ratelimit-daily-reset: + - '84977' + x-ratelimit-limit: + - '1000' + x-ratelimit-remaining: + - '939' + x-ratelimit-reset: + - '17' status: code: 200 message: OK diff --git a/tests/cassettes/TestOfficesIntegration.test_list_offices b/tests/cassettes/TestOfficesIntegration.test_list_offices index ee73b4b..ece490b 100644 --- a/tests/cassettes/TestOfficesIntegration.test_list_offices +++ b/tests/cassettes/TestOfficesIntegration.test_list_offices @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/offices/?page=1&limit=10 response: body: - string: '{"count":166427,"next":"http://tango.makegov.com/api/offices/?limit=10&page=2","previous":null,"results":[{"office_code":"963102","office_name":"","agency_code":"96CE","agency_name":"U.S. + string: '{"count":166427,"next":"https://tango.makegov.com/api/offices/?limit=10&page=2","previous":null,"results":[{"office_code":"963102","office_name":"","agency_code":"96CE","agency_name":"U.S. Army Corps of Engineers - Civil Program Financing Only","department_code":96,"department_name":"Corps of Engineers - Civil Works"},{"office_code":"9624C6","office_name":"","agency_code":"96CE","agency_name":"U.S. Army Corps of Engineers - Civil Program Financing Only","department_code":96,"department_name":"Corps @@ -39,17 +39,17 @@ interactions: of Engineers - Civil Works"}]}' headers: CF-RAY: - - 9cc8ee2a6fdc5116-MSP + - 9d71a754fd71ad20-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:16:58 GMT + - Wed, 04 Mar 2026 14:43:30 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=WB7nhDGkIAChXbNOfe42%2F79Sk2xOP4yoRyFf%2BHFVMOWfK3C7w1plxUpqMukhC7zUtjy8OKdGtQu5GeQwLhwtyaCCPrf7aiMA4a2ne2Qn"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=NYn9jHr86Azi%2Bc6d8z2j25KEao7BXuHZYdMrcJiGrefwiSjFqLDfKoMTKr9OmDEvY0LQiUJu9mORGqJJ4hY82SUWHMpvtx%2BZXe0OnFK4iJz6Yv8Y1xJLSy4J"}]}' Server: - cloudflare Transfer-Encoding: @@ -59,7 +59,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '2220' + - '2221' cross-origin-opener-policy: - same-origin referrer-policy: @@ -69,27 +69,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.070s + - 0.025s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '9' + - '941' x-ratelimit-burst-reset: - - '59' + - '18' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '42' + - '1999701' x-ratelimit-daily-reset: - - '50686' + - '84978' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '9' + - '941' x-ratelimit-reset: - - '59' + - '18' status: code: 200 message: OK diff --git a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[custom-opportunity_id,title,solicitation_number] b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[custom-opportunity_id,title,solicitation_number] index 4b7895c..48ba650 100644 --- a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[custom-opportunity_id,title,solicitation_number] +++ b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[custom-opportunity_id,title,solicitation_number] @@ -16,36 +16,35 @@ interactions: uri: https://tango.makegov.com/api/opportunities/?page=1&limit=5&shape=opportunity_id%2Ctitle%2Csolicitation_number response: body: - string: '{"count":190142,"next":"http://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number","previous":null,"results":[{"opportunity_id":"d0b894c4-d4fa-440d-b898-d6dec8381b24","title":"47--TUBE - ASSEMBLY","solicitation_number":"SPEFA126Q0016"},{"opportunity_id":"b8e8abdb-b055-49da-812e-bc94eb9e66f7","title":"Bus - Chaperone Services","solicitation_number":"19SA7026Q0003"},{"opportunity_id":"569a523c-2a60-4bfc-83df-45d926818a58","title":"17--NRP,DRAWBAR,TELESCO","solicitation_number":"SPE8EF26Q0029"},{"opportunity_id":"dd59e39b-b1c9-49c2-830c-abc66ec6511a","title":"30--CONNECTING - LINK,RIG","solicitation_number":"SPE4A526T3439"},{"opportunity_id":"743be37d-3b73-4f2c-857b-4c57d1ae8ff1","title":"31--CONE - AND ROLLERS,TA","solicitation_number":"SPE4A626T047W"}]}' + string: '{"count":30155,"next":"https://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number","previous":null,"results":[{"opportunity_id":"5d5dbbec-35b9-4fd3-b887-8b2d094d8d93","title":"U.S. + Embassy Antananarivo: Central Alarm Monitoring Services","solicitation_number":"PR15858949"},{"opportunity_id":"e863b8c2-7509-4e37-9b2f-61c2a05a286c","title":"Purchase, + 20Feet Conex Box","solicitation_number":"N6264926QE011"},{"opportunity_id":"3cf28036-c04c-4e3a-a0df-035b8761779e","title":"Purchase, + Install, Removal, On-site Training of 1ea Band Saw","solicitation_number":"FA520926Q0019"},{"opportunity_id":"e67a42c5-e7bc-42ea-948b-e55560208455","title":"Portable + Toilets in support of Friendship Day FY26","solicitation_number":"M6740026Q0015"},{"opportunity_id":"0fe3adb2-602d-4737-876d-49174eab17ec","title":"Sources + Sought for Starlink Mini Terminals and accessories","solicitation_number":"19MG1026Q0004"}]}' headers: CF-RAY: - - 99f88c98d806a224-MSP + - 9d71a75eb9ff6a43-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:15 GMT + - Wed, 04 Mar 2026 14:43:32 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=TT%2B8oEGHjlLOdLfC6Bvt1FeXW2fG2r6%2B2WngscWTz10A38N5i9UbfDSTOrag15UKCmoMYpYAGgxkDuyN%2Fakku9a6eQXs7lxvl6tMVPhh2QEAAS66d7ge8gqXgA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Gwoo7qKgIhvJnFDuRpMgdTMsMHTo05SP57whmmNRY4k71tCo4b%2BywGKPQP1JPO2lzB4jDDsLskJJMjwesEOeTjXfGHPrwSMFZHkP9nMsURlWfTITAeXeB9bY"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '806' + - '949' cross-origin-opener-policy: - same-origin referrer-policy: @@ -55,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.435s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '944' + - '935' x-ratelimit-burst-reset: - - '38' + - '16' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998637' + - '1999695' x-ratelimit-daily-reset: - - '70' + - '84976' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '944' + - '935' x-ratelimit-reset: - - '38' + - '16' status: code: 200 message: OK diff --git a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[default-None] b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[default-None] index 6650a9a..db8c85e 100644 --- a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[default-None] +++ b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[default-None] @@ -16,36 +16,35 @@ interactions: uri: https://tango.makegov.com/api/opportunities/?page=1&limit=5&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive response: body: - string: '{"count":190142,"next":"http://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"569a523c-2a60-4bfc-83df-45d926818a58","title":"17--NRP,DRAWBAR,TELESCO","solicitation_number":"SPE8EF26Q0029","response_deadline":"2025-12-01T00:00:00+00:00","active":true},{"opportunity_id":"dd59e39b-b1c9-49c2-830c-abc66ec6511a","title":"30--CONNECTING - LINK,RIG","solicitation_number":"SPE4A526T3439","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"743be37d-3b73-4f2c-857b-4c57d1ae8ff1","title":"31--CONE - AND ROLLERS,TA","solicitation_number":"SPE4A626T047W","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"f5ce34a6-fe69-465a-9a47-e3e445c63f55","title":"47--HOSE - ASSEMBLY,NONME","solicitation_number":"SPE7M426T2717","response_deadline":"2025-11-28T00:00:00+00:00","active":true},{"opportunity_id":"f967a1d6-d155-4e10-a193-7cf1e4e464ac","title":"66--DRAFTING - MACHINE","solicitation_number":"SPE8E926T0681","response_deadline":"2025-11-28T00:00:00+00:00","active":true}]}' + string: '{"count":30155,"next":"https://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"5d5dbbec-35b9-4fd3-b887-8b2d094d8d93","title":"U.S. + Embassy Antananarivo: Central Alarm Monitoring Services","solicitation_number":"PR15858949","response_deadline":"2026-04-17T13:00:00+00:00","active":true},{"opportunity_id":"e863b8c2-7509-4e37-9b2f-61c2a05a286c","title":"Purchase, + 20Feet Conex Box","solicitation_number":"N6264926QE011","response_deadline":"2026-03-10T01:00:00+00:00","active":true},{"opportunity_id":"3cf28036-c04c-4e3a-a0df-035b8761779e","title":"Purchase, + Install, Removal, On-site Training of 1ea Band Saw","solicitation_number":"FA520926Q0019","response_deadline":"2026-03-19T05:00:00+00:00","active":true},{"opportunity_id":"e67a42c5-e7bc-42ea-948b-e55560208455","title":"Portable + Toilets in support of Friendship Day FY26","solicitation_number":"M6740026Q0015","response_deadline":"2026-03-12T23:00:00+00:00","active":true},{"opportunity_id":"0fe3adb2-602d-4737-876d-49174eab17ec","title":"Sources + Sought for Starlink Mini Terminals and accessories","solicitation_number":"19MG1026Q0004","response_deadline":"2026-03-19T08:00:00+00:00","active":true}]}' headers: CF-RAY: - - 99f88c8cd91ca203-MSP + - 9d71a75a682b4cb7-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:13 GMT + - Wed, 04 Mar 2026 14:43:31 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=GkEaEkUI%2FB2PBYJ4hytR9AOSMzuj3WHEWnUyf2bm%2FUiLYerYZzyqyMYTGIQ9Lp4oGuYSrAiytRtGdxeig2Y5vzNqn5LgGgKJK%2FO0yG4c9RSXM8eMusgvU2rjOw%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3iPSh%2BkO%2BkB87LfhwlQ4ZRAcVEfoL0yiD%2BWr8iXAukEl7sHFc%2FNtP35xL9em3H5c7ZQ9x19RepUIKQ11Y8YfvHKiJ%2BxBa8HaAlFhkM8JnyPA3bYnhvrbnTfo"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1149' + - '1288' cross-origin-opener-policy: - same-origin referrer-policy: @@ -55,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.466s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '947' + - '938' x-ratelimit-burst-reset: - - '39' + - '17' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998640' + - '1999698' x-ratelimit-daily-reset: - - '72' + - '84977' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '947' + - '938' x-ratelimit-reset: - - '39' + - '17' status: code: 200 message: OK diff --git a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_asid...23b6b4502ddd665b7184afcff6c6d8d9 b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_asid...23b6b4502ddd665b7184afcff6c6d8d9 index 29768d7..fb589f5 100644 --- a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_asid...23b6b4502ddd665b7184afcff6c6d8d9 +++ b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_asid...23b6b4502ddd665b7184afcff6c6d8d9 @@ -16,83 +16,92 @@ interactions: uri: https://tango.makegov.com/api/opportunities/?page=1&limit=5&shape=opportunity_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cresponse_deadline%2Cfirst_notice_date%2Clast_notice_date%2Cactive%2Cnaics_code%2Cpsc_code%2Cset_aside%2Csam_url%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29 response: body: - string: '{"count":190142,"next":"http://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cresponse_deadline%2Cfirst_notice_date%2Clast_notice_date%2Cactive%2Cnaics_code%2Cpsc_code%2Cset_aside%2Csam_url%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29","previous":null,"results":[{"opportunity_id":"569a523c-2a60-4bfc-83df-45d926818a58","title":"17--NRP,DRAWBAR,TELESCO","description":"Proposed - procurement for NSN 1740016221432 NRP,DRAWBAR,TELESCO:\nLine 0001 Qty 30 UI - EA Deliver To: W1A8 DLA DISTRIBUTION By: 0090 DAYS ADO\nThe solicitation - is an RFQ and will be available at the link provided in this notice. Hard - copies of this solicitation are not available. Digitized drawings and Military - Specifications and Standards may be retrieved, or ordered, electronically.\nAll - responsible sources may submit a quote which, if timely received, shall be - considered.\nQuotes may be submitted electronically.\n","solicitation_number":"SPE8EF26Q0029","response_deadline":"2025-12-01T00:00:00+00:00","first_notice_date":"2025-11-16T11:09:42+00:00","last_notice_date":"2025-11-16T11:09:42+00:00","active":true,"naics_code":336212,"psc_code":"17","set_aside":"SBA","sam_url":"https://sam.gov/opp/569a523c2a604bfc83df45d926818a58/view","office":{"office_code":"SPE8EF","office_name":"DLA - TROOP SUPPORT","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"dd59e39b-b1c9-49c2-830c-abc66ec6511a","title":"30--CONNECTING - LINK,RIG","description":"Proposed procurement for NSN 3040015894908 CONNECTING - LINK,RIG:\nLine 0001 Qty 5 UI EA Deliver To: W1A8 DLA DIST SAN JOAQUIN - By: 0159 DAYS ADO\nApproved source is 0W6H8 3671240C01003-5.\nThe solicitation - is an RFQ and will be available at the link provided in this notice. Hard - copies of this solicitation are not available. Specifications, plans, or drawings - are not available.\nAll responsible sources may submit a quote which, if timely - received, shall be considered.\nQuotes must be submitted electronically.\n","solicitation_number":"SPE4A526T3439","response_deadline":"2025-11-24T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:55+00:00","last_notice_date":"2025-11-16T06:00:55+00:00","active":true,"naics_code":333613,"psc_code":"30","set_aside":null,"sam_url":"https://sam.gov/opp/dd59e39bb1c949c2830cabc66ec6511a/view","office":{"office_code":"SPE4A5","office_name":"DLA - AVIATION","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"743be37d-3b73-4f2c-857b-4c57d1ae8ff1","title":"31--CONE - AND ROLLERS,TA","description":"Proposed procurement for NSN 3110013984248 - CONE AND ROLLERS,TA:\nLine 0001 Qty 1336 UI EA Deliver To: DLA DISTRIBUTION - SAN DIEGO By: 0156 DAYS ADO\nThis is a source controlled drawing item. Approved - sources are 60038 28682-20629; 60038 9235611-163; 97153 9235611-163.\nThe - solicitation is an RFQ and will be available at the link provided in this - notice. Hard copies of this solicitation are not available. The items furnished - must meet the requirements of the drawing cited in the solicitation. Digitized - drawings and Military Specifications and Standards may be retrieved, or ordered, - electronically.\nAll responsible sources may submit a quote which, if timely - received, shall be considered.\nQuotes must be submitted electronically.\n","solicitation_number":"SPE4A626T047W","response_deadline":"2025-11-24T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:44+00:00","last_notice_date":"2025-11-16T06:00:44+00:00","active":true,"naics_code":332991,"psc_code":"31","set_aside":null,"sam_url":"https://sam.gov/opp/743be37d3b734f2c857b4c57d1ae8ff1/view","office":{"office_code":"SPE4A6","office_name":"DLA - AVIATION","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"f5ce34a6-fe69-465a-9a47-e3e445c63f55","title":"47--HOSE - ASSEMBLY,NONME","description":"Proposed procurement for NSN 4720002304007 - HOSE ASSEMBLY,NONME:\nLine 0001 Qty 17 UI EA Deliver To: DLA DISTRIBUTION - WARNER ROBINS By: 0080 DAYS ADO\nThis is a source controlled drawing item. Approved - sources are 78570 96320; 98441 A2148-1.\nThe solicitation is an RFQ and will - be available at the link provided in this notice. Hard copies of this solicitation - are not available. The items furnished must meet the requirements of the drawing - cited in the solicitation. Digitized drawings and Military Specifications - and Standards may be retrieved, or ordered, electronically.\nAll responsible - sources may submit a quote which, if timely received, shall be considered.\nQuotes - must be submitted electronically.\n","solicitation_number":"SPE7M426T2717","response_deadline":"2025-11-28T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:42+00:00","last_notice_date":"2025-11-16T06:00:42+00:00","active":true,"naics_code":332999,"psc_code":"47","set_aside":"SBA","sam_url":"https://sam.gov/opp/f5ce34a6fe69465a9a47e3e445c63f55/view","office":{"office_code":"SPE7M4","office_name":"DLA - LAND AND MARITIME","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"f967a1d6-d155-4e10-a193-7cf1e4e464ac","title":"66--DRAFTING - MACHINE","description":"Proposed procurement for NSN 6675001740508 DRAFTING - MACHINE:\nLine 0001 Qty 75 UI EA Deliver To: W1A8 DLA DISTRIBUTION By: - 0065 DAYS ADO\nApproved source is 1GRU3 3300NP-16.\nThe solicitation is an - RFQ and will be available at the link provided in this notice. Hard copies - of this solicitation are not available. Specifications, plans, or drawings - are not available.\nAll responsible sources may submit a quote which, if timely - received, shall be considered.\nQuotes must be submitted electronically.\n","solicitation_number":"SPE8E926T0681","response_deadline":"2025-11-28T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:40+00:00","last_notice_date":"2025-11-16T06:00:40+00:00","active":true,"naics_code":321999,"psc_code":"66","set_aside":null,"sam_url":"https://sam.gov/opp/f967a1d6d1554e10a1937cf1e4e464ac/view","office":{"office_code":"SPE8E9","office_name":"DLA - TROOP SUPPORT","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}}]}' + string: '{"count":30155,"next":"https://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cresponse_deadline%2Cfirst_notice_date%2Clast_notice_date%2Cactive%2Cnaics_code%2Cpsc_code%2Cset_aside%2Csam_url%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29","previous":null,"results":[{"opportunity_id":"5d5dbbec-35b9-4fd3-b887-8b2d094d8d93","title":"U.S. + Embassy Antananarivo: Central Alarm Monitoring Services","description":"

The + vendor shall provide

\n\n
    \n\t
  1. Alarm installation and maintenance + services:\n\t
      \n\t\t
    1. One quote, for service provider owned alarm systems + completely provided and maintained from the service provider; or
    2. \n\t\t
    3. One + quote, for service provider owned communications modules to be installed in + existing AES 5100 and 6100 systems. (This communications module must be able + to communicate with service providers monitoring center.
    4. \n\t
    \n\t
  2. \n\t
  3. Provision + of Central Alarm Monitoring System (CAMS) Monitoring Services. This is defined + as an alarm system that also makes the intrusion known at another location + by means of an automatic telephone dialer, wired connection or by radio transmission + to a central monitoring location. CAMS must be monitored 24/7 and have a 24/7 + dedicated response, i.e. Local Guard Mobile Patrol or a commercial security + response company.  The response service does not need to be armed with + firearms.
  4. \n
\n","solicitation_number":"PR15858949","response_deadline":"2026-04-17T13:00:00+00:00","first_notice_date":"2026-03-04T07:19:42+00:00","last_notice_date":"2026-03-04T07:19:42+00:00","active":true,"naics_code":561612,"psc_code":"K063","set_aside":null,"sam_url":"https://sam.gov/opp/5d5dbbec35b94fd3b8878b2d094d8d93/view","office":{"office_code":"19MA10","office_name":"U.S. + EMBASSY ANTANANARIVO","agency_code":"1900","agency_name":"Department of State","department_code":19,"department_name":"Department + of State"},"place_of_performance":{"zip":"101","city":"Antananarivo","state":"MG-T","country":"MDG","street_address":null}},{"opportunity_id":"e863b8c2-7509-4e37-9b2f-61c2a05a286c","title":"Purchase, + 20Feet Conex Box","description":"

\n\n

To purchase six (6) each 20ft + conex boxes that are manufactured to comply with ISO 668 standard.

\n\n

Remarks: + Rear and Front double-sided door type Exterior color RAL6003 Olive Green is + preferable.

\n\n

WARRANTY: Manufacture Warranty required at delivery.

\n","solicitation_number":"N6264926QE011","response_deadline":"2026-03-10T01:00:00+00:00","first_notice_date":"2026-03-04T01:29:49+00:00","last_notice_date":"2026-03-04T06:01:26+00:00","active":true,"naics_code":332439,"psc_code":"8150","set_aside":"NONE","sam_url":"https://sam.gov/opp/30ed251d67d749ad904e3398f4581cb2/view","office":{"office_code":"N62649","office_name":"NAVSUP + FLT LOG CTR YOKOSUKA","agency_code":"1700","agency_name":"Department of the + Navy","department_code":97,"department_name":"Department of Defense"},"place_of_performance":{"zip":null,"city":"Sasebo","state":"JP-42","country":"JPN","street_address":null}},{"opportunity_id":"3cf28036-c04c-4e3a-a0df-035b8761779e","title":"Purchase, + Install, Removal, On-site Training of 1ea Band Saw","description":"

This + is a Presolicitation Notice issued in accordance with (IAW) Revolutionary + FAR Overhaul (RFO) FAR 5.1 and 12.201-1(c)(2).

\n\n

THIS NOTICE IS NOT + A REQUEST FOR COMPETITIVE PROPOSALS NOR QUOTATIONS.

\n\n

The Government + intends to solicit this requirement directly from suppliers IAW RFO FAR 12.201-1(c)(2) + for firm-fixed price contract for purchase, installation, removal/disposal + of existing Band Saw, and on-site training in Japanese of 1ea brand new Band + Saw at Sagami General Depot, Kanagawa Prefecture, Japan. 
\nAnticipated + award date is around 15 May 2026 (subject to change).

\n\n

Agency: Department + of the Air Force
\nOffice: 374th Contracting Squadron, Bldg 620, Yokota + Air Base, Fussa-shi, Tokyo, Japan
\nSet-aside: N/A
\nNAICS Code: + 221310

\n\n

Description: Purchase, Install, Removal, On-site Training + of 1ea Band Saw, Amada HK400 or equal at Sagami General Depot, JAPAN

\n\n

Note: + This project will be performed in its entirety in the country of Japan. The + successful offeror must have valid licenses to perform work in the country + of Japan.
\n 

\n","solicitation_number":"FA520926Q0019","response_deadline":"2026-03-19T05:00:00+00:00","first_notice_date":"2026-03-04T05:36:11+00:00","last_notice_date":"2026-03-04T05:36:11+00:00","active":true,"naics_code":333248,"psc_code":"3405","set_aside":"NONE","sam_url":"https://sam.gov/opp/3cf28036c04c4e3aa0df035b8761779e/view","office":{"office_code":"FA5209","office_name":"FA5209 374 + CONS PK","agency_code":"5700","agency_name":"Department of the Air Force","department_code":97,"department_name":"Department + of Defense"},"place_of_performance":{"zip":null,"city":"Sagamihara","state":"JP-14","country":"JPN","street_address":null}},{"opportunity_id":"e67a42c5-e7bc-42ea-948b-e55560208455","title":"Portable + Toilets in support of Friendship Day FY26","description":"

The contractor + shall provide portable toilets, handicap accessible portable toilets, and + hand washing stations for visitors to the Iwakuni Friendship Day Air Show + on May 02 – May 03, 2026, with no additional cost to the U.S. Government. + The contractor will, without any additional expense to the U.S. Government, + obtain necessary licenses and permits applicable to execute the requirement + .

\n\n

\n","solicitation_number":"M6740026Q0015","response_deadline":"2026-03-12T23:00:00+00:00","first_notice_date":"2026-02-20T05:16:29+00:00","last_notice_date":"2026-03-04T05:07:12+00:00","active":true,"naics_code":532411,"psc_code":"W085","set_aside":"NONE","sam_url":"https://sam.gov/opp/c17e6afedae846ed9d1965af77202a3b/view","office":{"office_code":"M67400","office_name":"COMMANDING + OFFICER","agency_code":"1700","agency_name":"Department of the Navy","department_code":97,"department_name":"Department + of Defense"},"place_of_performance":{"zip":null,"city":"Iwakuni","state":"JP-35","country":"JPN","street_address":null}},{"opportunity_id":"0fe3adb2-602d-4737-876d-49174eab17ec","title":"Sources + Sought for Starlink Mini Terminals and accessories","description":"
    \n\t
  1. The + Contractor shall furnish and deliver items listed below to the U.S. Embassy + Ulaanbaatar, Mongolia in accordance with the specifications and terms and + conditions set forth herein. The materials and equipment requested are meant + to provide medical clinics in Omnogobi, Dornogobi, and Dundgovi Province, + Mongolia with Starlink Mini Terminals needed to provide internet connectivity + to ambulances during medical emergencies and increase standard of medical + care in a prehospital setting.  
  2. \n
\n\n

List of Items to be + Procured 70 total units:

\n\n

Starlink Mini Terminals

\n\n

Starlink + Mini Magnetic Mount

\n\n

12V Cigarette lighter adapter, 10ft braided

\n\n

Starlink + Mini Protective cover     

\n","solicitation_number":"19MG1026Q0004","response_deadline":"2026-03-19T08:00:00+00:00","first_notice_date":"2026-03-04T04:27:00+00:00","last_notice_date":"2026-03-04T04:27:00+00:00","active":true,"naics_code":null,"psc_code":"DG11","set_aside":"NONE","sam_url":"https://sam.gov/opp/0fe3adb2602d4737876d49174eab17ec/view","office":{"office_code":"19MG10","office_name":"U.S. + EMBASSY ULAANBAATAR","agency_code":"1900","agency_name":"Department of State","department_code":19,"department_name":"Department + of State"},"place_of_performance":{"zip":null,"city":"ulaanbaatar","state":"MN-1","country":"MNG","street_address":null}}]}' headers: CF-RAY: - - 99f88c94b8e4a1cf-MSP + - 9d71a75d7cc628fe-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:14 GMT + - Wed, 04 Mar 2026 14:43:32 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=bfiSBpNQl38vrPnHP7HI3YFOwzR3dDgcM0FB0CidZ6EI4KTEa0GsJxOnlJ1mjgGRc%2BHPebVTHUqPRqB%2B7PPaDyVCHexR0KJR4kco7ZxjEfdUi3b%2FHfie5BvkVA%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=IBHiAtZYosQcLpC1FXl%2BiVjGduWsVWiMAPOjl6saWJSNPs0A41usE20vEwuhlPeLlJKxiZsHKgkar%2FMn5weukt8e6oczdmUxxVc8ei%2BY778598LYrIiF%2B51e"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '6941' + - '7739' cross-origin-opener-policy: - same-origin referrer-policy: @@ -102,27 +111,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.478s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '945' + - '936' x-ratelimit-burst-reset: - - '38' + - '16' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998638' + - '1999696' x-ratelimit-daily-reset: - - '71' + - '84977' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '945' + - '936' x-ratelimit-reset: - - '38' + - '16' status: code: 200 message: OK diff --git a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[minimal-opportunity_id,title,solicitation_number,response_deadline,active] b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[minimal-opportunity_id,title,solicitation_number,response_deadline,active] index bc36034..7f90b50 100644 --- a/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[minimal-opportunity_id,title,solicitation_number,response_deadline,active] +++ b/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[minimal-opportunity_id,title,solicitation_number,response_deadline,active] @@ -16,36 +16,35 @@ interactions: uri: https://tango.makegov.com/api/opportunities/?page=1&limit=5&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive response: body: - string: '{"count":190142,"next":"http://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"569a523c-2a60-4bfc-83df-45d926818a58","title":"17--NRP,DRAWBAR,TELESCO","solicitation_number":"SPE8EF26Q0029","response_deadline":"2025-12-01T00:00:00+00:00","active":true},{"opportunity_id":"dd59e39b-b1c9-49c2-830c-abc66ec6511a","title":"30--CONNECTING - LINK,RIG","solicitation_number":"SPE4A526T3439","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"743be37d-3b73-4f2c-857b-4c57d1ae8ff1","title":"31--CONE - AND ROLLERS,TA","solicitation_number":"SPE4A626T047W","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"f5ce34a6-fe69-465a-9a47-e3e445c63f55","title":"47--HOSE - ASSEMBLY,NONME","solicitation_number":"SPE7M426T2717","response_deadline":"2025-11-28T00:00:00+00:00","active":true},{"opportunity_id":"f967a1d6-d155-4e10-a193-7cf1e4e464ac","title":"66--DRAFTING - MACHINE","solicitation_number":"SPE8E926T0681","response_deadline":"2025-11-28T00:00:00+00:00","active":true}]}' + string: '{"count":30155,"next":"https://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"5d5dbbec-35b9-4fd3-b887-8b2d094d8d93","title":"U.S. + Embassy Antananarivo: Central Alarm Monitoring Services","solicitation_number":"PR15858949","response_deadline":"2026-04-17T13:00:00+00:00","active":true},{"opportunity_id":"e863b8c2-7509-4e37-9b2f-61c2a05a286c","title":"Purchase, + 20Feet Conex Box","solicitation_number":"N6264926QE011","response_deadline":"2026-03-10T01:00:00+00:00","active":true},{"opportunity_id":"3cf28036-c04c-4e3a-a0df-035b8761779e","title":"Purchase, + Install, Removal, On-site Training of 1ea Band Saw","solicitation_number":"FA520926Q0019","response_deadline":"2026-03-19T05:00:00+00:00","active":true},{"opportunity_id":"e67a42c5-e7bc-42ea-948b-e55560208455","title":"Portable + Toilets in support of Friendship Day FY26","solicitation_number":"M6740026Q0015","response_deadline":"2026-03-12T23:00:00+00:00","active":true},{"opportunity_id":"0fe3adb2-602d-4737-876d-49174eab17ec","title":"Sources + Sought for Starlink Mini Terminals and accessories","solicitation_number":"19MG1026Q0004","response_deadline":"2026-03-19T08:00:00+00:00","active":true}]}' headers: CF-RAY: - - 99f88c90da8b5110-MSP + - 9d71a75ba92ca1d0-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:14 GMT + - Wed, 04 Mar 2026 14:43:31 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=XBjzSVFblVhxCVH6YYKsmlvvyHVho5o5KnDdPmvSSH6frBzIRTKIvSFnqGuYuxAz%2Fww4XpDY3e0E9w9by5fVAub4pozJTLDY%2Fgst%2BnCL3MO3nZRtF7Dll8k%2F9g%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=q%2BZ8unom9mVI%2BuX5LYQ3oUIHNMTJrfmZwOHjJAFk9rEVG4zMTyztvKAGWvaNeozHbdajijg6Ggk8DDADdytTWeDKP4mf2kjGQeuyMzIxFJHNYlzqBDyzyZ8s"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1149' + - '1288' cross-origin-opener-policy: - same-origin referrer-policy: @@ -55,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.451s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '946' + - '937' x-ratelimit-burst-reset: - - '39' + - '17' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998639' + - '1999697' x-ratelimit-daily-reset: - - '72' + - '84977' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '946' + - '937' x-ratelimit-reset: - - '39' + - '17' status: code: 200 message: OK diff --git a/tests/cassettes/TestOpportunitiesIntegration.test_opportunity_field_types b/tests/cassettes/TestOpportunitiesIntegration.test_opportunity_field_types index bbd4c67..dbb49ac 100644 --- a/tests/cassettes/TestOpportunitiesIntegration.test_opportunity_field_types +++ b/tests/cassettes/TestOpportunitiesIntegration.test_opportunity_field_types @@ -16,37 +16,41 @@ interactions: uri: https://tango.makegov.com/api/opportunities/?page=1&limit=10&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive response: body: - string: '{"count":190142,"next":"http://tango.makegov.com/api/opportunities/?limit=10&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"569a523c-2a60-4bfc-83df-45d926818a58","title":"17--NRP,DRAWBAR,TELESCO","solicitation_number":"SPE8EF26Q0029","response_deadline":"2025-12-01T00:00:00+00:00","active":true},{"opportunity_id":"dd59e39b-b1c9-49c2-830c-abc66ec6511a","title":"30--CONNECTING - LINK,RIG","solicitation_number":"SPE4A526T3439","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"743be37d-3b73-4f2c-857b-4c57d1ae8ff1","title":"31--CONE - AND ROLLERS,TA","solicitation_number":"SPE4A626T047W","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"f5ce34a6-fe69-465a-9a47-e3e445c63f55","title":"47--HOSE - ASSEMBLY,NONME","solicitation_number":"SPE7M426T2717","response_deadline":"2025-11-28T00:00:00+00:00","active":true},{"opportunity_id":"f967a1d6-d155-4e10-a193-7cf1e4e464ac","title":"66--DRAFTING - MACHINE","solicitation_number":"SPE8E926T0681","response_deadline":"2025-11-28T00:00:00+00:00","active":true},{"opportunity_id":"2f2cf075-5c42-4723-833d-28af7ff3a11f","title":"43--FLANGE,MOUNTING","solicitation_number":"SPE7M426T2708","response_deadline":"2025-11-28T00:00:00+00:00","active":true},{"opportunity_id":"9692b86c-88b9-468a-bb5e-b1f03e9ea4b8","title":"47--NUT,UNION","solicitation_number":"SPE7M026T1709","response_deadline":"2025-11-28T00:00:00+00:00","active":true},{"opportunity_id":"35792677-fdd5-4dac-a413-54afa53d1096","title":"53--SEAL,PLAIN - ENCASED","solicitation_number":"SPE7L326U0105","response_deadline":"2025-12-01T00:00:00+00:00","active":true},{"opportunity_id":"fa7ad583-73a1-4e95-8f28-ed3288c2c312","title":"29--CORE,RADIATOR","solicitation_number":"SPE7LX26U1305","response_deadline":"2025-12-01T00:00:00+00:00","active":true},{"opportunity_id":"45bf450d-b0a8-41f9-844b-f594f7108ce3","title":"53--COUPLING,CLAMP,GROO","solicitation_number":"SPE4A726T3688","response_deadline":"2025-11-24T00:00:00+00:00","active":true}]}' + string: '{"count":30155,"next":"https://tango.makegov.com/api/opportunities/?limit=10&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"5d5dbbec-35b9-4fd3-b887-8b2d094d8d93","title":"U.S. + Embassy Antananarivo: Central Alarm Monitoring Services","solicitation_number":"PR15858949","response_deadline":"2026-04-17T13:00:00+00:00","active":true},{"opportunity_id":"e863b8c2-7509-4e37-9b2f-61c2a05a286c","title":"Purchase, + 20Feet Conex Box","solicitation_number":"N6264926QE011","response_deadline":"2026-03-10T01:00:00+00:00","active":true},{"opportunity_id":"3cf28036-c04c-4e3a-a0df-035b8761779e","title":"Purchase, + Install, Removal, On-site Training of 1ea Band Saw","solicitation_number":"FA520926Q0019","response_deadline":"2026-03-19T05:00:00+00:00","active":true},{"opportunity_id":"e67a42c5-e7bc-42ea-948b-e55560208455","title":"Portable + Toilets in support of Friendship Day FY26","solicitation_number":"M6740026Q0015","response_deadline":"2026-03-12T23:00:00+00:00","active":true},{"opportunity_id":"0fe3adb2-602d-4737-876d-49174eab17ec","title":"Sources + Sought for Starlink Mini Terminals and accessories","solicitation_number":"19MG1026Q0004","response_deadline":"2026-03-19T08:00:00+00:00","active":true},{"opportunity_id":"31cc7511-ec9f-4f4d-aaaf-ecabb4f6efe3","title":"Solicitation + No: 19NP4026R0004 Health Insurance","solicitation_number":"19NP4026R0004","response_deadline":"2026-04-03T11:15:00+00:00","active":true},{"opportunity_id":"b8e4b4f8-31bf-40d0-a72a-ba5396f5e386","title":"Indefinite + Delivery/Indefinite Quantity (IDIQ) Multiple Award Task Order Contracts (MATOC) + for Design-Build (DB) Construction in Support of Defense Health Agency (DHA)","solicitation_number":"W9127S26RA028","response_deadline":"2026-04-06T07:00:00+00:00","active":true},{"opportunity_id":"1615dfce-0e1e-42d2-837a-efcbb4c04af6","title":"SIDE + CAR ASSEMBLY","solicitation_number":"SPRDL1-25-R-0099","response_deadline":"2026-03-10T20:00:00+00:00","active":true},{"opportunity_id":"9c0cb370-04b3-404e-885f-c25aae514bf6","title":"USNS + CITY OF BISMARCK (T-EPF 9)","solicitation_number":"SSU_SN_27_001","response_deadline":"2026-03-19T04:00:00+00:00","active":true},{"opportunity_id":"fe4b8b06-8340-4632-a21a-56c081555fb8","title":"GSA + Seeks Leased Office Space in Sioux Falls, SD","solicitation_number":"4SD0099","response_deadline":"2026-03-24T23:00:00+00:00","active":true}]}' headers: CF-RAY: - - 99f88c9ccbec510a-MSP + - 9d71a7616b5b510d-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:16 GMT + - Wed, 04 Mar 2026 14:43:32 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Xb2fT%2FkogLy%2BUxMuTjWm0vjYDZ6SjKimStvQkbQUHR2EV78GWozxZqsorUvQg3oqDKh22r1l0nqDqC97I0ON0WssYV5AiJ1NHJ45ao8WEpSo5C%2FxSTAuDHuJPg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=9XFT9SKKJE7mcVmG0kQLG%2BrHlIVPWDvRZATEtu3O9MuHhAK3bqulM4W%2BL9r7ee7NC5GTl%2FzGmiFITdvlJnV3GKJIpy6HXPbRLiUest0bbuhCSlQZv%2Bi4vV7e"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '2089' + - '2441' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +60,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.485s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '943' + - '934' x-ratelimit-burst-reset: - - '37' + - '16' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998636' + - '1999694' x-ratelimit-daily-reset: - - '70' + - '84976' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '943' + - '934' x-ratelimit-reset: - - '37' + - '16' status: code: 200 message: OK diff --git a/tests/cassettes/TestOrganizationsIntegration.test_get_organization b/tests/cassettes/TestOrganizationsIntegration.test_get_organization index 90050de..0c5f05d 100644 --- a/tests/cassettes/TestOrganizationsIntegration.test_get_organization +++ b/tests/cassettes/TestOrganizationsIntegration.test_get_organization @@ -16,21 +16,21 @@ interactions: uri: https://tango.makegov.com/api/organizations/?page=1&limit=1&shape=key%2Cfh_key%2Cname%2Clevel%2Ctype%2Cshort_name response: body: - string: '{"count":99298,"next":"http://tango.makegov.com/api/organizations/?limit=1&page=2&shape=key%2Cfh_key%2Cname%2Clevel%2Ctype%2Cshort_name","previous":null,"results":[{"key":"2278181c-046b-5265-b4e6-74444829a573","fh_key":100000000,"name":"DEPT + string: '{"count":100170,"next":"https://tango.makegov.com/api/organizations/?limit=1&page=2&shape=key%2Cfh_key%2Cname%2Clevel%2Ctype%2Cshort_name","previous":null,"results":[{"key":"2278181c-046b-5265-b4e6-74444829a573","fh_key":"100000000","name":"DEPT OF DEFENSE","level":1,"type":"DEPARTMENT","short_name":"DOD"}]}' headers: CF-RAY: - - 9cc8ee30eb24ad23-MSP + - 9d71a7642ec2e02b-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:16:59 GMT + - Wed, 04 Mar 2026 14:43:33 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rwxEYQnJhgPHJeAS0Y7SPgAG%2BvZAcDJnsjqG%2B3kdu9dT7YMoYA54o1luqFIi50TMJfveLsgRaP5%2BEG6aN%2BWoY1HrlCcBTtnd5r35Uh0O"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=eGbm%2FX%2FF2frICzNrr1HfWAy0bdXqaAzARTxG0N%2FjWxkoCzgG4f8XzhZu2cnuKNI3wa4YmYGIGtbSsMXr7Oe3HgYeWJVvET%2F23X46WHVBILlbE1oWtRRaYAFE"}]}' Server: - cloudflare Transfer-Encoding: @@ -40,7 +40,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '305' + - '309' cross-origin-opener-policy: - same-origin referrer-policy: @@ -50,27 +50,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.048s + - 0.016s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '5' + - '932' x-ratelimit-burst-reset: - - '58' + - '15' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '38' + - '1999692' x-ratelimit-daily-reset: - - '50685' + - '84975' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '5' + - '932' x-ratelimit-reset: - - '58' + - '15' status: code: 200 message: OK @@ -91,21 +91,21 @@ interactions: uri: https://tango.makegov.com/api/organizations/100000000/?shape=key%2Cfh_key%2Cname%2Clevel%2Ctype%2Cshort_name response: body: - string: '{"key":"2278181c-046b-5265-b4e6-74444829a573","fh_key":100000000,"name":"DEPT + string: '{"key":"2278181c-046b-5265-b4e6-74444829a573","fh_key":"100000000","name":"DEPT OF DEFENSE","level":1,"type":"DEPARTMENT","short_name":"DOD"}' headers: CF-RAY: - - 9cc8ee31bc4aad23-MSP + - 9d71a764d9dbe02b-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:16:59 GMT + - Wed, 04 Mar 2026 14:43:33 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Qe%2BHwjPzrj1nOhNW8CjCpLpVjm2kIbEhgiiQhxuiXBbWPq781nUXFXY%2BMiqpcv2Zzwk5B9q7uQE83ZOwKhKiKSJewLQrxxiBBgbi%2FE3z"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=cP0Ht3C1f61Nt3yLDC7zTtKg7o3695ByyUazhmJd4ViwALFYyVyF%2BztEQXtn%2Bv1pub6XBx6p6sXzA7SX0Bf0xP3BKhu6bnSyG0YFpx%2BWFl%2B86fBNOxzMnALj"}]}' Server: - cloudflare Transfer-Encoding: @@ -115,7 +115,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '139' + - '141' cross-origin-opener-policy: - same-origin referrer-policy: @@ -125,27 +125,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.022s + - 0.052s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '4' + - '931' x-ratelimit-burst-reset: - - '58' + - '15' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '37' + - '1999691' x-ratelimit-daily-reset: - - '50685' + - '84975' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '4' + - '931' x-ratelimit-reset: - - '58' + - '15' status: code: 200 message: OK diff --git a/tests/cassettes/TestOrganizationsIntegration.test_list_organizations b/tests/cassettes/TestOrganizationsIntegration.test_list_organizations index aab3e7a..3b4f9fb 100644 --- a/tests/cassettes/TestOrganizationsIntegration.test_list_organizations +++ b/tests/cassettes/TestOrganizationsIntegration.test_list_organizations @@ -16,27 +16,27 @@ interactions: uri: https://tango.makegov.com/api/organizations/?page=1&limit=10&shape=key%2Cfh_key%2Cname%2Clevel%2Ctype%2Cshort_name response: body: - string: '{"count":99298,"next":"http://tango.makegov.com/api/organizations/?limit=10&page=2&shape=key%2Cfh_key%2Cname%2Clevel%2Ctype%2Cshort_name","previous":null,"results":[{"key":"2278181c-046b-5265-b4e6-74444829a573","fh_key":100000000,"name":"DEPT - OF DEFENSE","level":1,"type":"DEPARTMENT","short_name":"DOD"},{"key":"b6a03424-0a76-52d5-bf1c-e376fa09fd5a","fh_key":100000026,"name":"US - ARMY CORPS OF ENGINEERS","level":3,"type":"MAJOR COMMAND","short_name":null},{"key":"b6eda190-2b32-561a-bd81-6f6d6f887c36","fh_key":100000064,"name":"NAVSUP","level":3,"type":"MAJOR - COMMAND","short_name":null},{"key":"4ec3225f-427a-5a36-9974-9684e5b273c3","fh_key":100000065,"name":"NAVSUP - OTHER HCA","level":4,"type":"SUB COMMAND","short_name":null},{"key":"a9e9125b-43b4-5588-a923-3773174c14b2","fh_key":100000066,"name":"MISC","level":5,"type":"SUB - COMMAND","short_name":null},{"key":"67214b4e-d8db-5ca8-a894-b4012f461c80","fh_key":100000072,"name":"227","level":3,"type":"OFFICE","short_name":null},{"key":"e4170507-1d6e-577f-8d03-53579a5fbc31","fh_key":100000078,"name":"BUMED","level":5,"type":"SUB - COMMAND","short_name":null},{"key":"a12a2243-17b7-5ef0-86e5-7866851b5ebe","fh_key":100000079,"name":"NAVY - MEDICINE WEST","level":6,"type":"SUB COMMAND","short_name":null},{"key":"abda4f61-f4b9-533d-a39b-91d01dc98f48","fh_key":100000098,"name":"259TH","level":3,"type":"OFFICE","short_name":null},{"key":"e93464a5-209a-5ed6-8289-1eee0e13c518","fh_key":100000099,"name":"236TH","level":3,"type":"OFFICE","short_name":null}]}' + string: '{"count":100170,"next":"https://tango.makegov.com/api/organizations/?limit=10&page=2&shape=key%2Cfh_key%2Cname%2Clevel%2Ctype%2Cshort_name","previous":null,"results":[{"key":"2278181c-046b-5265-b4e6-74444829a573","fh_key":"100000000","name":"DEPT + OF DEFENSE","level":1,"type":"DEPARTMENT","short_name":"DOD"},{"key":"b6a03424-0a76-52d5-bf1c-e376fa09fd5a","fh_key":"100000026","name":"US + ARMY CORPS OF ENGINEERS","level":3,"type":"MAJOR COMMAND","short_name":null},{"key":"b6eda190-2b32-561a-bd81-6f6d6f887c36","fh_key":"100000064","name":"NAVSUP","level":3,"type":"MAJOR + COMMAND","short_name":null},{"key":"4ec3225f-427a-5a36-9974-9684e5b273c3","fh_key":"100000065","name":"NAVSUP + OTHER HCA","level":4,"type":"SUB COMMAND","short_name":null},{"key":"a9e9125b-43b4-5588-a923-3773174c14b2","fh_key":"100000066","name":"MISC","level":5,"type":"SUB + COMMAND","short_name":null},{"key":"67214b4e-d8db-5ca8-a894-b4012f461c80","fh_key":"100000072","name":"227","level":3,"type":"OFFICE","short_name":null},{"key":"e4170507-1d6e-577f-8d03-53579a5fbc31","fh_key":"100000078","name":"BUMED","level":5,"type":"SUB + COMMAND","short_name":null},{"key":"a12a2243-17b7-5ef0-86e5-7866851b5ebe","fh_key":"100000079","name":"NAVY + MEDICINE WEST","level":6,"type":"SUB COMMAND","short_name":null},{"key":"abda4f61-f4b9-533d-a39b-91d01dc98f48","fh_key":"100000098","name":"259TH","level":3,"type":"OFFICE","short_name":null},{"key":"e93464a5-209a-5ed6-8289-1eee0e13c518","fh_key":"100000099","name":"236TH","level":3,"type":"OFFICE","short_name":null}]}' headers: CF-RAY: - - 9cc8ee2f08a3acca-MSP + - 9d71a762bb234c99-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:16:59 GMT + - Wed, 04 Mar 2026 14:43:33 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=a1ON%2FsH4OGLIY1ripc5UqFgYP8wnR1m6y%2FAR4zvzDyijoPd%2BF4xIYW0f039hVEZNgihhBV9zIHxnGqc3hhcJuhZspAJl%2FNUqigkEWx86"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=nFn%2FqQqEKB7BHQcX1NinkOURZMXF22zxzitYf%2BJjN7Ff8NcXkZ7rzYD%2BPdErI5Up8I%2BS0Pwd7S1Oea2OeRf3h9dB%2Bt1xvKir9RrMm1V4GrVVcgh7gj7oJ65e"}]}' Server: - cloudflare Transfer-Encoding: @@ -46,7 +46,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '1508' + - '1530' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +56,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.050s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - - '10' + - '1000' x-ratelimit-burst-remaining: - - '6' + - '933' x-ratelimit-burst-reset: - - '59' + - '15' x-ratelimit-daily-limit: - - '100' + - '2000000' x-ratelimit-daily-remaining: - - '39' + - '1999693' x-ratelimit-daily-reset: - - '50685' + - '84976' x-ratelimit-limit: - - '10' + - '1000' x-ratelimit-remaining: - - '6' + - '933' x-ratelimit-reset: - - '59' + - '15' status: code: 200 message: OK diff --git a/tests/cassettes/TestProductionSmokeWithCassettes.test_contract_cursor_pagination b/tests/cassettes/TestProductionSmokeWithCassettes.test_contract_cursor_pagination deleted file mode 100644 index a9323bf..0000000 --- a/tests/cassettes/TestProductionSmokeWithCassettes.test_contract_cursor_pagination +++ /dev/null @@ -1,169 +0,0 @@ -interactions: -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value - response: - body: - string: '{"count":82287104,"next":"http://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAxLTI1IiwgImMwNmNjMTdlLWVhYjEtNTcxYi04M2ZiLWU2YTg1OTlkNTBmZiJd","previous":null,"cursor":"WyIyMDI2LTAxLTI1IiwgImMwNmNjMTdlLWVhYjEtNTcxYi04M2ZiLWU2YTg1OTlkNTBmZiJd","previous_cursor":null,"results":[{"key":"CONT_AWD_15B51926F00000066_1540_36W79720D0001_3600","piid":"15B51926F00000066","award_date":"2026-01-25","description":"FCC - POLLOCK PHARMACY FRIDGE ITEMS","total_contract_value":163478.97,"recipient":{"display_name":"MCKESSON - CORPORATION"}},{"key":"CONT_AWD_36C26226N0339_3600_36C26025A0006_3600","piid":"36C26226N0339","award_date":"2026-01-25","description":"PATIENT - BED MAINTENANCE SERVICE CONTRACT","total_contract_value":368125.0,"recipient":{"display_name":"LE3 - LLC"}},{"key":"CONT_AWD_36C24526N0261_3600_36C24526D0024_3600","piid":"36C24526N0261","award_date":"2026-01-25","description":"IDIQ - FOR WATER INTRUSION REPAIRS","total_contract_value":89975.0,"recipient":{"display_name":"VENERGY - GROUP LLC"}},{"key":"CONT_AWD_15B51926F00000065_1540_36W79720D0001_3600","piid":"15B51926F00000065","award_date":"2026-01-25","description":"FCC - POLLOC EPCLUSA","total_contract_value":52148.25,"recipient":{"display_name":"MCKESSON - CORPORATION"}},{"key":"CONT_AWD_19JA8026P0451_1900_-NONE-_-NONE-","piid":"19JA8026P0451","award_date":"2026-01-25","description":"TOKYO-MINATO - WARD LAND PERMIT PAYMENT","total_contract_value":95432.2,"recipient":{"display_name":"MISCELLANEOUS - FOREIGN AWARDEES"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c428df59983114a-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 19:53:06 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=vSYACAc2%2Fn8TfRvdVOmJ4dIpaA2%2BsSAnQ%2Bg4FJvPPgC6p4SNKWLgQA84tK3BW9vNFzwkcDgJhx5D6ZBC%2Brtrrs3fylXLZVObYeDRGLAyXC7xQrzxBdHB3jqRfwQ%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '1620' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.041s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '29' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999959' - x-ratelimit-daily-reset: - - '61635' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '29' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/contracts/?limit=5&cursor=WyIyMDI2LTAxLTI1IiwgImMwNmNjMTdlLWVhYjEtNTcxYi04M2ZiLWU2YTg1OTlkNTBmZiJd&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value - response: - body: - string: '{"count":82287104,"next":"http://tango.makegov.com/api/contracts/?limit=5&cursor=WyIyMDI2LTAxLTI0IiwgImZmZjE2N2QxLTE5MjctNWEyOC05NmJmLTExYWM0MGRmN2M3OCJd&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value","previous":"http://tango.makegov.com/api/contracts/?limit=5&cursor=eyJ2IjogWyIyMDI2LTAxLTI1IiwgImI4ZTA4N2U2LTAyZWQtNTkyZS04Yzc3LWY1NjI5NzZiYTNkNyJdLCAiZCI6ICJwcmV2In0%3D&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value","cursor":"WyIyMDI2LTAxLTI0IiwgImZmZjE2N2QxLTE5MjctNWEyOC05NmJmLTExYWM0MGRmN2M3OCJd","previous_cursor":"eyJ2IjogWyIyMDI2LTAxLTI1IiwgImI4ZTA4N2U2LTAyZWQtNTkyZS04Yzc3LWY1NjI5NzZiYTNkNyJdLCAiZCI6ICJwcmV2In0=","results":[{"key":"CONT_AWD_36C78626N0155_3600_36C78624D0009_3600","piid":"36C78626N0155","award_date":"2026-01-25","description":"CONCRETE - GRAVE LINERS","total_contract_value":1980.0,"recipient":{"display_name":"WILBERT - FUNERAL SERVICES, INC."}},{"key":"CONT_AWD_15B51926F00000068_1540_36W79720D0001_3600","piid":"15B51926F00000068","award_date":"2026-01-25","description":"CONTROLLED - SUBS PO 3755","total_contract_value":5464.38,"recipient":{"display_name":"MCKESSON - CORPORATION"}},{"key":"CONT_AWD_36C24826P0388_3600_-NONE-_-NONE-","piid":"36C24826P0388","award_date":"2026-01-25","description":"IMPLANT - HIP","total_contract_value":172502.17,"recipient":{"display_name":"RED ONE - MEDICAL DEVICES LLC"}},{"key":"CONT_AWD_36C24826N0317_3600_36F79718D0437_3600","piid":"36C24826N0317","award_date":"2026-01-25","description":"WHEELCHAIR","total_contract_value":24108.3,"recipient":{"display_name":"PERMOBIL, - INC."}},{"key":"CONT_AWD_47QSSC26F37FG_4732_47QSEA21A0009_4732","piid":"47QSSC26F37FG","award_date":"2026-01-24","description":"BAG,PAPER - (GROCERS) 10-14 DAYS ARO","total_contract_value":71.26,"recipient":{"display_name":"CAPP - LLC"}}],"count_type":"approximate"}' - headers: - CF-RAY: - - 9c428df72b65114a-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 19:53:06 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=YKHmVJbthFs4ESHbRKzDkkxKlg3eIMXGgPIE8je1JNdfiadrunCjplqfRnFH0D3K8tXAppMr%2BHdzRSJQZ2xodA0b%2BbT0bCeTreQ8twYk7woQnlXcGCBg127TOhA%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '1894' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.051s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '29' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999958' - x-ratelimit-daily-reset: - - '61635' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '29' - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id b/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id index d17fcf5..be3e8e8 100644 --- a/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id +++ b/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id @@ -16,21 +16,21 @@ interactions: uri: https://tango.makegov.com/api/protests/?page=1&limit=1&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date response: body: - string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=1&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + string: '{"count":15006,"next":"https://tango.makegov.com/api/protests/?limit=1&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"}]}' headers: CF-RAY: - - 9d709a9d9c5da1f7-MSP + - 9d71a7896bca6a41-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:04 GMT + - Wed, 04 Mar 2026 14:43:39 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=e1RczGwx9pDiPSoXiTEdhZ2ik%2B2Ctbqv6RaPLqO7RJ2yh5zlzvaQgG1uEOWkbnK9CIupfv1rl0hv0HVbYkpUFyDkJjc4cT%2FG8P5SPu7OuB23UT45HDq5Y8sK"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=%2BQeg%2Ff4NEX8z7JxvNy7TQ18SIFC5xwi7lJUjGVCHh1sXV0aRP5zlVjuVs8RoRZA9jFo3kwKVYK6nloUEb7AXsCp2H%2FTFlZAZJoLsgiZsQkMD0FBWZoWEy1ez"}]}' Server: - cloudflare Transfer-Encoding: @@ -50,27 +50,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.069s + - 0.068s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '960' + - '917' x-ratelimit-burst-reset: - - '5' + - '9' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999689' + - '1999677' x-ratelimit-daily-reset: - - '4817' + - '84969' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '960' + - '917' x-ratelimit-reset: - - '5' + - '9' status: code: 200 message: OK @@ -95,17 +95,17 @@ interactions: Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"}' headers: CF-RAY: - - 9d709a9e9d51a1f7-MSP + - 9d71a78c48766a41-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:04 GMT + - Wed, 04 Mar 2026 14:43:39 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=eW5ZB9j%2FdigxrLpEqbZrUlKk%2BL%2FO%2F2aNooV6NR6Rut5TUOmo5Sg4xX8dULwX91Tb0tb85NyAvglrtEItTfUhb5KLQcS997pnveFYidbId2926o7MFOEMq1j5"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=wEJcd%2Fq2jIk357jrD%2BNpHpH6SrPiJAQo%2Bi5KJfla71JlSlTiRXAWUoj7Lx52JglFRzUUUWvCo8SCTKsPM%2B6a1v3CMY5gL8xBNglPm9LukqQ9yUJSnKV%2FX83z"}]}' Server: - cloudflare Transfer-Encoding: @@ -125,27 +125,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.339s + - 0.324s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '959' + - '916' x-ratelimit-burst-reset: - - '4' + - '9' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999688' + - '1999676' x-ratelimit-daily-reset: - - '4817' + - '84969' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '959' + - '916' x-ratelimit-reset: - - '4' + - '9' status: code: 200 message: OK diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter index 11c41fd..1b905d9 100644 --- a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter @@ -24,17 +24,17 @@ interactions: LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' headers: CF-RAY: - - 9d709a992d5fa200-MSP + - 9d71a77f9c0ba212-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:03 GMT + - Wed, 04 Mar 2026 14:43:37 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=9V8fHQxPctR1RRT3Vwf3dSKsS1dVpLjSHfep0hJXUjlGb7UPyH%2BlANiNmayi11byo19OqCwmnxeLetdnXNrm0rQq%2FUJoohHg1liKQwanR9OnDLnwzm3C5Gu7"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=JtCewO1180OawL4PrzjThW%2FOEmV%2F7WTZ3EyICX9FfI17J5j9YoeXmxjH9PS%2FDR2S4YQ%2BQnanKxrm5gf20ZPd9akTOIrPo%2FXKl0oV85bQK9Pg%2FaMggOliJLNz"}]}' Server: - cloudflare Transfer-Encoding: @@ -54,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.109s + - 0.096s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '963' + - '920' x-ratelimit-burst-reset: - - '5' + - '11' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999692' + - '1999680' x-ratelimit-daily-reset: - - '4818' + - '84971' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '963' + - '920' x-ratelimit-reset: - - '5' + - '11' status: code: 200 message: OK diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] index c1c3fdb..45860a4 100644 --- a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ctitle%2Csource_system%2Coutcome response: body: - string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ctitle%2Csource_system%2Coutcome","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","title":"Soft + string: '{"count":15006,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ctitle%2Csource_system%2Coutcome","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","title":"Soft Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","title":"Bellese Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","title":"JBW FEDITC JV, LLC ()","source_system":"gao","outcome":null},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","title":"AcmeSolv, @@ -24,17 +24,17 @@ interactions: LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed"}]}' headers: CF-RAY: - - 9d709a977ab75122-MSP + - 9d71a77c6e6ead1e-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:03 GMT + - Wed, 04 Mar 2026 14:43:37 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=UkpYbsRhNRorzfM2jOETRjbYR9%2Bt4%2FPmRQRbiKcSGYuz14RQWOVlJ0Nc%2Fjt3n2%2FXeKEYUnFkqQUTTnedH7BVE2fZkm4alsi%2B7DVj3Fd%2B1m96XQ2e1hN2qw9y"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=NdyJ1Tt7maPr8j3GmFctbOF5P%2BPdy%2B0SjB6MBE9cR%2F%2FMNMehIbis6MKeIoWyXtLbdZH3kFCEqZwYOnBJviEJbHavl3%2FIfpY4XwFAi1gGgoPBUms6V65H9t2E"}]}' Server: - cloudflare Transfer-Encoding: @@ -54,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.061s + - 0.069s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '964' + - '921' x-ratelimit-burst-reset: - - '6' + - '11' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999693' + - '1999681' x-ratelimit-daily-reset: - - '4818' + - '84972' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '964' + - '921' x-ratelimit-reset: - - '6' + - '11' status: code: 200 message: OK diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] index 0f9489a..d772dc3 100644 --- a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date response: body: - string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + string: '{"count":15006,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-01-23"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW FEDITC JV, LLC ()","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, @@ -24,17 +24,17 @@ interactions: LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' headers: CF-RAY: - - 9d709a927e0583b0-MSP + - 9d71a7722ef1ad26-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:02 GMT + - Wed, 04 Mar 2026 14:43:35 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=p63kygLbDUDlM5dUtqb%2FovxPW42408qgeE85KzdIiBw8xg2tVcuIxaZpHaL0Ys0uZf4siklgwPzQbkVwSmEJE2F4GQw7V7D2CubBRIRK1QIDWTZ7o0Vlr0E9"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=tz3YsQ%2B6obOMsYouUfBFC2OJFBpEYmrzqb7FhpvijLwLaXdiDJjwkXhtHTagd0j6sCYbRzMxcIVXZUEfGb3DgcW6X3tLmIDAOZCv8M5rPAJwdD1BxCgEFS2p"}]}' Server: - cloudflare Transfer-Encoding: @@ -54,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.072s + - 0.133s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '967' + - '924' x-ratelimit-burst-reset: - - '6' + - '13' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999696' + - '1999684' x-ratelimit-daily-reset: - - '4819' + - '84973' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '967' + - '924' x-ratelimit-reset: - - '6' + - '13' status: code: 200 message: OK diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] index 3433d3a..9d61bac 100644 --- a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date response: body: - string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + string: '{"count":15006,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-01-23"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW FEDITC JV, LLC ()","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, @@ -24,17 +24,17 @@ interactions: LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' headers: CF-RAY: - - 9d709a941c39a1bf-MSP + - 9d71a775da5aa213-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:02 GMT + - Wed, 04 Mar 2026 14:43:36 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ykDTiZWD8U90xS0GsmStOwBR3LS5CKncILzn7juD10na7vMgp%2FqFHDN5k%2FurRTGpIPlYPYlyapNTCZf4BeWXsxCqlYPH60THTUxYAZkhnak4%2BqUvliTE8ZQd"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=jbITKqB9i1Lm2ERzLWTs8Aog8ok%2B%2FV7BkmglIyZZGYM8QSItCTummxqxsOBRbptFVv0b6A0cPmQcwdOoxhDE4N%2Fbtq4OEiKV%2B74t2zwb7y2B1fHQX2th2RUM"}]}' Server: - cloudflare Transfer-Encoding: @@ -54,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.077s + - 0.069s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '966' + - '923' x-ratelimit-burst-reset: - - '6' + - '12' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999695' + - '1999683' x-ratelimit-daily-reset: - - '4819' + - '84973' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '966' + - '923' x-ratelimit-reset: - - '6' + - '12' status: code: 200 message: OK diff --git a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] index 784c7fd..19ee6e2 100644 --- a/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] +++ b/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Coutcome%2Cfiled_date%2Cdockets%28docket_number%2Cfiled_date%2Coutcome%29 response: body: - string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Coutcome%2Cfiled_date%2Cdockets%28docket_number%2Cfiled_date%2Coutcome%29","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + string: '{"count":15006,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Coutcome%2Cfiled_date%2Cdockets%28docket_number%2Cfiled_date%2Coutcome%29","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft Tech Consulting, Inc. (W911QX24R0005)","outcome":"Dismissed","filed_date":"2025-09-22","dockets":[{"docket_number":"b-423590.4","filed_date":"2025-09-22","outcome":"Dismissed"},{"docket_number":"b-423590.5","filed_date":"2025-09-22","outcome":"Dismissed"},{"docket_number":"b-423590.6","filed_date":"2026-02-13","outcome":null},{"docket_number":"b-423590.3","filed_date":"2025-06-09","outcome":"Dismissed"},{"docket_number":"b-423590.2","filed_date":"2025-06-03","outcome":"Dismissed"},{"docket_number":"b-423590.1","filed_date":"2025-06-02","outcome":"Dismissed"}]},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese Technologies, LLC (RFQ-250189J)","outcome":"Dismissed","filed_date":"2026-01-23","dockets":[{"docket_number":"b-423664.6","filed_date":"2026-01-23","outcome":"Dismissed"},{"docket_number":"b-423664.3","filed_date":"2025-07-17","outcome":"Dismissed"},{"docket_number":"b-423664.2","filed_date":"2025-06-23","outcome":"Dismissed"},{"docket_number":"b-423664.5","filed_date":"2025-08-22","outcome":"Dismissed"},{"docket_number":"b-423664.4","filed_date":"2025-08-04","outcome":"Dismissed"},{"docket_number":"b-423664.1","filed_date":"2025-06-23","outcome":"Dismissed"}]},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW FEDITC JV, LLC ()","outcome":null,"filed_date":"2026-03-03","dockets":[{"docket_number":"b-424191.3","filed_date":"2026-03-03","outcome":null},{"docket_number":"b-424191.2","filed_date":"2026-01-20","outcome":"Dismissed"},{"docket_number":"b-424191.1","filed_date":"2026-01-05","outcome":"Dismissed"}]},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, @@ -24,17 +24,17 @@ interactions: LLC (70B04C25R00000154)","outcome":"Dismissed","filed_date":"2026-02-17","dockets":[{"docket_number":"b-424272.1","filed_date":"2026-02-17","outcome":"Dismissed"}]}]}' headers: CF-RAY: - - 9d709a95ee2bacd5-MSP + - 9d71a7791884ad23-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:03 GMT + - Wed, 04 Mar 2026 14:43:36 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=4rWFmiDf6DERZE1iWVmPpi9p3GG1BZZw3j9RVza%2FcgHWQXQkwrdrmsTmFtVUe5pDhQQ8X%2FXigSb0j4k9eHW9gtrMdklMcgLhjlFXiBtHjrpVSZmyhliWq0M2"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=sAUrtss2Oezxr%2FHa2Amit6iSLzDnx9Y675Efwujc%2F2ox3g7ldgmjuZLDo3UmMN4pw7TsLZaEwTMjJ77n0J1uXzVltgEBL9iE5WwnSKqfl5VfpjJ%2BkndxU%2BQ%2F"}]}' Server: - cloudflare Transfer-Encoding: @@ -54,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.077s + - 0.062s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '965' + - '922' x-ratelimit-burst-reset: - - '6' + - '12' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999694' + - '1999682' x-ratelimit-daily-reset: - - '4818' + - '84972' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '965' + - '922' x-ratelimit-reset: - - '6' + - '12' status: code: 200 message: OK diff --git a/tests/cassettes/TestProtestsIntegration.test_protest_pagination b/tests/cassettes/TestProtestsIntegration.test_protest_pagination index 20d3958..9597da4 100644 --- a/tests/cassettes/TestProtestsIntegration.test_protest_pagination +++ b/tests/cassettes/TestProtestsIntegration.test_protest_pagination @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/protests/?page=1&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date response: body: - string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft + string: '{"count":15006,"next":"https://tango.makegov.com/api/protests/?limit=5&page=2&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":null,"results":[{"case_id":"af3327fd-df8c-55e3-a736-ffa4b4c6f9c0","case_number":"b-423590","title":"Soft Tech Consulting, Inc. (W911QX24R0005)","source_system":"gao","outcome":"Dismissed","filed_date":"2025-09-22"},{"case_id":"5e418646-19c0-580c-93a5-5e29b85cdfa5","case_number":"b-423664","title":"Bellese Technologies, LLC (RFQ-250189J)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-01-23"},{"case_id":"aafe0be7-1199-5ade-a436-b21db751fab4","case_number":"b-424191","title":"JBW FEDITC JV, LLC ()","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"16b98e60-31d3-51d3-a069-6abe798e50a8","case_number":"b-424266","title":"AcmeSolv, @@ -24,17 +24,17 @@ interactions: LLC (70B04C25R00000154)","source_system":"gao","outcome":"Dismissed","filed_date":"2026-02-17"}]}' headers: CF-RAY: - - 9d709a9b0ba44c9e-MSP + - 9d71a782dfae4cbc-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:03 GMT + - Wed, 04 Mar 2026 14:43:38 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=wLnwY5U%2BMBH1gHypHCAS7PgPiWQ4yBJz8LmWA%2BzAig1WFJW0G2Sq0QJZIJE223ZPVcTRXjekv5HvIHbyhyGBDntDrx2I0CZ083yW2h5UR76s3vUdS9byGHoT"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ni4WxTlarTPDDzVoMEXmEJoMnKr4LhGlkNsLBsYZaB3hwPUCRrdRqdvrHDOjKcON2fESI9JXLh4fzFexiRY%2BgV8zoqZ3MKmS9kvDsEWbN1aRoTBB3zmZR1TH"}]}' Server: - cloudflare Transfer-Encoding: @@ -54,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.063s + - 0.069s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '962' + - '919' x-ratelimit-burst-reset: - - '5' + - '10' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999691' + - '1999679' x-ratelimit-daily-reset: - - '4818' + - '84970' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '962' + - '919' x-ratelimit-reset: - - '5' + - '10' status: code: 200 message: OK @@ -95,7 +95,7 @@ interactions: uri: https://tango.makegov.com/api/protests/?page=2&limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date response: body: - string: '{"count":15580,"next":"https://tango.makegov.com/api/protests/?limit=5&page=3&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":"https://tango.makegov.com/api/protests/?limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","results":[{"case_id":"d73c4a61-6252-5e60-b1c6-7f807c96d247","case_number":"b-424295","title":"BDR + string: '{"count":15006,"next":"https://tango.makegov.com/api/protests/?limit=5&page=3&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","previous":"https://tango.makegov.com/api/protests/?limit=5&shape=case_id%2Ccase_number%2Ctitle%2Csource_system%2Coutcome%2Cfiled_date","results":[{"case_id":"d73c4a61-6252-5e60-b1c6-7f807c96d247","case_number":"b-424295","title":"BDR Solutions, LLC (HT001126RE011)","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"80024894-78f8-5f79-b6e7-86698022c634","case_number":"b-424296","title":"CGI Federal, Inc. (36C10B26Q0168)","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"4c12fb7a-f78a-54ac-9330-f41282b92adc","case_number":"b-424297","title":"Dispel LLC (FA489026QCN19)","source_system":"gao","outcome":null,"filed_date":"2026-03-03"},{"case_id":"e7255a8b-2ec2-5179-85cd-f50c532976aa","case_number":"b-424298","title":"Copper @@ -103,17 +103,17 @@ interactions: Analytics, LLC (36C26224Q1803)","source_system":"gao","outcome":null,"filed_date":"2026-03-02"}]}' headers: CF-RAY: - - 9d709a9c0c704c9e-MSP + - 9d71a785bc6f4cbc-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Wed, 04 Mar 2026 11:40:03 GMT + - Wed, 04 Mar 2026 14:43:38 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=T5V3ChuUKQYYBLSKLJzAkwxtACBThWK0tz%2FXKRkLiUEUYDLMTQbKZbLC5z6djmR5Z%2BMyW68eFkLZ8A29CR4U5I14P49J8jP1ZlMHx31CvDgl3h%2Fpm142o2YS"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=SoeljvcpXp5bDcb5YeLdnnUQg7959mOcyp0XBdpP%2BJVL0FOKolqJ9HviapoB6W0oOb447rZ7XVQVUH9pFgN5N%2Bpjtx7NntO5tbvK91nZwcR5P0RP3CEru3qZ"}]}' Server: - cloudflare Transfer-Encoding: @@ -133,27 +133,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.072s + - 0.074s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '961' + - '918' x-ratelimit-burst-reset: - - '5' + - '10' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999690' + - '1999678' x-ratelimit-daily-reset: - - '4817' + - '84970' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '961' + - '918' x-ratelimit-reset: - - '5' + - '10' status: code: 200 message: OK diff --git a/tests/cassettes/TestSubawardsIntegration.test_list_subawards b/tests/cassettes/TestSubawardsIntegration.test_list_subawards index 06695c0..a6f134e 100644 --- a/tests/cassettes/TestSubawardsIntegration.test_list_subawards +++ b/tests/cassettes/TestSubawardsIntegration.test_list_subawards @@ -16,39 +16,39 @@ interactions: uri: https://tango.makegov.com/api/subawards/?page=1&limit=10&shape=award_key%2Cprime_recipient%28uei%2Cdisplay_name%29%2Csubaward_recipient%28uei%2Cdisplay_name%29 response: body: - string: '{"count":3094272,"next":"http://tango.makegov.com/api/subawards/?limit=10&page=2&shape=award_key%2Cprime_recipient%28uei%2Cdisplay_name%29%2Csubaward_recipient%28uei%2Cdisplay_name%29","previous":null,"results":[{"award_key":"CONT_AWD_75P00123F37026_7570_HHSP233201500038I_7555","prime_recipient":{"uei":"YY46Q97AEZA8","display_name":"RAND - CORPORATION, THE"},"subaward_recipient":{"uei":"VNAYDLRGSKU3","display_name":"THE - URBAN INSTITUTE"}},{"award_key":"CONT_AWD_75P00123F37026_7570_HHSP233201500038I_7555","prime_recipient":{"uei":"YY46Q97AEZA8","display_name":"RAND - CORPORATION, THE"},"subaward_recipient":{"uei":"VNAYDLRGSKU3","display_name":"THE - URBAN INSTITUTE"}},{"award_key":"CONT_AWD_1333BJ24F00000002_1344_1333BJ21D00280002_1344","prime_recipient":{"uei":"VMRTJLWMQRH7","display_name":"HALVIK - CORP"},"subaward_recipient":{"uei":"MMLKHMM35UR8","display_name":"VARCONS - INC."}},{"award_key":"CONT_AWD_75N91025F00016_7529_75N91019D00024_7529","prime_recipient":{"uei":"HV8BH9BPG8Y9","display_name":"LEIDOS - BIOMEDICAL RESEARCH, INC."},"subaward_recipient":{"uei":"TN8FW9VP39W1","display_name":"RIGAKU - AMERICAS HOLDING, INC."}},{"award_key":"CONT_AWD_1333BJ24F00000002_1344_1333BJ21D00280002_1344","prime_recipient":{"uei":"VMRTJLWMQRH7","display_name":"HALVIK - CORP"},"subaward_recipient":{"uei":"XA1BEU918DZ3","display_name":"BNL, INC."}},{"award_key":"CONT_AWD_1333BJ24F00000002_1344_1333BJ21D00280002_1344","prime_recipient":{"uei":"VMRTJLWMQRH7","display_name":"HALVIK - CORP"},"subaward_recipient":{"uei":"LEPBQQF94NC5","display_name":"GOVERNMENT - NETWORK SOLUTIONS, INC."}},{"award_key":"CONT_AWD_80LARC23FA017_8000_80JSC023DA017_8000","prime_recipient":{"uei":"C6KAN1XKA915","display_name":"YULISTA - SOLUTIONS LLC"},"subaward_recipient":{"uei":"HZV7HJMAFC28","display_name":"HONEYWELL - INTERNATIONAL INC."}},{"award_key":"CONT_AWD_15F06724F0000945_1549_GS00F072CA_4732","prime_recipient":{"uei":"XYB4JU4PA6T4","display_name":"ECS - FEDERAL, LLC"},"subaward_recipient":{"uei":"NNB7LNYTJMN5","display_name":"MIRLOGIC - SOLUTIONS CORPORATION"}},{"award_key":"CONT_AWD_75N93024F00001_7529_75N93022D00007_7529","prime_recipient":{"uei":"SRG2J1WS9X63","display_name":"SRI - INTERNATIONAL"},"subaward_recipient":{"uei":"WMTJS85D4X19","display_name":"ANTECH - DIAGNOSTICS, INC"}},{"award_key":"CONT_AWD_70Z05326FENVI0002_7008_70Z05019DWESTON08_7008","prime_recipient":{"uei":"V8CUHEL7FQ33","display_name":"WESTON - SOLUTIONS, INC."},"subaward_recipient":{"uei":"HL9BANW2EUD4","display_name":"SGS - NORTH AMERICA INC."}}],"count_type":"approximate"}' + string: '{"count":3099042,"next":"https://tango.makegov.com/api/subawards/?limit=10&page=2&shape=award_key%2Cprime_recipient%28uei%2Cdisplay_name%29%2Csubaward_recipient%28uei%2Cdisplay_name%29","previous":null,"results":[{"award_key":"CONT_AWD_75P00123F37026_7570_HHSP233201500038I_7555","prime_recipient":{"display_name":"RAND + CORPORATION, THE","uei":"YY46Q97AEZA8"},"subaward_recipient":{"display_name":"THE + URBAN INSTITUTE","uei":"VNAYDLRGSKU3"}},{"award_key":"CONT_AWD_75P00123F37026_7570_HHSP233201500038I_7555","prime_recipient":{"display_name":"RAND + CORPORATION, THE","uei":"YY46Q97AEZA8"},"subaward_recipient":{"display_name":"THE + URBAN INSTITUTE","uei":"VNAYDLRGSKU3"}},{"award_key":"CONT_AWD_80JSC023FA143_8000_80JSC023DA017_8000","prime_recipient":{"display_name":"YULISTA + SOLUTIONS LLC","uei":"C6KAN1XKA915"},"subaward_recipient":{"display_name":"AVENGER + AEROSPACE SOLUTIONS INC","uei":"DCBJZ7CGV7Q1"}},{"award_key":"CONT_AWD_693JJ924F00015N_6940_693JJ319A000013_6925","prime_recipient":{"display_name":"HALVIK + CORP","uei":"VMRTJLWMQRH7"},"subaward_recipient":{"display_name":"INDEV LLC","uei":"KL5NHJFK1KT6"}},{"award_key":"CONT_AWD_80JSC023FA143_8000_80JSC023DA017_8000","prime_recipient":{"display_name":"YULISTA + SOLUTIONS LLC","uei":"C6KAN1XKA915"},"subaward_recipient":{"display_name":"WING + AVIATION CHARTER SERVICES LLC","uei":"ERK6KJGJC299"}},{"award_key":"CONT_AWD_80GSFC25CA034_8000_-NONE-_-NONE-","prime_recipient":{"display_name":"COLUMBUS + TECHNOLOGIES AND SERVICES, INC","uei":"TMF3UAC8J6M8"},"subaward_recipient":{"display_name":"COHERENT + NA, INC.","uei":"EB6LPDELZEW1"}},{"award_key":"CONT_AWD_47QFCA22F0056_4732_47QFCA22D0163_4732","prime_recipient":{"display_name":"MANTECH + ADVANCED SYSTEMS INTERNATIONAL, INC.","uei":"JY2BDT2K58Z6"},"subaward_recipient":{"display_name":"POLAND + - U.S. OPERATIONS SP. Z O.O.","uei":"YAY9F7CMM531"}},{"award_key":"CONT_AWD_47QFCA22F0056_4732_47QFCA22D0163_4732","prime_recipient":{"display_name":"MANTECH + ADVANCED SYSTEMS INTERNATIONAL, INC.","uei":"JY2BDT2K58Z6"},"subaward_recipient":{"display_name":"INCREDIBLE + SUPPLY LLC","uei":"Q3D4M62JNY93"}},{"award_key":"CONT_AWD_12445126C0001_12C2_-NONE-_-NONE-","prime_recipient":{"display_name":"KIEWIT + INFRASTRUCTURE SOUTH CO","uei":"MMG5U7ZS2DV5"},"subaward_recipient":{"display_name":"WOODWARD + ELECTRICAL CONTRACTORS, INC.","uei":"H1QHMPA1K4C4"}},{"award_key":"CONT_AWD_693JK423F95050N_6901_693JJ319A000013_6925","prime_recipient":{"display_name":"HALVIK + CORP","uei":"VMRTJLWMQRH7"},"subaward_recipient":{"display_name":"SWIFTFORE, + INC.","uei":"RTD1WA937QE7"}}],"count_type":"approximate"}' headers: CF-RAY: - - 9cc90bf23f9f4cb7-MSP + - 9d71a7951942a1dd-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Thu, 12 Feb 2026 03:37:18 GMT + - Wed, 04 Mar 2026 14:43:41 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=NSOWA%2FvWTY4xjLNbgxdMLbwSZkA73E2kl%2F1fvKdgum8Q1XwbpF%2BQ85pMYRFLYGlRtm%2FeFC19ZXpUjRqCfSTf549QAT1GRkpH2bOjpHPU"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=4Tk8AAkLjSUwSJV8DD8BiV4%2BRnSujrvNzcOiyeVm%2Fxf69%2F%2BTpAvi0NsVxrwhytI%2FS3yRgb8OUEEjVqDkthKKtlMp%2FWkpBWn6igWyEh4QgQBjK5XGTVAtfoHl"}]}' Server: - cloudflare Transfer-Encoding: @@ -58,7 +58,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '2534' + - '2589' cross-origin-opener-policy: - same-origin referrer-policy: @@ -68,27 +68,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.040s + - 0.056s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '999' + - '912' x-ratelimit-burst-reset: - - '59' + - '7' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999542' + - '1999672' x-ratelimit-daily-reset: - - '33783' + - '84968' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '999' + - '912' x-ratelimit-reset: - - '59' + - '7' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[custom-key,piid,description] b/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[custom-key,piid,description] index 20fac4f..80fec4b 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[custom-key,piid,description] +++ b/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[custom-key,piid,description] @@ -13,44 +13,38 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Cdescription + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Cdescription response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Cdescription&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA."},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","description":"TOPEKA - JOC"},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)"},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE"},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26."}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Cdescription&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]"},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","description":"ELSEVIER + PURE PLATFORM"},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26"},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","description":"CPT + - BLOOD CULTURE TESTING"},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26"}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c323d05a1eb-MSP + - 9d71a71c1f4ce892-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:58 GMT + - Wed, 04 Mar 2026 14:43:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5uxVVg8%2Fgo2RKUHXqNXo58f8pDjomP8wEn%2Fzd%2F%2BaffESZ%2B1T33UCt4CQy9INCCq2ac50Rjdr4ankGFi7jdBKfm3KdTBIouBoMrJ2a5NYuX5CtwEYyzXN%2Fagz9A%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=7LvTlnGLYZruCjgR44B1IQYu2yx9f2zsqWT7vmCD6TlQwsZX63EuBC9TkEhugh%2FFmydzidu00LNLWcj3f3MuDYnHupGD3E8yM6l37NZmBkY6hUpMTIMIWvLI"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1324' + - '1040' cross-origin-opener-policy: - same-origin referrer-policy: @@ -60,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.024s + - 0.027s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '975' + - '979' x-ratelimit-burst-reset: - - '54' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998668' + - '1999742' x-ratelimit-daily-reset: - - '87' + - '84987' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '975' + - '979' x-ratelimit-reset: - - '54' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] b/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] index 9fae3af..a813e67 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] +++ b/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] @@ -13,49 +13,43 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","award_date":"2025-11-15","description":"THE - PURPOSE OF THIS BLANKET PURCHASE AGREEMENT (BPA) CALL ORDER IS FOR LEVEL II - ARMED GUARD SERVICES IN SUPPORT OF DR4763-FL AND DR4734-FL. LAKE MARY AND - FORT MYERS FLORIDA.","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","award_date":"2025-11-15","description":"TOPEKA - JOC","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE CONSTRUCTION - GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","award_date":"2025-11-14","description":"TO - FUND THE RECOMPETE OF AN AUTOMATED HIRING SOLUTION (MONSTER)","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","award_date":"2025-11-14","description":"U.S. - DEPARTMENT OF ENERGY (DOE), OFFICE OF ENERGY EFFICIENCY AND RENEWABLE ENERGY - (EERE), STRATEGIC ENGAGEMENT AND OUTREACH SUPPORT SERVICES (SEOSS), EERE FRONT - OFFICE","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","award_date":"2025-11-14","description":"SOLARWINDS - SOFTWARE RENEWAL POP 11/15/25 - 11/15/26.","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Caward_date%2Crecipient%28display_name%29%2Cdescription%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","award_date":"2026-03-03","description":"PEOPLE + DESIGNS INC:1201783 [26-000077]","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","award_date":"2026-03-03","description":"ELSEVIER + PURE PLATFORM","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","award_date":"2026-03-03","description":"LABORATORY + SERVICES FOR I/M URANALYSIS FOR FY26","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","award_date":"2026-03-03","description":"CPT + - BLOOD CULTURE TESTING","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","award_date":"2026-03-03","description":"HYGIENE + ITEMS / STANDARD ISSUE - UNICOR\nMAR FY26","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c30fcf1a20f-MSP + - 9d71a71a3baa7816-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:58 GMT + - Wed, 04 Mar 2026 14:43:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Y4jFgNm%2BrBVchQ%2B8FfyeJXUfKAVyeqj4wGgLUDO%2BKG4qkU%2Fm8yeTuQaA7Kaecwz%2FoBKqAaknBIiUFX46OWwJEOTveBKFV%2F277CJp5Upk9byTEgDeG%2FFeq05nlQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=nTW0PzPwygSz46eqh7iOIMHUrVhugnh9gkbYaBRhfQmAzA8GQI6XE9gJAozn6fKsOM3ilzcdSdpb3125feiHEIFe6IKm9pKxD1djBjX%2FH3Tqtn7L2CW60kzz"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1974' + - '1649' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,27 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.021s + - 0.031s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '976' + - '978' x-ratelimit-burst-reset: - - '55' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998669' + - '1999743' x-ratelimit-daily-reset: - - '87' + - '84987' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '976' + - '978' x-ratelimit-reset: - - '55' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[ultra_minimal-key,piid,recipient(display_name),total_contract_value] b/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[ultra_minimal-key,piid,recipient(display_name),total_contract_value] index a8674d2..018d6bd 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[ultra_minimal-key,piid,recipient(display_name),total_contract_value] +++ b/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[ultra_minimal-key,piid,recipient(display_name),total_contract_value] @@ -13,40 +13,38 @@ interactions: user-agent: - python-httpx/0.28.1 method: GET - uri: https://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value + uri: https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value response: body: - string: '{"count":81180424,"next":"http://tango.makegov.com/api/contracts/?page=1&limit=5&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value&cursor=WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0%3D","cursor":"WyIyMDI1LTExLTE0IiwgIkNPTlRfQVdEXzg5MjQzMzI2RkZFNDAwNzM1Xzg5MDBfTk5HMTVTRDYxQl84MDAwIl0=","results":[{"key":"CONT_AWD_70FBR426F00000001_7022_70FBR423A00000007_7022","piid":"70FBR426F00000001","total_contract_value":1089550.8,"recipient":{"display_name":"REDCON - SOLUTIONS GROUP LLC"}},{"key":"CONT_AWD_36C25526N0084_3600_36C25525D0027_3600","piid":"36C25526N0084","total_contract_value":17351.59,"recipient":{"display_name":"ONSITE - CONSTRUCTION GROUP LLC"}},{"key":"CONT_AWD_9523ZY26C0001_9507_-NONE-_-NONE-","piid":"9523ZY26C0001","total_contract_value":1371325.32,"recipient":{"display_name":"MERLIN - INTERNATIONAL, INC."}},{"key":"CONT_AWD_89243426FEE000564_8900_89243423AEE000009_8900","piid":"89243426FEE000564","total_contract_value":4387892.04,"recipient":{"display_name":"RACK-WILDNER - & REESE, INC."}},{"key":"CONT_AWD_89243326FFE400735_8900_NNG15SD61B_8000","piid":"89243326FFE400735","total_contract_value":24732.97,"recipient":{"display_name":"REGENCY - CONSULTING INC"}}],"count_type":"approximate"}' + string: '{"count":82734960,"next":"https://tango.makegov.com/api/contracts/?limit=5&page=1&shape=key%2Cpiid%2Crecipient%28display_name%29%2Ctotal_contract_value&cursor=WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous":null,"cursor":"WyIyMDI2LTAzLTAzIiwgImZlMzAxYTBiLTM1NTMtNTE1MS04NjU5LTkxYmJlNmJhZDdhNSJd","previous_cursor":null,"results":[{"key":"CONT_AWD_75N98026P00064_7529_-NONE-_-NONE-","piid":"75N98026P00064","total_contract_value":122510.0,"recipient":{"display_name":"PEOPLE + DESIGNS INC"}},{"key":"CONT_AWD_49100426P0007_4900_-NONE-_-NONE-","piid":"49100426P0007","total_contract_value":945638.46,"recipient":{"display_name":"ELSEVIER + INC."}},{"key":"CONT_AWD_15B10926F00000059_1540_15BNAS24A00000044_1540","piid":"15B10926F00000059","total_contract_value":255.0,"recipient":{"display_name":"PHAMATECH, + INCORPORATED"}},{"key":"CONT_AWD_36C25226N0271_3600_36C25223A0024_3600","piid":"36C25226N0271","total_contract_value":36904.0,"recipient":{"display_name":"BIOMERIEUX + INC"}},{"key":"CONT_AWD_15B50526F00000100_1540_15BNAS25A00000158_1540","piid":"15B50526F00000100","total_contract_value":8865.0,"recipient":{"display_name":"Federal + Prison Industries, Inc"}}],"count_type":"approximate"}' headers: CF-RAY: - - 99f88c337a36511f-MSP + - 9d71a71d5ea3ad08-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:58 GMT + - Wed, 04 Mar 2026 14:43:21 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=EKmKNF4aOslaZUoec4ZQsduByxXRCJ6suAJGQpDyQoF2k4dPZiNeABJiOLeHh6Uc6%2B0rNy9h946Gt2BayoyLHw3ySY0rcpDOhja0CTM2fL73fJBAVwm9jDkjOQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ITnj7doI3xLAvvYUz6Z3hRJTU6v4PDH7ZqH9%2Bd0OgNVtRs6Ra%2BVvDSyEz%2FAUIP%2F2v0qwG6mOlj2KJVTVDH2yuSr8xSWDT1iO2ODojSF778MPsX1wkLEk0ict"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1267' + - '1224' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.023s + - 0.029s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '974' + - '978' x-ratelimit-burst-reset: - - '54' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998667' + - '1999741' x-ratelimit-daily-reset: - - '87' + - '84987' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '974' + - '978' x-ratelimit-reset: - - '54' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[minimal-uei,legal_business_name,cage_code,business_types] b/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[minimal-uei,legal_business_name,cage_code,business_types] index cba350c..f42ad5c 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[minimal-uei,legal_business_name,cage_code,business_types] +++ b/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[minimal-uei,legal_business_name,cage_code,business_types] @@ -16,56 +16,53 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"JS\",\"description\":\"Small Business Joint - Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned - Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled - Veteran Owned Business\"}]},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}]},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" Accreditation - Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}]},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" - Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College - Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private - University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}]},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" - BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit - Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}]}]}" + string: '{"count":1744479,"next":"https://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types","previous":null,"results":[{"uei":"ZM3PA9VDX2W1","legal_business_name":" + 106 Advisory Group L.L.C","cage_code":"18U69","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"QF","description":"Service Disabled Veteran Owned + Business"}]},{"uei":"QTY8TUJGMM34","legal_business_name":" ALLIANCE PRO GLOBAL + LLC","cage_code":"16CA8","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"JS","description":"Small Business Joint Venture"},{"code":"JV","description":"JV + Service-Disabled Veteran-Owned Business Joint Venture"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}]},{"uei":"NZQ7T5A89WP3","legal_business_name":" + ARMY LEGEND CLEANERS LLC","cage_code":"18LK9","business_types":[{"code":"23","description":"Minority + Owned Business"},{"code":"27","description":"Self Certified Small Disadvantaged + Business"},{"code":"2X","description":"For Profit Organization"},{"code":"A5","description":"Veteran + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"},{"code":"PI","description":"Hispanic American Owned"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}]},{"uei":"P6KLKJWXNGD5","legal_business_name":" + AccessIT Group, LLC.","cage_code":"3DCC1","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"F","description":"Business or Organization"}]},{"uei":"ER55X1L9EBZ7","legal_business_name":" + Andrews Consulting Services LLC","cage_code":"18P33","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"8W","description":"Woman Owned Small Business"},{"code":"A2","description":"Woman + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"}]}]}' headers: CF-RAY: - - 99f88c34b835a203-MSP + - 9d71a71f4ffda1df-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:59 GMT + - Wed, 04 Mar 2026 14:43:22 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=GIl9gU%2BTi9TWBFHudZHMaeoXfwklZdWMRhv3mzrKKphHXke6Wn6KZfT3WpoB9Kd54%2Fln7Hl%2B5osmViaacvxaSpgjht7bC9DrVzBzcSSleuWefVDTf%2BIk%2Br%2BDug%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Mz4iLCfj4sFeVPT9KzxH0bagGfoFk9TjU19jxcrrhoYijYA48vJc1etg%2BtTJHJv%2FaDrf7kjBX3OTL%2FjOryxpkD2z0V723Kc8k%2FLJcElgwuK3t2iu3He5GDMb"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '2331' + - '2337' cross-origin-opener-policy: - same-origin referrer-policy: @@ -75,27 +72,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.030s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '973' + - '979' x-ratelimit-burst-reset: - - '54' + - '1' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998666' + - '1999740' x-ratelimit-daily-reset: - - '87' + - '84986' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '973' + - '979' x-ratelimit-reset: - - '54' + - '1' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[with_address-uei,legal_business_name,cage_code,business_types,physical_address] b/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[with_address-uei,legal_business_name,cage_code,business_types,physical_address] index 098358e..a92328a 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[with_address-uei,legal_business_name,cage_code,business_types,physical_address] +++ b/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[with_address-uei,legal_business_name,cage_code,business_types,physical_address] @@ -16,61 +16,59 @@ interactions: uri: https://tango.makegov.com/api/entities/?page=1&limit=5&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address response: body: - string: "{\"count\":1700013,\"next\":\"http://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address\",\"previous\":null,\"results\":[{\"uei\":\"QTY8TUJGMM34\",\"legal_business_name\":\" - ALLIANCE PRO GLOBAL LLC\",\"cage_code\":\"16CA8\",\"business_types\":[{\"code\":\"27\",\"description\":\"Self - Certified Small Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For - Profit Organization\"},{\"code\":\"A5\",\"description\":\"Veteran Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"JS\",\"description\":\"Small Business Joint - Venture\"},{\"code\":\"JV\",\"description\":\"JV Service-Disabled Veteran-Owned - Business Joint Venture\"},{\"code\":\"QF\",\"description\":\"Service Disabled - Veteran Owned Business\"}],\"physical_address\":{\"city\":\"Owings Mills\",\"zip_code\":\"21117\",\"country_code\":\"USA\",\"address_line1\":\"11240 - Reisterstown Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"1965\",\"state_or_province_code\":\"MD\"}},{\"uei\":\"SS2CYQC6PLR6\",\"legal_business_name\":\" - AMBER RYAN\",\"cage_code\":\"16L33\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"8W\",\"description\":\"Woman - Owned Small Business\"},{\"code\":\"A2\",\"description\":\"Woman Owned Business\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"G9\",\"description\":\"Other Than One of the - Proceeding\"}],\"physical_address\":{\"city\":\"Salinas\",\"zip_code\":\"93908\",\"country_code\":\"USA\",\"address_line1\":\"22160 - Berry Dr\",\"address_line2\":\"\",\"zip_code_plus4\":\"8728\",\"state_or_province_code\":\"CA\"}},{\"uei\":\"QE4VZK8QZSV3\",\"legal_business_name\":\" - Accreditation Board of America, LLC\",\"cage_code\":\"86HD7\",\"business_types\":[{\"code\":\"23\",\"description\":\"Minority - Owned Business\"},{\"code\":\"27\",\"description\":\"Self Certified Small - Disadvantaged Business\"},{\"code\":\"2X\",\"description\":\"For Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"FR\",\"description\":\"Asian-Pacific American - Owned\"},{\"code\":\"LJ\",\"description\":\"Limited Liability Company\"}],\"physical_address\":{\"city\":\"Sterling\",\"zip_code\":\"20165\",\"country_code\":\"USA\",\"address_line1\":\"26 - Dorrell Ct\",\"address_line2\":\"\",\"zip_code_plus4\":\"5713\",\"state_or_province_code\":\"VA\"}},{\"uei\":\"FTK1UZGCZP39\",\"legal_business_name\":\" - Arthur V. Mauro Institute for Peace and Justice at St. Paul\u2019s College - Inc.\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"1R\",\"description\":\"Private - University or College\"},{\"code\":\"A8\",\"description\":\"Non-Profit Organization\"},{\"code\":\"F\",\"description\":\"Business - or Organization\"},{\"code\":\"M8\",\"description\":\"Educational Institution\"}],\"physical_address\":{\"city\":\"Winnipeg\",\"zip_code\":\"R3T - 2M6\",\"country_code\":\"CAN\",\"address_line1\":\"70 Dysart Rd\",\"address_line2\":\"\",\"zip_code_plus4\":\"\",\"state_or_province_code\":\"MB\"}},{\"uei\":\"X9E4EJ6SLCS5\",\"legal_business_name\":\" - BETHLEHEM BAPTIST CHURCH GASTONIA, NORTH CAROLINA\",\"cage_code\":\"\",\"business_types\":[{\"code\":\"A8\",\"description\":\"Non-Profit - Organization\"},{\"code\":\"F\",\"description\":\"Business or Organization\"}],\"physical_address\":{\"city\":\"GASTONIA\",\"zip_code\":\"28056\",\"country_code\":\"USA\",\"address_line1\":\"3100 - CITY CHURCH ST BLDG B\",\"address_line2\":\"\",\"zip_code_plus4\":\"0045\",\"state_or_province_code\":\"NC\"}}]}" + string: '{"count":1744479,"next":"https://tango.makegov.com/api/entities/?limit=5&page=2&shape=uei%2Clegal_business_name%2Ccage_code%2Cbusiness_types%2Cphysical_address","previous":null,"results":[{"uei":"ZM3PA9VDX2W1","legal_business_name":" + 106 Advisory Group L.L.C","cage_code":"18U69","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"QF","description":"Service Disabled Veteran Owned + Business"}],"physical_address":{"city":"Springfield","zip_code":"72157","country_code":"USA","address_line1":"32 + Reville Rd","address_line2":"","zip_code_plus4":"9515","state_or_province_code":"AR"}},{"uei":"QTY8TUJGMM34","legal_business_name":" + ALLIANCE PRO GLOBAL LLC","cage_code":"16CA8","business_types":[{"code":"27","description":"Self + Certified Small Disadvantaged Business"},{"code":"2X","description":"For Profit + Organization"},{"code":"A5","description":"Veteran Owned Business"},{"code":"F","description":"Business + or Organization"},{"code":"JS","description":"Small Business Joint Venture"},{"code":"JV","description":"JV + Service-Disabled Veteran-Owned Business Joint Venture"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}],"physical_address":{"city":"Owings Mills","zip_code":"21117","country_code":"USA","address_line1":"11240 + Reisterstown Rd","address_line2":"","zip_code_plus4":"1965","state_or_province_code":"MD"}},{"uei":"NZQ7T5A89WP3","legal_business_name":" + ARMY LEGEND CLEANERS LLC","cage_code":"18LK9","business_types":[{"code":"23","description":"Minority + Owned Business"},{"code":"27","description":"Self Certified Small Disadvantaged + Business"},{"code":"2X","description":"For Profit Organization"},{"code":"A5","description":"Veteran + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"},{"code":"PI","description":"Hispanic American Owned"},{"code":"QF","description":"Service + Disabled Veteran Owned Business"}],"physical_address":{"city":"Vine Grove","zip_code":"40175","country_code":"USA","address_line1":"65 + Shacklette Ct","address_line2":"","zip_code_plus4":"1081","state_or_province_code":"KY"}},{"uei":"P6KLKJWXNGD5","legal_business_name":" + AccessIT Group, LLC.","cage_code":"3DCC1","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"F","description":"Business or Organization"}],"physical_address":{"city":"King + of Prussia","zip_code":"19406","country_code":"USA","address_line1":"2000 + Valley Forge Cir Ste 106","address_line2":"","zip_code_plus4":"4526","state_or_province_code":"PA"}},{"uei":"ER55X1L9EBZ7","legal_business_name":" + Andrews Consulting Services LLC","cage_code":"18P33","business_types":[{"code":"2X","description":"For + Profit Organization"},{"code":"8W","description":"Woman Owned Small Business"},{"code":"A2","description":"Woman + Owned Business"},{"code":"F","description":"Business or Organization"},{"code":"LJ","description":"Limited + Liability Company"}],"physical_address":{"city":"Poteau","zip_code":"74953","country_code":"USA","address_line1":"22680 + Cabot Ln","address_line2":"","zip_code_plus4":"7825","state_or_province_code":"OK"}}]}' headers: CF-RAY: - - 99f88c362f684ca0-MSP + - 9d71a7208ab0ad23-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:00:59 GMT + - Wed, 04 Mar 2026 14:43:22 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Nj9ZPu5DmkU4E2%2FBeajEJ7BlHHUmFTmJMnTq3%2BxwN0m%2F9CdCI5CkE0T6J5MzrTfWhCdynTjDtYDRvNMSwvoBv8YTVVQpu7e4wbxxtnbdnf8QutRnBZ3Ec%2F5uUg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=YL0O59duQGqslyD2VMUy6T8%2BUuelE9HxuMT2UQnW5nzy1PTZaaqUMzI6BZYeMUQKKkcTqsY9QuWlmI5AV3F28LadFJw2SPFtitJWowfUL007h%2FWG%2FtqMlaTK"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '3292' + - '3318' cross-origin-opener-policy: - same-origin referrer-policy: @@ -80,27 +78,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.027s + - 0.015s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '972' + - '978' x-ratelimit-burst-reset: - - '54' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998665' + - '1999739' x-ratelimit-daily-reset: - - '87' + - '84986' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '972' + - '978' x-ratelimit-reset: - - '54' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] b/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] index 4ffffec..514995f 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] +++ b/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=5&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cposted_date%2Cnaics_code%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29 response: body: - string: "{\"count\":7975196,\"next\":\"http://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cposted_date%2Cnaics_code%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29\",\"previous\":null,\"results\":[{\"notice_id\":\"d5e7d516-698c-4b08-9d2d-f245e36627d6\",\"title\":\"Crawford + string: "{\"count\":8079823,\"next\":\"https://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cposted_date%2Cnaics_code%2Cset_aside%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29\",\"previous\":null,\"results\":[{\"notice_id\":\"d5e7d516-698c-4b08-9d2d-f245e36627d6\",\"title\":\"Crawford Modular Bunkhouse, Boise National Forest\",\"description\":\"

Amendment #2 is to remove any mention of Demolition work from the SOW. 
\\nNO demolition work will need to be completed.  
\\nAlso remove from @@ -309,29 +309,27 @@ interactions: https://sam.gov/wage-determination/1996-0223/63.

\\n\",\"solicitation_number\":\"SP450025R0004\",\"posted_date\":null,\"naics_code\":\"562211\",\"set_aside\":null,\"office\":null,\"place_of_performance\":{\"street_address\":null,\"state\":null,\"city\":null,\"zip\":null,\"country\":null}}]}" headers: CF-RAY: - - 99f88c6b38c3ad02-MSP + - 9d71a725edd928fe-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:07 GMT + - Wed, 04 Mar 2026 14:43:23 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=JVn1NvQJqNebWLowD6oCOpsryJmsR28O%2BRvDhGowHgx2FgbwT%2BkkCqrFbZXMyYsklsp3ihCMDXXNMNOVqEMm2w2a4%2FdUD0OnTayZpMbteEVQbQIN4%2FzwEecR5A%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=wPio4eyAVVHg8SEE0BIYeUlDI9nNt%2BRCtdJKLDUMuXnbOLy%2BwajoMc8iIT%2BlD9SGtBUG8bTZmoU5bBbEZGZrwTxv7T4b%2FT996Y8N%2F2mPLpkzyJsG4%2FJm9RLk"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '24469' + - '24470' cross-origin-opener-policy: - same-origin referrer-policy: @@ -341,27 +339,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.030s + - 0.017s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '968' + - '974' x-ratelimit-burst-reset: - - '45' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998661' + - '1999735' x-ratelimit-daily-reset: - - '78' + - '84985' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '968' + - '974' x-ratelimit-reset: - - '45' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[minimal-notice_id,title,solicitation_number,posted_date] b/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[minimal-notice_id,title,solicitation_number,posted_date] index 7dfa544..73e4c5f 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[minimal-notice_id,title,solicitation_number,posted_date] +++ b/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[minimal-notice_id,title,solicitation_number,posted_date] @@ -16,7 +16,7 @@ interactions: uri: https://tango.makegov.com/api/notices/?page=1&limit=5&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date response: body: - string: '{"count":7975196,"next":"http://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford + string: '{"count":8079823,"next":"https://tango.makegov.com/api/notices/?limit=5&page=2&shape=notice_id%2Ctitle%2Csolicitation_number%2Cposted_date","previous":null,"results":[{"notice_id":"d5e7d516-698c-4b08-9d2d-f245e36627d6","title":"Crawford Modular Bunkhouse, Boise National Forest","solicitation_number":"1240LT23R0034","posted_date":null},{"notice_id":"d5e94509-01a7-4e85-9308-274c30d6ba4e","title":"6835--Medical Air/Gas and Cylinder Rental","solicitation_number":"36C24623Q0127","posted_date":null},{"notice_id":"6642f6ba-caa4-4cb3-b2ba-3cd9dab3eeaa","title":"Z--GAOA - EMDDO ROADS AND REC SITE REPAIRS","solicitation_number":"140L3625B0002","posted_date":null},{"notice_id":"23f87f32-a95f-4d63-a750-229784139aa3","title":"Maintenance @@ -24,29 +24,27 @@ interactions: Waste Disposal San Diego","solicitation_number":"SP450025R0004","posted_date":null}]}' headers: CF-RAY: - - 99f88c69cd17a1e5-MSP + - 9d71a724b9e683b0-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:07 GMT + - Wed, 04 Mar 2026 14:43:23 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=dhGAO3q5SgkgC1nyJpguTEg2D63hiLtdDGSz4FBw6gnm1bRO%2BVJwqg4u7beTFDco%2BzppB4DUI83WGZCnFoNA2XMJ3cL9jAv7tpQ5mO6WNUoFvYPkUqRR7JLYgg%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Q7MG9NNZEZAFAPaN1uJUSZxfeHtBYAnNuVNkwqCcQOBj%2Fr8GtSWJvvq3YjocsuZYNh7lDT48eGouDktvnL0K5n24dw89sBv0N64OkiHBaBeQT4MWzzR5jJMS"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '983' + - '984' cross-origin-opener-policy: - same-origin referrer-policy: @@ -56,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.037s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '969' + - '975' x-ratelimit-burst-reset: - - '45' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998662' + - '1999736' x-ratelimit-daily-reset: - - '78' + - '84986' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '969' + - '975' x-ratelimit-reset: - - '45' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_aside,sam_url,office(-),place_of_performance(-)] b/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_aside,sam_url,office(-),place_of_performance(-)] index 4825854..dbf51b8 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_aside,sam_url,office(-),place_of_performance(-)] +++ b/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_aside,sam_url,office(-),place_of_performance(-)] @@ -16,83 +16,92 @@ interactions: uri: https://tango.makegov.com/api/opportunities/?page=1&limit=5&shape=opportunity_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cresponse_deadline%2Cfirst_notice_date%2Clast_notice_date%2Cactive%2Cnaics_code%2Cpsc_code%2Cset_aside%2Csam_url%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29 response: body: - string: '{"count":190142,"next":"http://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cresponse_deadline%2Cfirst_notice_date%2Clast_notice_date%2Cactive%2Cnaics_code%2Cpsc_code%2Cset_aside%2Csam_url%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29","previous":null,"results":[{"opportunity_id":"569a523c-2a60-4bfc-83df-45d926818a58","title":"17--NRP,DRAWBAR,TELESCO","description":"Proposed - procurement for NSN 1740016221432 NRP,DRAWBAR,TELESCO:\nLine 0001 Qty 30 UI - EA Deliver To: W1A8 DLA DISTRIBUTION By: 0090 DAYS ADO\nThe solicitation - is an RFQ and will be available at the link provided in this notice. Hard - copies of this solicitation are not available. Digitized drawings and Military - Specifications and Standards may be retrieved, or ordered, electronically.\nAll - responsible sources may submit a quote which, if timely received, shall be - considered.\nQuotes may be submitted electronically.\n","solicitation_number":"SPE8EF26Q0029","response_deadline":"2025-12-01T00:00:00+00:00","first_notice_date":"2025-11-16T11:09:42+00:00","last_notice_date":"2025-11-16T11:09:42+00:00","active":true,"naics_code":336212,"psc_code":"17","set_aside":"SBA","sam_url":"https://sam.gov/opp/569a523c2a604bfc83df45d926818a58/view","office":{"office_code":"SPE8EF","office_name":"DLA - TROOP SUPPORT","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"dd59e39b-b1c9-49c2-830c-abc66ec6511a","title":"30--CONNECTING - LINK,RIG","description":"Proposed procurement for NSN 3040015894908 CONNECTING - LINK,RIG:\nLine 0001 Qty 5 UI EA Deliver To: W1A8 DLA DIST SAN JOAQUIN - By: 0159 DAYS ADO\nApproved source is 0W6H8 3671240C01003-5.\nThe solicitation - is an RFQ and will be available at the link provided in this notice. Hard - copies of this solicitation are not available. Specifications, plans, or drawings - are not available.\nAll responsible sources may submit a quote which, if timely - received, shall be considered.\nQuotes must be submitted electronically.\n","solicitation_number":"SPE4A526T3439","response_deadline":"2025-11-24T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:55+00:00","last_notice_date":"2025-11-16T06:00:55+00:00","active":true,"naics_code":333613,"psc_code":"30","set_aside":null,"sam_url":"https://sam.gov/opp/dd59e39bb1c949c2830cabc66ec6511a/view","office":{"office_code":"SPE4A5","office_name":"DLA - AVIATION","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"743be37d-3b73-4f2c-857b-4c57d1ae8ff1","title":"31--CONE - AND ROLLERS,TA","description":"Proposed procurement for NSN 3110013984248 - CONE AND ROLLERS,TA:\nLine 0001 Qty 1336 UI EA Deliver To: DLA DISTRIBUTION - SAN DIEGO By: 0156 DAYS ADO\nThis is a source controlled drawing item. Approved - sources are 60038 28682-20629; 60038 9235611-163; 97153 9235611-163.\nThe - solicitation is an RFQ and will be available at the link provided in this - notice. Hard copies of this solicitation are not available. The items furnished - must meet the requirements of the drawing cited in the solicitation. Digitized - drawings and Military Specifications and Standards may be retrieved, or ordered, - electronically.\nAll responsible sources may submit a quote which, if timely - received, shall be considered.\nQuotes must be submitted electronically.\n","solicitation_number":"SPE4A626T047W","response_deadline":"2025-11-24T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:44+00:00","last_notice_date":"2025-11-16T06:00:44+00:00","active":true,"naics_code":332991,"psc_code":"31","set_aside":null,"sam_url":"https://sam.gov/opp/743be37d3b734f2c857b4c57d1ae8ff1/view","office":{"office_code":"SPE4A6","office_name":"DLA - AVIATION","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"f5ce34a6-fe69-465a-9a47-e3e445c63f55","title":"47--HOSE - ASSEMBLY,NONME","description":"Proposed procurement for NSN 4720002304007 - HOSE ASSEMBLY,NONME:\nLine 0001 Qty 17 UI EA Deliver To: DLA DISTRIBUTION - WARNER ROBINS By: 0080 DAYS ADO\nThis is a source controlled drawing item. Approved - sources are 78570 96320; 98441 A2148-1.\nThe solicitation is an RFQ and will - be available at the link provided in this notice. Hard copies of this solicitation - are not available. The items furnished must meet the requirements of the drawing - cited in the solicitation. Digitized drawings and Military Specifications - and Standards may be retrieved, or ordered, electronically.\nAll responsible - sources may submit a quote which, if timely received, shall be considered.\nQuotes - must be submitted electronically.\n","solicitation_number":"SPE7M426T2717","response_deadline":"2025-11-28T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:42+00:00","last_notice_date":"2025-11-16T06:00:42+00:00","active":true,"naics_code":332999,"psc_code":"47","set_aside":"SBA","sam_url":"https://sam.gov/opp/f5ce34a6fe69465a9a47e3e445c63f55/view","office":{"office_code":"SPE7M4","office_name":"DLA - LAND AND MARITIME","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}},{"opportunity_id":"f967a1d6-d155-4e10-a193-7cf1e4e464ac","title":"66--DRAFTING - MACHINE","description":"Proposed procurement for NSN 6675001740508 DRAFTING - MACHINE:\nLine 0001 Qty 75 UI EA Deliver To: W1A8 DLA DISTRIBUTION By: - 0065 DAYS ADO\nApproved source is 1GRU3 3300NP-16.\nThe solicitation is an - RFQ and will be available at the link provided in this notice. Hard copies - of this solicitation are not available. Specifications, plans, or drawings - are not available.\nAll responsible sources may submit a quote which, if timely - received, shall be considered.\nQuotes must be submitted electronically.\n","solicitation_number":"SPE8E926T0681","response_deadline":"2025-11-28T00:00:00+00:00","first_notice_date":"2025-11-16T06:00:40+00:00","last_notice_date":"2025-11-16T06:00:40+00:00","active":true,"naics_code":321999,"psc_code":"66","set_aside":null,"sam_url":"https://sam.gov/opp/f967a1d6d1554e10a1937cf1e4e464ac/view","office":{"office_code":"SPE8E9","office_name":"DLA - TROOP SUPPORT","agency_code":"97AS","agency_name":"Defense Logistics Agency","department_code":97,"department_name":"Department - of Defense"},"place_of_performance":{"zip":null,"city":null,"state":null,"country":null,"street_address":null}}]}' + string: '{"count":30155,"next":"https://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Cdescription%2Csolicitation_number%2Cresponse_deadline%2Cfirst_notice_date%2Clast_notice_date%2Cactive%2Cnaics_code%2Cpsc_code%2Cset_aside%2Csam_url%2Coffice%28%2A%29%2Cplace_of_performance%28%2A%29","previous":null,"results":[{"opportunity_id":"5d5dbbec-35b9-4fd3-b887-8b2d094d8d93","title":"U.S. + Embassy Antananarivo: Central Alarm Monitoring Services","description":"

The + vendor shall provide

\n\n
    \n\t
  1. Alarm installation and maintenance + services:\n\t
      \n\t\t
    1. One quote, for service provider owned alarm systems + completely provided and maintained from the service provider; or
    2. \n\t\t
    3. One + quote, for service provider owned communications modules to be installed in + existing AES 5100 and 6100 systems. (This communications module must be able + to communicate with service providers monitoring center.
    4. \n\t
    \n\t
  2. \n\t
  3. Provision + of Central Alarm Monitoring System (CAMS) Monitoring Services. This is defined + as an alarm system that also makes the intrusion known at another location + by means of an automatic telephone dialer, wired connection or by radio transmission + to a central monitoring location. CAMS must be monitored 24/7 and have a 24/7 + dedicated response, i.e. Local Guard Mobile Patrol or a commercial security + response company.  The response service does not need to be armed with + firearms.
  4. \n
\n","solicitation_number":"PR15858949","response_deadline":"2026-04-17T13:00:00+00:00","first_notice_date":"2026-03-04T07:19:42+00:00","last_notice_date":"2026-03-04T07:19:42+00:00","active":true,"naics_code":561612,"psc_code":"K063","set_aside":null,"sam_url":"https://sam.gov/opp/5d5dbbec35b94fd3b8878b2d094d8d93/view","office":{"office_code":"19MA10","office_name":"U.S. + EMBASSY ANTANANARIVO","agency_code":"1900","agency_name":"Department of State","department_code":19,"department_name":"Department + of State"},"place_of_performance":{"zip":"101","city":"Antananarivo","state":"MG-T","country":"MDG","street_address":null}},{"opportunity_id":"e863b8c2-7509-4e37-9b2f-61c2a05a286c","title":"Purchase, + 20Feet Conex Box","description":"

\n\n

To purchase six (6) each 20ft + conex boxes that are manufactured to comply with ISO 668 standard.

\n\n

Remarks: + Rear and Front double-sided door type Exterior color RAL6003 Olive Green is + preferable.

\n\n

WARRANTY: Manufacture Warranty required at delivery.

\n","solicitation_number":"N6264926QE011","response_deadline":"2026-03-10T01:00:00+00:00","first_notice_date":"2026-03-04T01:29:49+00:00","last_notice_date":"2026-03-04T06:01:26+00:00","active":true,"naics_code":332439,"psc_code":"8150","set_aside":"NONE","sam_url":"https://sam.gov/opp/30ed251d67d749ad904e3398f4581cb2/view","office":{"office_code":"N62649","office_name":"NAVSUP + FLT LOG CTR YOKOSUKA","agency_code":"1700","agency_name":"Department of the + Navy","department_code":97,"department_name":"Department of Defense"},"place_of_performance":{"zip":null,"city":"Sasebo","state":"JP-42","country":"JPN","street_address":null}},{"opportunity_id":"3cf28036-c04c-4e3a-a0df-035b8761779e","title":"Purchase, + Install, Removal, On-site Training of 1ea Band Saw","description":"

This + is a Presolicitation Notice issued in accordance with (IAW) Revolutionary + FAR Overhaul (RFO) FAR 5.1 and 12.201-1(c)(2).

\n\n

THIS NOTICE IS NOT + A REQUEST FOR COMPETITIVE PROPOSALS NOR QUOTATIONS.

\n\n

The Government + intends to solicit this requirement directly from suppliers IAW RFO FAR 12.201-1(c)(2) + for firm-fixed price contract for purchase, installation, removal/disposal + of existing Band Saw, and on-site training in Japanese of 1ea brand new Band + Saw at Sagami General Depot, Kanagawa Prefecture, Japan. 
\nAnticipated + award date is around 15 May 2026 (subject to change).

\n\n

Agency: Department + of the Air Force
\nOffice: 374th Contracting Squadron, Bldg 620, Yokota + Air Base, Fussa-shi, Tokyo, Japan
\nSet-aside: N/A
\nNAICS Code: + 221310

\n\n

Description: Purchase, Install, Removal, On-site Training + of 1ea Band Saw, Amada HK400 or equal at Sagami General Depot, JAPAN

\n\n

Note: + This project will be performed in its entirety in the country of Japan. The + successful offeror must have valid licenses to perform work in the country + of Japan.
\n 

\n","solicitation_number":"FA520926Q0019","response_deadline":"2026-03-19T05:00:00+00:00","first_notice_date":"2026-03-04T05:36:11+00:00","last_notice_date":"2026-03-04T05:36:11+00:00","active":true,"naics_code":333248,"psc_code":"3405","set_aside":"NONE","sam_url":"https://sam.gov/opp/3cf28036c04c4e3aa0df035b8761779e/view","office":{"office_code":"FA5209","office_name":"FA5209 374 + CONS PK","agency_code":"5700","agency_name":"Department of the Air Force","department_code":97,"department_name":"Department + of Defense"},"place_of_performance":{"zip":null,"city":"Sagamihara","state":"JP-14","country":"JPN","street_address":null}},{"opportunity_id":"e67a42c5-e7bc-42ea-948b-e55560208455","title":"Portable + Toilets in support of Friendship Day FY26","description":"

The contractor + shall provide portable toilets, handicap accessible portable toilets, and + hand washing stations for visitors to the Iwakuni Friendship Day Air Show + on May 02 – May 03, 2026, with no additional cost to the U.S. Government. + The contractor will, without any additional expense to the U.S. Government, + obtain necessary licenses and permits applicable to execute the requirement + .

\n\n

\n","solicitation_number":"M6740026Q0015","response_deadline":"2026-03-12T23:00:00+00:00","first_notice_date":"2026-02-20T05:16:29+00:00","last_notice_date":"2026-03-04T05:07:12+00:00","active":true,"naics_code":532411,"psc_code":"W085","set_aside":"NONE","sam_url":"https://sam.gov/opp/c17e6afedae846ed9d1965af77202a3b/view","office":{"office_code":"M67400","office_name":"COMMANDING + OFFICER","agency_code":"1700","agency_name":"Department of the Navy","department_code":97,"department_name":"Department + of Defense"},"place_of_performance":{"zip":null,"city":"Iwakuni","state":"JP-35","country":"JPN","street_address":null}},{"opportunity_id":"0fe3adb2-602d-4737-876d-49174eab17ec","title":"Sources + Sought for Starlink Mini Terminals and accessories","description":"
    \n\t
  1. The + Contractor shall furnish and deliver items listed below to the U.S. Embassy + Ulaanbaatar, Mongolia in accordance with the specifications and terms and + conditions set forth herein. The materials and equipment requested are meant + to provide medical clinics in Omnogobi, Dornogobi, and Dundgovi Province, + Mongolia with Starlink Mini Terminals needed to provide internet connectivity + to ambulances during medical emergencies and increase standard of medical + care in a prehospital setting.  
  2. \n
\n\n

List of Items to be + Procured 70 total units:

\n\n

Starlink Mini Terminals

\n\n

Starlink + Mini Magnetic Mount

\n\n

12V Cigarette lighter adapter, 10ft braided

\n\n

Starlink + Mini Protective cover     

\n","solicitation_number":"19MG1026Q0004","response_deadline":"2026-03-19T08:00:00+00:00","first_notice_date":"2026-03-04T04:27:00+00:00","last_notice_date":"2026-03-04T04:27:00+00:00","active":true,"naics_code":null,"psc_code":"DG11","set_aside":"NONE","sam_url":"https://sam.gov/opp/0fe3adb2602d4737876d49174eab17ec/view","office":{"office_code":"19MG10","office_name":"U.S. + EMBASSY ULAANBAATAR","agency_code":"1900","agency_name":"Department of State","department_code":19,"department_name":"Department + of State"},"place_of_performance":{"zip":null,"city":"ulaanbaatar","state":"MN-1","country":"MNG","street_address":null}}]}' headers: CF-RAY: - - 99f88c65be9dad0b-MSP + - 9d71a72378c6511a-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:07 GMT + - Wed, 04 Mar 2026 14:43:22 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=WRhOdUlaWvcgwyoI50Mw7Fov1fImYrSp3yYyVv93j1nrE6xb8vkRPd5f4PiXYap4rPyRtwKEax0dgE7Jn3WGrLGPyRIfxewC8guqW4IqDjTv88iEOZiXL1%2FE5g%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CU7MEgoPSMVZax3w6IPg0gMeSLOvmp6zueiS76LVUVGGX8eXeoEgYOvE5OYaK1HWWFkb1GwJN%2Fs3BgrmEFGwyXAOHa4kiUIWIteq0V38Oa7h9A6Q5JWBm0K0"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '6941' + - '7739' cross-origin-opener-policy: - same-origin referrer-policy: @@ -102,27 +111,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.481s + - 0.017s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '970' + - '976' x-ratelimit-burst-reset: - - '46' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998663' + - '1999737' x-ratelimit-daily-reset: - - '79' + - '84986' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '970' + - '976' x-ratelimit-reset: - - '46' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[minimal-opportunity_id,title,solicitation_number,response_deadline,active] b/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[minimal-opportunity_id,title,solicitation_number,response_deadline,active] index 00b9f8b..504cb93 100644 --- a/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[minimal-opportunity_id,title,solicitation_number,response_deadline,active] +++ b/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[minimal-opportunity_id,title,solicitation_number,response_deadline,active] @@ -16,36 +16,35 @@ interactions: uri: https://tango.makegov.com/api/opportunities/?page=1&limit=5&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive response: body: - string: '{"count":190142,"next":"http://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"569a523c-2a60-4bfc-83df-45d926818a58","title":"17--NRP,DRAWBAR,TELESCO","solicitation_number":"SPE8EF26Q0029","response_deadline":"2025-12-01T00:00:00+00:00","active":true},{"opportunity_id":"dd59e39b-b1c9-49c2-830c-abc66ec6511a","title":"30--CONNECTING - LINK,RIG","solicitation_number":"SPE4A526T3439","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"743be37d-3b73-4f2c-857b-4c57d1ae8ff1","title":"31--CONE - AND ROLLERS,TA","solicitation_number":"SPE4A626T047W","response_deadline":"2025-11-24T00:00:00+00:00","active":true},{"opportunity_id":"f5ce34a6-fe69-465a-9a47-e3e445c63f55","title":"47--HOSE - ASSEMBLY,NONME","solicitation_number":"SPE7M426T2717","response_deadline":"2025-11-28T00:00:00+00:00","active":true},{"opportunity_id":"f967a1d6-d155-4e10-a193-7cf1e4e464ac","title":"66--DRAFTING - MACHINE","solicitation_number":"SPE8E926T0681","response_deadline":"2025-11-28T00:00:00+00:00","active":true}]}' + string: '{"count":30155,"next":"https://tango.makegov.com/api/opportunities/?limit=5&page=2&shape=opportunity_id%2Ctitle%2Csolicitation_number%2Cresponse_deadline%2Cactive","previous":null,"results":[{"opportunity_id":"5d5dbbec-35b9-4fd3-b887-8b2d094d8d93","title":"U.S. + Embassy Antananarivo: Central Alarm Monitoring Services","solicitation_number":"PR15858949","response_deadline":"2026-04-17T13:00:00+00:00","active":true},{"opportunity_id":"e863b8c2-7509-4e37-9b2f-61c2a05a286c","title":"Purchase, + 20Feet Conex Box","solicitation_number":"N6264926QE011","response_deadline":"2026-03-10T01:00:00+00:00","active":true},{"opportunity_id":"3cf28036-c04c-4e3a-a0df-035b8761779e","title":"Purchase, + Install, Removal, On-site Training of 1ea Band Saw","solicitation_number":"FA520926Q0019","response_deadline":"2026-03-19T05:00:00+00:00","active":true},{"opportunity_id":"e67a42c5-e7bc-42ea-948b-e55560208455","title":"Portable + Toilets in support of Friendship Day FY26","solicitation_number":"M6740026Q0015","response_deadline":"2026-03-12T23:00:00+00:00","active":true},{"opportunity_id":"0fe3adb2-602d-4737-876d-49174eab17ec","title":"Sources + Sought for Starlink Mini Terminals and accessories","solicitation_number":"19MG1026Q0004","response_deadline":"2026-03-19T08:00:00+00:00","active":true}]}' headers: CF-RAY: - - 99f88c377eda5107-MSP + - 9d71a7222f6e7816-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Sun, 16 Nov 2025 17:01:06 GMT + - Wed, 04 Mar 2026 14:43:22 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=qexlKzjP6hPbecEtMXzp%2BeHlof5kpNcOu8bxuAarQXtdYgZsWt7cTQf7TG%2F8BqF%2FS%2B7KRuVkKSETBjWgHmDaWc5RWLI9stLw5WzE9k5QRV5meKIPYhJQvGnTVQ%3D%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=uqV4EQFQDGxqJsWumNPNJtKAs1RypLi9XdTP8ibOec%2FML9t02CenGR4Jctm%2B7OeIK1pGUfN6WK9ZkiaMdXRLlKD7Nn2SGCYU%2BPX6o95g75Zy0wfaBULXYewv"}]}' Server: - cloudflare Transfer-Encoding: - chunked allow: - GET, HEAD, OPTIONS - alt-svc: - - h3=":443"; ma=86400 cf-cache-status: - DYNAMIC content-length: - - '1149' + - '1288' cross-origin-opener-policy: - same-origin referrer-policy: @@ -55,27 +54,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 7.207s + - 0.023s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '971' + - '977' x-ratelimit-burst-reset: - - '46' + - '0' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1998664' + - '1999738' x-ratelimit-daily-reset: - - '79' + - '84986' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '971' + - '977' x-ratelimit-reset: - - '46' + - '0' status: code: 200 message: OK diff --git a/tests/cassettes/TestVehiclesIntegration.test_get_vehicle_supports_joiner_and_flat_lists b/tests/cassettes/TestVehiclesIntegration.test_get_vehicle_supports_joiner_and_flat_lists index 1e09899..4c516e8 100644 --- a/tests/cassettes/TestVehiclesIntegration.test_get_vehicle_supports_joiner_and_flat_lists +++ b/tests/cassettes/TestVehiclesIntegration.test_get_vehicle_supports_joiner_and_flat_lists @@ -16,21 +16,21 @@ interactions: uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date response: body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 + string: '{"count":5874,"next":"https://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' headers: CF-RAY: - - 9c42ec0a3cb7224f-ORD + - 9d71a79d1e69ace2-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 20:57:19 GMT + - Wed, 04 Mar 2026 14:43:42 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=HXfPsvGuwYgaEvjM6LEVD4ywddD23bqw%2FPJ%2BQikU39eljpq0RogUqhDJ7%2F6IaljAtBMoD%2B2r5q6T9v3xTr3K20i85A54plGF3Un6aEKTn3w%2FEIP%2Blwf9qFaa9XE%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=foISsWd3o4Crwk58iKLLuBVkQFtC11yIJkhkCK4vC%2F0w4I28Kbk4j%2FWdF2Z4gVU3QAwqVjUkR9L3KC6Sa4dIYTFIEYgsuvxpb5FBysskgBHHwX4lRUqueUSX"}]}' Server: - cloudflare Transfer-Encoding: @@ -40,7 +40,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '667' + - '668' cross-origin-opener-policy: - same-origin referrer-policy: @@ -50,1227 +50,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.037s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '998' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999877' - x-ratelimit-daily-reset: - - '57781' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '998' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c42ec0beef1224f-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 20:57:20 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=d6TreFmTx61O7ZQoUiHrnk5al%2BrjBGA9bAEbQieoIJsgI1vhvsK19J12MY802Waz8cBf6SxYpjMn0bC01MUNnfabh1N8wSRzOkpOq5YIKfI8AH5AIU4lZN7x9f4%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.023s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999876' - x-ratelimit-daily-reset: - - '57781' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42efac4a00a212-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 20:59:48 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CZdsKaBBxU7yY3SxrpgbrTkDJe9RelZSrbB%2BNNwfpiLOwr079Bvd1oPir5LqE3DT0XQWMF%2FfIweiyvLa2dc0BzfZx4w9yq7qBlUhuStPSGRozFdNUYYArMnX"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.056s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '998' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999869' - x-ratelimit-daily-reset: - - '57633' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '998' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c42efad4c65a212-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 20:59:48 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=65YwFfVU12bsaheKRWYhBRQsnBKkOeo2C9vi99mNcmI1NBK1SljqT1hIVHm9yFPSrj8XbwPuobxMwzPSjArnUv%2FwLVkIT3k5zh9LdObTskQgS4SoobzBnocT"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.027s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999868' - x-ratelimit-daily-reset: - - '57633' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42f550b9a78af6-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:03:39 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=YdWUJ6deWMGXKJzG6kjRns9%2FU82%2FZcuG1%2BADpjfJ7zbnKOh8kU7lCCEZELwytVPEUBg85tilR8sdHeUtZmWqEk26FDwdK2RWcJPjCIY3af8S6xRjtCzg1x5nuYg%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.023s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '46' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999857' - x-ratelimit-daily-reset: - - '57402' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '46' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c42f5518c7a8af6-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:03:39 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=HMob1Faw4y8K4NzsVfmKfs19lBHOYinELOHoOFq1PQniYm7J9Nch5GduTaqsYizp5MWBnW1ULmM7G3hTHDDF6mscsqzFyQlS5Ulydav91zOP1xDydE9bWQ%2BXNrM%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.043s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '46' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999856' - x-ratelimit-daily-reset: - - '57401' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '46' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42f6e0697aac09-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:04:43 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=72Ri0kMedyt2Of4FnpqpswddPJrN4uMuZTQj86iQSTWpz2AHzmFW9ChFIZf%2B0BCZXBqAhPspbdVn03xjC858scroKVtmR7KNot2mu5WyBpwaWDx%2BVKpXRNtVvho%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.021s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '3' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999846' - x-ratelimit-daily-reset: - - '57338' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '3' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c42f6e12a6fac09-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:04:43 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=9nXyZtGyy4srDTnrg%2FZS%2FWfpliFDs4mlieyg2AnMEJKnG%2Bx7BtEAgDSTGl9nnkKM9ifFJlbt41GzwMBLKKfd%2BPk5AugsoO%2BTayCW%2Fg0k3Y7De7gKTv%2BKIPSMfYw%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.039s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '994' - x-ratelimit-burst-reset: - - '3' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999845' - x-ratelimit-daily-reset: - - '57338' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '994' - x-ratelimit-reset: - - '3' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42f9f0a86c76ed-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:06:49 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=goD1aLR%2F6dnH9%2FeQGmEVMp4rsf8%2Fnwh4gwb6WnE2R5mGo9VEx1qlvUwomzfcSKAqgaVtO31qyutRMoBUuwFdMzFiNKAjtiVY2h5l3s7PXBsoTXcGr5oY3cx0wps%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.023s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '998' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999837' - x-ratelimit-daily-reset: - - '57212' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '998' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c42f9f1ab8276ed-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:06:49 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=4Fmbowx3b7Qa3dYH%2FvrSQyEjUNrTAgBoPfJyVmhr%2F%2FwPoIgLNO2OBTjkzbv6MTuV7%2FI8Fx4gI9ka7BryGk9IScUBNiPOZvnVvo1jg%2BHq0qqUDDxbdn8do65LPp8%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.036s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999836' - x-ratelimit-daily-reset: - - '57212' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42fef0ffaf10ae-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:14 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=kljMYMR80BMglE7VRjIR3pZ8fntjEhJUuMTyD%2BxZSRRO49Mgj0rAgB%2BpAH%2FyoJYYXYerJh3VDgj3hV3xQdpY9keUrQ0wscsrBkCnKXSRrPdtNixEEmLlI%2BVE73k%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.030s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '998' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999829' - x-ratelimit-daily-reset: - - '57007' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '998' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c42fef2499a10ae-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:14 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=FRDlWebxQnLdIxhIkCcRxCheWWTqyQMcdIzSjoG62i7QDk2RyN%2BghxG7Ez6o%2FKxuCm6SEgdrJdghiwa6MtvEHGXRvnBIp%2BCPskBZX3e9GVOfXRpj%2FaRYOaULkTI%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.043s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999828' - x-ratelimit-daily-reset: - - '57007' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42ff5e9c1fa224-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=NvP9aI5BKRYHwJ%2BUGxcSZKuxuJvNAvaLR%2BwIPWxN8Zqwxbq5aKK1Ix6SE7t%2B7Z11YamzUkI%2BfThKLUTmGVp5z66eX4aQrT6LgrAboF9S4tmNuRPvjEIE9v2S"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.022s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '990' - x-ratelimit-burst-reset: - - '42' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999821' - x-ratelimit-daily-reset: - - '56990' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '990' - x-ratelimit-reset: - - '42' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c42ff5f5cfda224-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=QreJ%2FLa36Q461hOXjNktPogElHOIQfkydsu9hKKzO6CDr5A%2FjxS6Y7le%2BG0%2Bo9UB9V%2BPAimJznKYCxUzLYyGuYf%2F%2Bu29DHTijvm%2BRMVC2bO1Hb0hn13sm3D9"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.036s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '989' - x-ratelimit-burst-reset: - - '42' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999820' - x-ratelimit-daily-reset: - - '56990' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '989' - x-ratelimit-reset: - - '42' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c43137eceaae8ea-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:15 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=kyFaOHzGnEK%2FYXfNmMWx%2Bjysmibc0layVKeLB9gKzdj8ZEgZ6culInOqPUdoxiqoyJ73dsuSeK9woso%2F1WtB6rDTyDGw%2BmFGPuLMx%2BVDPrOa9krp9G%2BnuyE89b0%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.043s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '998' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999813' - x-ratelimit-daily-reset: - - '56165' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '998' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/?shape=uuid%2Copportunity%28title%29&flat=true&joiner=__&flat_lists=true - response: - body: - string: '{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","opportunity__title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' - headers: - CF-RAY: - - 9c43137fb9d0e8ea-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:16 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=WIWi9DQwmpr98zNkyRTaLI9I%2FmWO6b2rwynyhdZk6KY991v%2FC8F5%2FQb4D16CYFiFhnx%2BQ%2B%2F2Ut6OG95i5nbiufIxgaB%2BU7zkXM33WZLpQmmBJlnFFeJjzGYm0zE%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '161' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.052s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999812' - x-ratelimit-daily-reset: - - '56165' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c4316ca0fd15314-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=sVqOlIe1dhvSXdO%2FoFCfNgTdZfGIV%2FByF6bANHtD9xZP97bRQa9syyZK%2BWjzdSPwlt5a%2FA6sZm7%2BxbocEV59vO%2BhRmv4aQYsktUVzGxFD2ZIjaUrHIJHAV%2FknWg%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.316s + - 0.021s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '998' + - '910' x-ratelimit-burst-reset: - - '58' + - '6' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999797' + - '1999670' x-ratelimit-daily-reset: - - '56030' + - '84966' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '998' + - '910' x-ratelimit-reset: - - '58' + - '6' status: code: 200 message: OK @@ -1295,17 +95,17 @@ interactions: - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS"}' headers: CF-RAY: - - 9c4316cc9f775314-ORD + - 9d71a79de845ace2-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:26:31 GMT + - Wed, 04 Mar 2026 14:43:42 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=INFTbt3AgFYdlq%2B9VQ7%2BNGNJcuAA%2BSnRfnCH6sIOCxg92oRMSn2PYYh%2BiS7qQjfaWu1ScKXnSPym7ocI%2BMK7aL2c6qslBZKOmDdN7QDa80kG3nvTpvM3u3%2FcPz0%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=fTIzuP10eNwQ3RQvXSnqPSyKJ%2F0GkCtQtRiwPTkcg7j62kkVcPa6owX9t2k8dFjcoroz4y6rj8b251WYX0UtASQXH3CIXIV2MxlJ6CzJ9%2FUD%2FcYSU6Ckn1vO"}]}' Server: - cloudflare Transfer-Encoding: @@ -1325,27 +125,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.048s + - 0.032s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '997' + - '909' x-ratelimit-burst-reset: - - '58' + - '6' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999796' + - '1999669' x-ratelimit-daily-reset: - - '56030' + - '84966' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '997' + - '909' x-ratelimit-reset: - - '58' + - '6' status: code: 200 message: OK diff --git a/tests/cassettes/TestVehiclesIntegration.test_list_vehicle_awardees_uses_default_shape b/tests/cassettes/TestVehiclesIntegration.test_list_vehicle_awardees_uses_default_shape index 362f114..c8e7417 100644 --- a/tests/cassettes/TestVehiclesIntegration.test_list_vehicle_awardees_uses_default_shape +++ b/tests/cassettes/TestVehiclesIntegration.test_list_vehicle_awardees_uses_default_shape @@ -16,21 +16,21 @@ interactions: uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date response: body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 + string: '{"count":5874,"next":"https://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' headers: CF-RAY: - - 9c42ec0d6a9d22f2-ORD + - 9d71a79f4d4ba1c9-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 20:57:20 GMT + - Wed, 04 Mar 2026 14:43:42 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=y3DsJyUFe2TuARtGz6e92R3MPSrN2X6VWVQDGSuTyM5%2FRNsr8gCbKSX3kyjWImFegehT60gNT9Rr5W2s9WKmkkEWSXVucfjZ4dNVetvM6bgrLtNL81TCC%2BLTYuY%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=g0j44m3AvOYMt1ZDTnMMFZ2MIbXGngySfFBMATk3ynlDhde23D0RJVscwUPb6%2FacawtgKkwd%2Bq2ufXW62HT1tqPmdW1YWEDTq8jkHS7HBqy1vBy1fFH36z7q"}]}' Server: - cloudflare Transfer-Encoding: @@ -40,7 +40,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '667' + - '668' cross-origin-opener-policy: - same-origin referrer-policy: @@ -50,1363 +50,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.030s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999875' - x-ratelimit-daily-reset: - - '57781' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c42ec0e5bd022f2-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 20:57:20 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=LVHu2Ux6qHItTmsgSAgwyDVfik0ei5Vbpp9q3yXROX70F5ltN4cyKA7EOaD6lYIj4HzP1jXOlmpcP25znCJrJx4gPPgoYZGIknO6XKTrhV2sL9EJL0pE9K5uylA%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.055s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999874' - x-ratelimit-daily-reset: - - '57781' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42efae7ed9a206-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 20:59:48 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Hxv%2BoiHzN57PuugErOwBO6949jBnd1F3C5enFAoLNBVwSvxNogu75B4Vfd4idoaSshCt2tL6FV%2BwkenYWnr1Iix7PZLBNrKInzd81vf%2FMM%2ByW%2FvWzr1P%2B3t7"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.024s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999867' - x-ratelimit-daily-reset: - - '57632' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c42efaf483aa206-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 20:59:49 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CKK9DfxqArUGTDHKsrtnwQ6G2L3xhPeST7tbk%2FVw%2F%2Fqefb%2FSO4KVhOwZ49r%2FSfLLMs4kQRGcyx1StUouJ%2FPIwH8ULdySl4bXBSbYXS%2BLZMMVDvdpWw0wlRyD"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.114s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999866' - x-ratelimit-daily-reset: - - '57632' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42f5535cddeff9-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:03:40 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=EkcU2tq1UQIYm9cFoeCDnzME%2FSR%2BpUGGr50FWxb8OkVjcKWpFHWfCT6nGvRTySnwkXyPYnAyuJEy18dbUz%2FzqNwGqJj3hEEqSuGySDI9DADm2bvYqhYuGz1Pjns%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.021s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '994' - x-ratelimit-burst-reset: - - '46' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999855' - x-ratelimit-daily-reset: - - '57401' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '994' - x-ratelimit-reset: - - '46' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c42f5542fdbeff9-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:03:40 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=mP%2FzW1b9j29cfFB66UZe1kBnDBvWm6dD0k8wTMvwJ3S5CZhmFfxHdGRhqyMnoPbauLdJ2I%2B%2BMWfZwb8DhNbTxwRsqlVvR1NcrBtP77Z%2F2tmgFO8gUYnE0txmQMw%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.099s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '993' - x-ratelimit-burst-reset: - - '45' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999854' - x-ratelimit-daily-reset: - - '57401' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '993' - x-ratelimit-reset: - - '45' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42f6e2ec1c7769-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:04:44 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=r%2FYAtdqSlOIhFk0s9MPvRkFopL5oO0A8OC%2FlMzLPaQfKNC6rLoTQHB4yxHD17nlCDMoru4qW1MQ2bStcZp6F6ZEB4LXulfgEVmGklXgbf8wHoBSFQ4vwdABcU0U%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.022s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '993' - x-ratelimit-burst-reset: - - '2' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999844' - x-ratelimit-daily-reset: - - '57337' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '993' - x-ratelimit-reset: - - '2' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c42f6e3af187769-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:04:44 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=ajSYys%2FtFeFHhauEWfQGhEqs7v%2F80gwil71aXzIqY8x8gq8N4oVvcYFEsSMg0Zp8OH1Kn4ynRq%2F4HydvZGQ5K%2FJitPm7YB8QBHJCu%2Bz3dR6enGN0Lgp3qZxhBqc%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.061s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '992' - x-ratelimit-burst-reset: - - '2' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999843' - x-ratelimit-daily-reset: - - '57337' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '992' - x-ratelimit-reset: - - '2' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42f9f30deaa1fa-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:06:49 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=vaUzRGeAVdHZ6UGlDxYCq1FDESeTvIH3dlIv2gs2%2FEnUdUXR2YmOCRCJwoLEFwPAfEcBX%2BmdhtTNJ8QcxByBnch%2FJ%2BpHosOvzj9Jm3PKtHPI11tGzb%2F%2Bi%2B4s"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.023s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999835' - x-ratelimit-daily-reset: - - '57212' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c42f9f3bf7ea1fa-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:06:49 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=CguTArOZfgBzTHnFo8fLJ0Ofyq2DAuTbV95j9v3QT2J%2Ff5KkXoY%2FUSOz60VyNHWzK6SCyKPzUjtt2jx4C7SH5SbFv9%2B9LjY1fYBamOP74Dt9cNdpmSj4ukVS"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.055s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999834' - x-ratelimit-daily-reset: - - '57212' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42fef3fb641259-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:14 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=xLo3MaQuS2BtJAieypg4wV3QRiAxasRHjvHjCmkWdq9RWAN3onXfhK79OpFMX1vn9tPLoPa9%2FqFPrCu%2BuRNks8%2B66G3ei7uW1T7nYespflCDoFL8Dzm90ZWF4BY%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.038s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999827' - x-ratelimit-daily-reset: - - '57007' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c42fef4fc7a1259-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:14 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=4DVZrUd1gFWkOQNmNPFRMqeVGxXKWta1cr%2FNeSKxM7qsGYdHIRJ7RO0zsjH86T%2F9NYgPHpmzQTOZJQuoMXCO4RcpsOXQkIvYtX6TniG%2F6HszRf0clCG%2FEXWdmAk%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.070s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999826' - x-ratelimit-daily-reset: - - '57007' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c42ff60fde19d42-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=k3iVYztqUcguh89MxyY75%2F0Dx0ykrB8Oqn5DWnB5S4WDSmM9qAsczp93cL3Pfu9fHaAXBUcWlWxL6xlrlkBh8WHILXUaFETngX1KpyRbyGfARv8K9Gv2jeHRguw%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.032s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '988' - x-ratelimit-burst-reset: - - '41' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999819' - x-ratelimit-daily-reset: - - '56989' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '988' - x-ratelimit-reset: - - '41' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c42ff61d8c99d42-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:32 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=WLh43ySkfMdYb7hqLyb4C2ZhnQZhNa4XjJfAsrBf920dLrUGbEilrZaOtxqiCQU5CWaahonaPVO9gcsfLgF1wL4lGc1hIb8SZ1VrRvZ6FYaTUv5%2FDbTwKRFWzCs%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.053s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '987' - x-ratelimit-burst-reset: - - '41' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999818' - x-ratelimit-daily-reset: - - '56989' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '987' - x-ratelimit-reset: - - '41' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c43138228256194-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:16 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=L3eQbWp%2FbBtivQcCX2dhIpV1DQ1kqvs810AWNAcr46guTgqoqMZ0VzkMzg8EWNKbdJpnp0s3gxVLTCGigPHnw9V0jgXxYpZuOa4sOFj8qMQgNAVyWVi2BucmSgE%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.032s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '996' - x-ratelimit-burst-reset: - - '58' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999811' - x-ratelimit-daily-reset: - - '56165' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '996' - x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 - response: - body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM - SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON - VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR - SUPPORT SERVICES","order_count":2,"idv_obligations":929714.8,"idv_contracts_value":931419.55,"recipient":{"uei":"WRHHNUK5YBN1","display_name":"RIVIDIUM - INC."}},{"uuid":"a2304733-ca28-5157-b800-ace63deb1f79","key":"CONT_IDV_36C24723A0033_3600","piid":"36C24723A0033","award_date":"2023-06-23","title":"CONSIGNMENT - INVENTORY","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"KP5EVFMHUAN1","display_name":"ABBOTT - LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA - OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO - SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK - MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK - MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO - LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL - PLATES AND SCREWS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"JB1EA2TU8V88","display_name":"BIOMET - MICROFIXATION, LLC"}},{"uuid":"141b0632-e12b-5ac8-a862-869bc1bd9f87","key":"CONT_IDV_36C24821A0016_3600","piid":"36C24821A0016","award_date":"2021-02-15","title":"CONSIGNMENT - AGREEMENT - PERIPHERAL VASCULAR EMBOLIZATION PRODUCTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"QLC9LYKADGX5","display_name":"PENUMBRA, - INC."}}]}' - headers: - CF-RAY: - - 9c43138399706194-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:16 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=f4NSNdRPw7Ke3uTg5LaixhAiIz4FQzs6fe6T52eEEz9n5jYlmfDBJD0sdMhRgAw03Eix3smrM3deW9YvjD9xIBF08hRKCStBT1ukt8CqmE7JDux7%2BpgTJxDtblY%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3417' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.083s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '58' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999810' - x-ratelimit-daily-reset: - - '56165' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '58' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=1&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5706,"next":"http://tango.makegov.com/api/vehicles/?limit=1&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"}]}' - headers: - CF-RAY: - - 9c4316ceddf260a2-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=aNGXCsCVXN3UFaB4Hmvuqgx%2FTFOM1QYtAZqihSV6cw%2FQT4DZ0%2Fb2673jXuuDFIiWsL%2FIUaGVQNBvi2K7TnFlqpq8wphApndhRCJ0qXYcdLpIZa3TAvKnZE9Ke5o%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '667' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.021s + - 0.022s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '996' + - '908' x-ratelimit-burst-reset: - - '58' + - '6' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999795' + - '1999668' x-ratelimit-daily-reset: - - '56030' + - '84966' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '996' + - '908' x-ratelimit-reset: - - '58' + - '6' status: code: 200 message: OK @@ -1427,7 +91,7 @@ interactions: uri: https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?page=1&limit=10&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29 response: body: - string: '{"count":38,"next":"http://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM + string: '{"count":38,"next":"https://tango.makegov.com/api/vehicles/84d76669-61d8-5938-83fb-2d6f8a6c85b7/awardees/?limit=10&page=2&shape=uuid%2Ckey%2Cpiid%2Caward_date%2Ctitle%2Corder_count%2Cidv_obligations%2Cidv_contracts_value%2Crecipient%28display_name%2Cuei%29","previous":null,"results":[{"uuid":"d3eec2d2-f46d-5f3a-a2b3-da474202982d","key":"CONT_IDV_36C24925A0044_3600","piid":"36C24925A0044","award_date":"2025-02-26","title":null,"order_count":2,"idv_obligations":97177.1,"idv_contracts_value":97177.1,"recipient":{"uei":"HPNGJJKW7NZ3","display_name":"MIM SOFTWARE INC"}},{"uuid":"6b35e54e-cdd7-547a-9912-4f32889904ee","key":"CONT_IDV_36C24923A0055_3600","piid":"36C24923A0055","award_date":"2023-09-21","title":"LEXINGTON VAMC AMOS CONSIGNMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO SALES AND SERVICE, INC."}},{"uuid":"4734026e-f902-5e4d-ae05-2625e9ee09b3","key":"CONT_IDV_36C10X23A0024_3600","piid":"36C10X23A0024","award_date":"2023-09-19","title":"HR @@ -1437,8 +101,8 @@ interactions: LABORATORIES INC."}},{"uuid":"8a721329-40f9-5ca3-858d-ed9a067371f2","key":"CONT_IDV_36C26022A0045_3600","piid":"36C26022A0045","award_date":"2022-09-12","title":"INTRA OCULAR LENSE CONSIGNMENT AGREEMENT","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"G8XGKTUWPM14","display_name":"AMO SALES AND SERVICE, INC."}},{"uuid":"113dac46-3903-5889-9fc1-d4a58c01c591","key":"CONT_IDV_36C24122A0070_3600","piid":"36C24122A0070","award_date":"2022-03-17","title":"BLANKET - PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"SAGE - PRODUCTS, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK + PURCHASE AGREEMENT FOR SUPPLIES NATIONWIDE VHA","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"L3CLKHB2VE24","display_name":"Sage + Products, LLC"}},{"uuid":"040283f5-ed08-5434-9df4-907c7af62e4f","key":"CONT_IDV_36C25022A0009_3600","piid":"36C25022A0009","award_date":"2021-10-01","title":"COOK MEDICAL LLC CONSIGNMENT - IMPLANTS","order_count":0,"idv_obligations":0.0,"idv_contracts_value":0.0,"recipient":{"uei":"GG39AE315NK5","display_name":"COOK MEDICAL LLC"}},{"uuid":"7fe6ae99-081f-5be6-bd03-6a9bbf354980","key":"CONT_IDV_36C25021A0056_3600","piid":"36C25021A0056","award_date":"2021-03-23","title":null,"order_count":5,"idv_obligations":128048.14,"idv_contracts_value":164888.14,"recipient":{"uei":"STNDUK44ENE8","display_name":"POLYMEDCO LLC"}},{"uuid":"3ab4321d-76a5-58c2-aaf6-85321ccd1bc1","key":"CONT_IDV_36C24821A0018_3600","piid":"36C24821A0018","award_date":"2021-03-17","title":"STERNAL @@ -1448,17 +112,17 @@ interactions: INC."}}]}' headers: CF-RAY: - - 9c4316cfbeaf60a2-ORD + - 9d71a7a00eb0a1c9-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 21:26:31 GMT + - Wed, 04 Mar 2026 14:43:42 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=NLz29nCCLbZdkOu04laH2zoOFLJhhoad3MuKYTBjGd7Qn39Zvg8fVGHL43UjrIc4WMVm9r5kOejXDyw5tpMgYLq9HLRPk8U62srSEyNbn1KIHFbE3ql%2F3Pnq1o4%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=PA0MWV3V4YvOgApvlK%2B30Y0fxb8uTbbVuL9VqVukOJLOvEMUylvJhadJX%2BuzJ2P7b5Nd8l6H5tYqYB%2FRfPaJao1Je5g32SIOLm0i2Ohjsm7hv1lGzYI6qyl2"}]}' Server: - cloudflare Transfer-Encoding: @@ -1468,7 +132,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '3417' + - '3418' cross-origin-opener-policy: - same-origin referrer-policy: @@ -1478,27 +142,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.162s + - 0.087s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '995' + - '907' x-ratelimit-burst-reset: - - '58' + - '6' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999794' + - '1999667' x-ratelimit-daily-reset: - - '56029' + - '84966' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '995' + - '907' x-ratelimit-reset: - - '58' + - '6' status: code: 200 message: OK diff --git a/tests/cassettes/TestVehiclesIntegration.test_list_vehicles_uses_default_shape_and_search b/tests/cassettes/TestVehiclesIntegration.test_list_vehicles_uses_default_shape_and_search index 1d248a8..12ed35c 100644 --- a/tests/cassettes/TestVehiclesIntegration.test_list_vehicles_uses_default_shape_and_search +++ b/tests/cassettes/TestVehiclesIntegration.test_list_vehicles_uses_default_shape_and_search @@ -16,36 +16,30 @@ interactions: uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA response: body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' + string: '{"count":73,"next":"https://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"6741a166-ae8e-57ba-b156-76f9137febad","solicitation_identifier":"15F06725Q0000150","organization_id":"08ba1358-7dad-5228-9540-0a3718bc621d","awardee_count":4,"order_count":5,"vehicle_obligations":3104682.7,"vehicle_contracts_value":29044858.96,"solicitation_title":"Curriculum + Development Synopsis/Solicitation - Updated GSA site","solicitation_date":"2025-04-10"},{"uuid":"1e03d563-afa5-565f-be04-ba64b0ec053c","solicitation_identifier":"2FYB-BJ-030001-B","organization_id":null,"awardee_count":46,"order_count":7458,"vehicle_obligations":139267557.14,"vehicle_contracts_value":607178722.14,"solicitation_title":"Cameras, + Photographic Printers and Related Supplies and Services","solicitation_date":"2001-03-01"},{"uuid":"6fea329b-c906-5857-8384-6451a4c93430","solicitation_identifier":"36C10X23Q0022","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":4,"order_count":14,"vehicle_obligations":2356056.0,"vehicle_contracts_value":2356056.0,"solicitation_title":"U008--Acquisition + Workforce Training Multiple Award BPA - NEW GSA Contract Number Business Management + Research Associates, Inc","solicitation_date":"2024-04-05"},{"uuid":"e99312ce-b377-5fac-81ce-7f3f19b548c4","solicitation_identifier":"36C26120Q0012","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":3,"order_count":92,"vehicle_obligations":51415076.89,"vehicle_contracts_value":51498956.84,"solicitation_title":"Q301--Quest + FSS-BPA GSA Schedule 621 II","solicitation_date":"2020-09-28"},{"uuid":"26090608-dfc4-5245-8f1d-043f40d3cedd","solicitation_identifier":"3FNG-RG-020001-B","organization_id":"edfcdf18-d5d1-5e9a-8563-d8ed1f2844ce","awardee_count":111,"order_count":3766,"vehicle_obligations":231871038.22,"vehicle_contracts_value":235312118.92,"solicitation_title":"Professional + Audio/Video, Telemetry/Tracking, Recording, Reproducing and Signal Data Solutions","solicitation_date":"2010-11-30"},{"uuid":"1293190d-b755-5f61-a484-211f4425aad2","solicitation_identifier":"3FNJ-C1-000001-B","organization_id":null,"awardee_count":275,"order_count":51247,"vehicle_obligations":3570831390.91,"vehicle_contracts_value":11123777947.32,"solicitation_title":"Office, + Imaging and Document","solicitation_date":"1999-04-01"},{"uuid":"74ef741b-f0bc-506a-94cc-8252264a0237","solicitation_identifier":"3FNJ-C1-000001-B","organization_id":"edfcdf18-d5d1-5e9a-8563-d8ed1f2844ce","awardee_count":294,"order_count":10410,"vehicle_obligations":3351983917.63,"vehicle_contracts_value":7967591185.76,"solicitation_title":"Office, + Imaging and Document","solicitation_date":"2010-10-01"},{"uuid":"1f8a3ce7-a58c-5d36-907d-bf67f96e2cd4","solicitation_identifier":"3QSA-JB-100001-B","organization_id":"edfcdf18-d5d1-5e9a-8563-d8ed1f2844ce","awardee_count":497,"order_count":24312,"vehicle_obligations":2067723956.69,"vehicle_contracts_value":2149663259.46,"solicitation_title":"Furniture","solicitation_date":"2010-10-04"},{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22210407.27,"vehicle_contracts_value":22210407.27,"solicitation_title":"GSA + Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1171435.78,"vehicle_contracts_value":1171435.78,"solicitation_title":"Architectural + and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"}]}' headers: CF-RAY: - - 9c42ec08288b6157-ORD + - 9d71a7968b13fc89-MSP Connection: - keep-alive Content-Type: - application/json Date: - - Mon, 26 Jan 2026 20:57:19 GMT + - Wed, 04 Mar 2026 14:43:42 GMT Nel: - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Vd5G0eTbThOypHfG5zl75MpwYZWDHyRWvY7BJ1jSR52vmz%2FAuyM3Ouz%2BHFvw16AwFXPIvYzWbEtXsSjavguf1A6yDTelC9Xg4fh3DOaBJ5AOVVj2j2Awk5Rpm7Q%3D"}]}' + - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=5%2BHepsdgjcU87kM%2BNnTgEm5bAgw8L9ZsZHeSXeBCTE%2BWnksTynGg8TJ56KoKVetk3pFnm%2Bz6OTI%2BHQ3lraKGlHtfXJrFZtMZU6d5rEzcXciLRMAIthAZ1V8Z"}]}' Server: - cloudflare Transfer-Encoding: @@ -55,7 +49,7 @@ interactions: cf-cache-status: - DYNAMIC content-length: - - '4418' + - '3950' cross-origin-opener-policy: - same-origin referrer-policy: @@ -65,747 +59,27 @@ interactions: x-content-type-options: - nosniff x-execution-time: - - 0.024s + - 0.578s x-frame-options: - DENY x-ratelimit-burst-limit: - '1000' x-ratelimit-burst-remaining: - - '999' + - '911' x-ratelimit-burst-reset: - - '59' + - '7' x-ratelimit-daily-limit: - '2000000' x-ratelimit-daily-remaining: - - '1999878' + - '1999671' x-ratelimit-daily-reset: - - '57782' + - '84967' x-ratelimit-limit: - '1000' x-ratelimit-remaining: - - '999' + - '911' x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c42efaa397afc89-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 20:59:48 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=IW0sLspMYzZonWLlDxjK33jd%2BROxCnqBO5v1j0XYccssgisfHcCBuioe2e5Bgpih2aOphdQnyVHhKdoZise9BZogocHGNlsni%2FOTC1ELV%2BM6e%2BJMq2hYJ6Cq"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.037s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '999' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999870' - x-ratelimit-daily-reset: - - '57633' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '999' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c42f54f0da8880c-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:03:39 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=DbIa7dUkJt8Rrsci9%2FKRosRY85aG7QgNvDg2ZK0Cv6i2mTDevQeWzfp5oJmRzIwK%2F9A3t8V0vTFXBQtWzrCP7SpDNEA6xdX2HBNn2RVKj%2FhcA8nqpejmQXbE08k%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.041s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '997' - x-ratelimit-burst-reset: - - '46' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999858' - x-ratelimit-daily-reset: - - '57402' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '997' - x-ratelimit-reset: - - '46' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c42f6deb8f3ac5a-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:04:43 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=GCRp3pPcG27pisclDNFBb0MQuNWx%2FA0GmBEWrpms4q5yvak4McPo0AsOrnFGt8lpe0MnYzJmHCOwCmM7KQ0ym1zlA1QAp2Qo%2BjnJ1aqK8lpQVzOGII%2FF160wW3Q%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.032s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '995' - x-ratelimit-burst-reset: - - '0' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999847' - x-ratelimit-daily-reset: - - '57338' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '995' - x-ratelimit-reset: - - '0' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c42f9ee28e6b45f-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:06:48 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=xzdI3nNezC0tkpinOPliSFNMkeYJjhet2tQzcU0u0dcJ4G4aZ7OAKv8xzybr8hROUDzuOZ1x6RBTQJNFCa9OT%2FWu3zBQRvCpD40jP%2FVugHOGXfUYyvnyeKJv"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.032s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '999' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999838' - x-ratelimit-daily-reset: - - '57212' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '999' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c42feeeaee1a20d-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:13 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=vXpDAGdkO9Q4%2BpDoHq7eiyNuIsl8pN0s1hsnAV2iVp4DkAR0wrYYuEFpuynDIzGV0274Ym5f%2FYcKmMWUsXxN2nYsfZTcpnp75aF0JcpqgHgbaMALzf7atNHF"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.043s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '999' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999830' - x-ratelimit-daily-reset: - - '57008' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '999' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c42ff5d48dfe8fb-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:10:31 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=uvXloYasFnOGONEkPRAKiiK1IOuWnOX5ge3O%2F%2FMU4jmAilThkrzF82XHceOML0PXYDD4hpNtROjD%2FYCfqipwd3EdRG66Kyh%2B765sShYsHe%2BDwSXfX%2FKmRYbpHvo%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.025s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '991' - x-ratelimit-burst-reset: - - '42' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999822' - x-ratelimit-daily-reset: - - '56990' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '991' - x-ratelimit-reset: - - '42' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c43137bcb037a66-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:24:15 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=kw8DCODSDwJpH1z0uqHHAtJBPaJpND1VbZ4XAFMlebD%2BW95hAtOGMBlDt192yl2I5QtO%2B%2B2bWsVie%2FqeAAIaIe2kfe25%2BRDKvCKCyDKSp9oWsVCxgAUGpQkzbVQ%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.074s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '999' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999814' - x-ratelimit-daily-reset: - - '56166' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '999' - x-ratelimit-reset: - - '59' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date&search=GSA - response: - body: - string: '{"count":33,"next":"http://tango.makegov.com/api/vehicles/?limit=10&page=2&search=GSA&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"4b755976-75c2-573a-bd3a-92147261df2f","solicitation_identifier":"47PB0023R0012","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":24,"order_count":47,"vehicle_obligations":22150617.51,"vehicle_contracts_value":22150617.51,"solicitation_title":"GSA - Region 1 Construction IDIQ - North/Boston/South Zones","solicitation_date":"2023-06-30"},{"uuid":"59cee065-88e2-5a98-be93-004df7e23d18","solicitation_identifier":"47PB0023R0059","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":18,"vehicle_obligations":1076051.76,"vehicle_contracts_value":1118930.13,"solicitation_title":"Architectural - and Engineering Multiple Award IDIQ New England","solicitation_date":"2023-09-13"},{"uuid":"e2e29269-a44e-5490-85a7-c3bba68964cb","solicitation_identifier":"47PC0318R0003","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"R&A - IDIQ Puerto Rico and U.S. Virgin Islands","solicitation_date":"2018-04-17"},{"uuid":"62779c22-7aa4-5b4b-8a20-b15e5e088e5e","solicitation_identifier":"47PC0319N0002","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":8,"order_count":82,"vehicle_obligations":102363485.57,"vehicle_contracts_value":129262449.49,"solicitation_title":"Architect-Engineer - Services for Multiple-Award Indefinite Delivery Indefinite Quantity Contracts","solicitation_date":"2019-05-31"},{"uuid":"5e617570-c22e-52a8-b8fa-2be1e421edf3","solicitation_identifier":"47PD0222R0035","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":15,"order_count":26,"vehicle_obligations":89066346.86,"vehicle_contracts_value":96045297.22,"solicitation_title":"Multiple - Award Indefinite Delivery Indefinite Quantity (IDIQ) for General Construction - Services in the East Coast Corridor of PBS Region 3","solicitation_date":"2022-04-20"},{"uuid":"2db26c00-0be0-5220-a275-21d83b06086d","solicitation_identifier":"47PE0119R0001","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":103,"vehicle_obligations":21159088.16,"vehicle_contracts_value":21391358.12,"solicitation_title":"GSA, - PBS Region 4 A&E Services IDIQ (Synopsis Issued 10/19/2018; Solicitation Issued - 11/07/2018; Offer Due Date 12/7/2018; Technical Evaluations 12/10/2018 through - 12/14/2018; Pricing Phase; 12/20/2018; Award; 05/24/2019)","solicitation_date":"2018-10-19"},{"uuid":"c77fc373-4a44-5431-ba2c-723bb1606d0c","solicitation_identifier":"47PE0719R0007","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":3,"order_count":128,"vehicle_obligations":6560553.83,"vehicle_contracts_value":6564627.87,"solicitation_title":"Multiple - Award Indefinite-Delivery Indefinite Quantity Term Construction Contracts - for Florida","solicitation_date":"2018-11-01"},{"uuid":"1e2a03d2-244c-5bc1-a960-79da9fc0efa8","solicitation_identifier":"47PF0018R0061","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":7,"order_count":238,"vehicle_obligations":22366820.83,"vehicle_contracts_value":22500989.68,"solicitation_title":"Northern - Service Center Operations Division (NSCOD) Indefinite Delivery Indefinite - Quantity (IDIQ) Contracts for Architectural and Engineering Services (A/E)","solicitation_date":"2018-04-09"},{"uuid":"04975c1d-2e2e-5fd8-a32f-770893fd6a76","solicitation_identifier":"47PF0019R0083","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":4,"order_count":64,"vehicle_obligations":974694.11,"vehicle_contracts_value":974694.11,"solicitation_title":"R5 - Space Planning and Interior Design Services Indefinite Delivery Indefinite - Quantity (IDIQ) Procurement","solicitation_date":"2019-08-01"},{"uuid":"87ac1077-87f0-5bd6-91c0-5681c7077923","solicitation_identifier":"47PF0020R0004","organization_id":"17417361-31f1-5514-9623-5ef7b0ae02db","awardee_count":6,"order_count":159,"vehicle_obligations":22195074.62,"vehicle_contracts_value":22684204.36,"solicitation_title":"GSA - Region 5 Supplemental Architect & Engineering Services IDIQ","solicitation_date":"2019-12-18"}]}' - headers: - CF-RAY: - - 9c4316c41a4a61d9-ORD - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 26 Jan 2026 21:26:30 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=VjkpxlNc06ToORJqtzsiQ%2BvkskmCULPG%2FlTpXCaHP%2BELiwug1HMSQ%2BlRhnuamTae61juZCkr3QTeqzMeDad%2BMeCg9YWKvrtWIlUCmbjxtuKmvzhSY6sI7tklc%2FY%3D"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '4418' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.605s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '999' - x-ratelimit-burst-reset: - - '59' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999798' - x-ratelimit-daily-reset: - - '56031' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '999' - x-ratelimit-reset: - - '59' + - '7' status: code: 200 message: OK diff --git a/tests/integration/test_edge_cases_integration.py b/tests/integration/test_edge_cases_integration.py index 37c1760..919f3a6 100644 --- a/tests/integration/test_edge_cases_integration.py +++ b/tests/integration/test_edge_cases_integration.py @@ -145,23 +145,31 @@ def test_parsing_nested_objects_with_missing_data(self, tango_client): agency = contract.get("awarding_office") if agency is not None: - # Verify agency/office has at least one identifier field - # Agencies shape uses wildcard, so fields may vary + # Verify agency/office has at least one identifier field when non-empty, + # or accept empty dict (API may return awarding_office: {} when data is missing). + # Award office shape uses office_code, office_name, agency_code, agency_name, etc. if isinstance(agency, dict): + # Empty dict is valid (API may return {} when nested data is missing) has_identifier = ( "code" in agency or "name" in agency or "agency" in agency - or len(agency) > 0 + or "office_code" in agency + or "agency_code" in agency + or "department_code" in agency + or len(agency) == 0 ) else: has_identifier = ( hasattr(agency, "code") or hasattr(agency, "name") or hasattr(agency, "agency") + or hasattr(agency, "office_code") + or hasattr(agency, "agency_code") + or hasattr(agency, "department_code") ) assert has_identifier, ( - "Agency/office should have at least one identifier attribute (code, name, or agency)" + "Agency/office should have at least one identifier attribute, or be empty" ) # Verify optional fields can be None From fdcfd36a4e565892f13b9858a9c06fa8f9e591f1 Mon Sep 17 00:00:00 2001 From: "V. David Zvenyach" Date: Wed, 4 Mar 2026 11:24:00 -0600 Subject: [PATCH 7/7] More updates --- CHANGELOG.md | 4 + README.md | 4 +- docs/API_REFERENCE.md | 50 ---- scripts/check_filter_shape_conformance.py | 1 - tango/client.py | 67 ----- ...AssistanceIntegration.test_list_assistance | 158 ------------ .../TestIDVsIntegration.test_get_idv_summary | 244 ------------------ ...VsIntegration.test_list_idv_summary_awards | 244 ------------------ .../test_assistance_integration.py | 46 ---- .../integration/test_contracts_integration.py | 18 +- .../test_vehicles_idvs_integration.py | 75 ------ tests/production/test_production_smoke.py | 21 -- tests/test_client.py | 28 -- 13 files changed, 18 insertions(+), 942 deletions(-) delete mode 100644 tests/cassettes/TestAssistanceIntegration.test_list_assistance delete mode 100644 tests/cassettes/TestIDVsIntegration.test_get_idv_summary delete mode 100644 tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards delete mode 100644 tests/integration/test_assistance_integration.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 4900b61..81382e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Docs: `SHAPES.md` documents `federal_obligations(*)` as an expansion for entity shaping. - Integration tests: `test_parsing_nested_objects_with_missing_data` accepts award office fields (`office_code`, `agency_code`, `department_code`) and empty nested objects when the API returns partial data. +### Removed +- Assistance: `list_assistance` endpoint and all related tests, docs, and references. +- IDV summaries: `get_idv_summary` and `list_idv_summary_awards` endpoints and related integration tests, cassettes, and API reference section. + ## [0.4.1] - 2026-03-03 ### Added diff --git a/README.md b/README.md index 41789a7..d154abf 100644 --- a/README.md +++ b/README.md @@ -225,12 +225,11 @@ contract = client.get_gsa_elibrary_contract("UUID") ### Reference Data ```python -# Offices, organizations, NAICS, subawards, assistance, business types +# Offices, organizations, NAICS, subawards, business types offices = client.list_offices(search="acquisitions") organizations = client.list_organizations(level=1) naics = client.list_naics(search="software") subawards = client.list_subawards(prime_uei="UEI123") -assistance = client.list_assistance(fiscal_year=2025) business_types = client.list_business_types() ``` @@ -439,7 +438,6 @@ tango-python/ │ ├── conftest.py # Integration test fixtures │ ├── validation.py # Validation utilities │ ├── test_agencies_integration.py -│ ├── test_assistance_integration.py │ ├── test_contracts_integration.py │ ├── test_entities_integration.py │ ├── test_forecasts_integration.py diff --git a/docs/API_REFERENCE.md b/docs/API_REFERENCE.md index a765783..e1d58ee 100644 --- a/docs/API_REFERENCE.md +++ b/docs/API_REFERENCE.md @@ -19,7 +19,6 @@ Complete reference for all Tango Python SDK methods and functionality. - [Opportunities](#opportunities) - [Notices](#notices) - [Grants](#grants) -- [Assistance](#assistance) - [GSA eLibrary Contracts](#gsa-elibrary-contracts) - [Protests](#protests) - [Business Types](#business-types) @@ -602,13 +601,6 @@ children = client.list_idv_child_idvs("SOME_IDV_KEY", limit=25) tx = client.list_idv_transactions("SOME_IDV_KEY", limit=100) ``` -### get_idv_summary() / list_idv_summary_awards() - -```python -summary = client.get_idv_summary("SOLICITATION_IDENTIFIER") -awards = client.list_idv_summary_awards("SOLICITATION_IDENTIFIER", limit=25) -``` - --- ## Entities @@ -1038,48 +1030,6 @@ for grant in grants.results: --- -## Assistance - -Financial assistance transactions (grants, direct payments, etc.). - -### list_assistance() - -List assistance transactions with keyset pagination. - -```python -assistance = client.list_assistance( - limit=25, - cursor=None, - # Filter parameters (all optional) - assistance_type=None, - award_key=None, - fiscal_year=None, - fiscal_year_gte=None, - fiscal_year_lte=None, - highly_compensated_officers=None, - recipient=None, - recipient_address=None, - search=None, -) -``` - -**Notes:** -- Uses **keyset pagination** (`cursor` + `limit`) rather than page numbers. - -**Filter Parameters:** -- `assistance_type` - Filter by assistance type -- `award_key` - Filter by award key -- `fiscal_year` - Exact fiscal year -- `fiscal_year_gte` / `fiscal_year_lte` - Fiscal year range -- `highly_compensated_officers` - Filter by highly compensated officers -- `recipient` - Search by recipient name -- `recipient_address` - Filter by recipient address -- `search` - Full-text search - -**Returns:** [PaginatedResponse](#paginatedresponse) with assistance dictionaries - ---- - ## GSA eLibrary Contracts GSA Schedule contracts from the GSA eLibrary. diff --git a/scripts/check_filter_shape_conformance.py b/scripts/check_filter_shape_conformance.py index 8ed8ad9..640e5fe 100644 --- a/scripts/check_filter_shape_conformance.py +++ b/scripts/check_filter_shape_conformance.py @@ -51,7 +51,6 @@ "naics": "list_naics", "gsa_elibrary_contracts": "list_gsa_elibrary_contracts", # Resources not yet implemented in SDK - "assistance": None, "offices": None, } diff --git a/tango/client.py b/tango/client.py index d30d592..f5b4ae2 100644 --- a/tango/client.py +++ b/tango/client.py @@ -944,32 +944,6 @@ def list_idv_transactions( page_metadata=data.get("page_metadata"), ) - def get_idv_summary(self, identifier: str) -> dict[str, Any]: - """Get a summary for an IDV solicitation identifier (`/api/idvs/{identifier}/summary/`).""" - return self._get(f"/api/idvs/{identifier}/summary/") - - def list_idv_summary_awards( - self, - identifier: str, - limit: int = 25, - cursor: str | None = None, - ordering: str | None = None, - ) -> PaginatedResponse: - """List awards under an IDV summary (`/api/idvs/{identifier}/summary/awards/`).""" - params: dict[str, Any] = {"limit": min(limit, 100)} - if cursor: - params["cursor"] = cursor - if ordering: - params["ordering"] = ordering - data = self._get(f"/api/idvs/{identifier}/summary/awards/", params) - return PaginatedResponse( - count=int(data.get("count") or len(data.get("results") or [])), - next=data.get("next"), - previous=data.get("previous"), - results=data.get("results") or [], - page_metadata=data.get("page_metadata"), - ) - def list_otas( self, limit: int = 25, @@ -2069,47 +2043,6 @@ def list_grants( results=results, ) - def list_assistance( - self, - limit: int = 25, - cursor: str | None = None, - assistance_type: str | None = None, - award_key: str | None = None, - fiscal_year: int | None = None, - fiscal_year_gte: int | None = None, - fiscal_year_lte: int | None = None, - highly_compensated_officers: str | None = None, - recipient: str | None = None, - recipient_address: str | None = None, - search: str | None = None, - ) -> PaginatedResponse: - """List assistance (financial assistance) transactions (`/api/assistance/`). Keyset pagination.""" - params: dict[str, Any] = {"limit": min(limit, 100)} - if cursor: - params["cursor"] = cursor - for key, val in ( - ("assistance_type", assistance_type), - ("award_key", award_key), - ("fiscal_year", fiscal_year), - ("fiscal_year_gte", fiscal_year_gte), - ("fiscal_year_lte", fiscal_year_lte), - ("highly_compensated_officers", highly_compensated_officers), - ("recipient", recipient), - ("recipient_address", recipient_address), - ("search", search), - ): - if val is not None: - params[key] = val - data = self._get("/api/assistance/", params) - return PaginatedResponse( - count=int(data.get("count") or len(data.get("results") or [])), - next=data.get("next"), - previous=data.get("previous"), - results=data.get("results", []), - cursor=data.get("cursor"), - page_metadata=data.get("page_metadata"), - ) - # ============================================================================ # Webhooks (v2) # ============================================================================ diff --git a/tests/cassettes/TestAssistanceIntegration.test_list_assistance b/tests/cassettes/TestAssistanceIntegration.test_list_assistance deleted file mode 100644 index 106ff5d..0000000 --- a/tests/cassettes/TestAssistanceIntegration.test_list_assistance +++ /dev/null @@ -1,158 +0,0 @@ -interactions: -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/assistance/?limit=10 - response: - body: - string: "\n\n \n \n - \ \n \n 404 - Page - Not Found | Tango by MakeGov\n \n \n \n - \ \n - \ \n \n - \ \n \n - \ \n - \ \n \n - \ \n - \ \n - \ \n - \ \n \n - \ \n \n \n \n \n \n \n Skip - to main content
\n
\n
\n - \
\n
\n
\n \n \n \n - \ \n - \ \n \n
\n - \
\n \n
\n
\n - \
\n
\n \n - \
\n
\n
\n \n
\n \n
\n \n

\"404

\n \n

Uh-oh! - Nothing here!

\n

Go - back

\n
\n \n
\n\n \n - \ \n \n\n" - headers: - CF-RAY: - - 9d71a554af09a1e5-MSP - Connection: - - keep-alive - Content-Type: - - text/html; charset=utf-8 - Date: - - Wed, 04 Mar 2026 14:42:08 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3GQiyLIcaxvbCAdWSkxsWhAFBMSdtnSGrZiRT8hLWmQWlXlf34XX6eg8kxHB2vgVPtoUJmqqp8KeT37W3swbh0eUJdJq7xyoXrSC2MQPmtqNZ6%2BPUiDsyH9r"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - cf-cache-status: - - DYNAMIC - content-length: - - '7174' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.006s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '10' - x-ratelimit-burst-remaining: - - '10' - x-ratelimit-burst-reset: - - '0' - x-ratelimit-daily-limit: - - '100' - x-ratelimit-daily-remaining: - - '100' - x-ratelimit-daily-reset: - - '0' - x-ratelimit-limit: - - '10' - x-ratelimit-remaining: - - '10' - x-ratelimit-reset: - - '0' - status: - code: 404 - message: Not Found -version: 1 diff --git a/tests/cassettes/TestIDVsIntegration.test_get_idv_summary b/tests/cassettes/TestIDVsIntegration.test_get_idv_summary deleted file mode 100644 index 2911a79..0000000 --- a/tests/cassettes/TestIDVsIntegration.test_get_idv_summary +++ /dev/null @@ -1,244 +0,0 @@ -interactions: -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5874,"next":"https://tango.makegov.com/api/vehicles/?limit=10&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"},{"uuid":"eb797c6e-6865-505e-9c71-7d0dfc3b1b35","solicitation_identifier":"0040626388","organization_id":"0d75c931-8b4e-5941-9ec3-2b35df3ea8d9","awardee_count":3,"order_count":6,"vehicle_obligations":37189.74,"vehicle_contracts_value":37189.74,"solicitation_title":"B--AZ - ES ARCHAEOLOGICAL SERVICES","solicitation_date":"2023-08-29"},{"uuid":"ef62a4f0-080a-503f-adbe-a1705ae410c0","solicitation_identifier":"05GA0A22Q0023","organization_id":"2774a854-bcf4-5d85-94c0-d715f0c1819f","awardee_count":4,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"SOLICITATION - - GAO IDIQ CONSTRUCTION SERVICES","solicitation_date":"2022-03-21"},{"uuid":"4c317645-db68-53e7-8d97-eeec38e7da2e","solicitation_identifier":"1069512","organization_id":"384a7047-2f7c-5a2f-88b0-8e47cb5f98f5","awardee_count":2,"order_count":5,"vehicle_obligations":1828095.0,"vehicle_contracts_value":1828095.0,"solicitation_title":"Intent - to Sole Source Procurement for Specific Pathogen Free (SPF) Embryonating Chicken - Eggs","solicitation_date":"2022-09-13"},{"uuid":"98718d55-29c9-56f8-9a19-058f2b6e7174","solicitation_identifier":"1131PL21RIQ71002","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":4,"order_count":6,"vehicle_obligations":332140.66,"vehicle_contracts_value":332140.66,"solicitation_title":"Monitoring - and Evaluations: Program Audit Series Services IDIQ","solicitation_date":"2021-08-06"},{"uuid":"e2b5a801-4ddd-5abe-92b4-ba1807421c8f","solicitation_identifier":"1131PL22RIQ0001","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":18,"order_count":55,"vehicle_obligations":32511871.78,"vehicle_contracts_value":32687649.87,"solicitation_title":"IDIQ: - Multiple Award Contract - - Reverse Trade Missions, Conferences, Workshops, - Training, and Other Events","solicitation_date":"2022-04-08"},{"uuid":"a9df6717-67b2-51c1-9d6d-e29b1d89b4cb","solicitation_identifier":"1145PC20Q0026","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":9,"order_count":32,"vehicle_obligations":377286.14,"vehicle_contracts_value":383286.14,"solicitation_title":"Peace - Corps Background Investigators","solicitation_date":"2020-03-17"},{"uuid":"8d124a98-17f3-5143-b11a-cba33b218145","solicitation_identifier":"1145PC22Q0042","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":7,"order_count":18,"vehicle_obligations":116624.52,"vehicle_contracts_value":116624.52,"solicitation_title":"Language - Proficiency Interview (LPI) Tester Trainers","solicitation_date":"2022-03-28"},{"uuid":"d9351f6f-3663-5b3e-baa6-629e71f4a6ae","solicitation_identifier":"12-046W-18-Q-0056","organization_id":"2bdc6615-3582-5f85-ace9-470bf8f461f7","awardee_count":2,"order_count":2,"vehicle_obligations":35100.0,"vehicle_contracts_value":35100.0,"solicitation_title":"Trail - Maintenance/Restoration Services","solicitation_date":"2018-08-27"},{"uuid":"e9718942-c9d7-5ca7-a2e6-6eeb3a7a9d4c","solicitation_identifier":"12-04T0-18-Q-0001","organization_id":"2bdc6615-3582-5f85-ace9-470bf8f461f7","awardee_count":14,"order_count":58,"vehicle_obligations":671823.21,"vehicle_contracts_value":671823.21,"solicitation_title":"Region - 6 Coaching Services - BPA","solicitation_date":"2017-12-14"}]}' - headers: - CF-RAY: - - 9d71a7ac58914c91-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Wed, 04 Mar 2026 14:43:44 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=VroD%2FWLx4M8jK8wx91mvi%2FjzOy6SWo6ZwNP2CqqnVfa5r0HGisNPbwYkBslQJNt95xIxwvABjUMVhL9%2BMXZOYvrkrLLG1hLcOuOGDp4I75cTleGd23C2dBe9"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3916' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.039s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '897' - x-ratelimit-burst-reset: - - '4' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999657' - x-ratelimit-daily-reset: - - '84964' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '897' - x-ratelimit-reset: - - '4' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/0/summary/ - response: - body: - string: "\n\n \n \n - \ \n \n 404 - Page - Not Found | Tango by MakeGov\n \n \n \n - \ \n - \ \n \n - \ \n \n - \ \n - \ \n \n - \ \n - \ \n - \ \n - \ \n \n - \ \n \n \n \n \n \n \n Skip - to main content
\n
\n
\n - \
\n
\n
\n \n \n \n - \ \n - \ \n \n
\n - \
\n \n
\n
\n - \
\n
\n \n - \
\n
\n
\n \n
\n \n
\n \n

\"404

\n \n

Uh-oh! - Nothing here!

\n

Go - back

\n
\n \n
\n\n \n - \ \n \n\n" - headers: - CF-RAY: - - 9d71a7ad3a224c91-MSP - Connection: - - keep-alive - Content-Type: - - text/html; charset=utf-8 - Date: - - Wed, 04 Mar 2026 14:43:44 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=cRtoQ5cjlmDfXAdhYCEdfYhRC5J4RtUZiPu1U%2FDAeN0yLnrzGQkp8KxFY5TIHed5WbYnpuDLOVpVX42QX5Ax%2Bt2Ijr4ROb9tsDRksQ5MXYvhgt5Q1JSuvKjE"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - cf-cache-status: - - DYNAMIC - content-length: - - '7174' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.007s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '10' - x-ratelimit-burst-remaining: - - '10' - x-ratelimit-burst-reset: - - '0' - x-ratelimit-daily-limit: - - '100' - x-ratelimit-daily-remaining: - - '100' - x-ratelimit-daily-reset: - - '0' - x-ratelimit-limit: - - '10' - x-ratelimit-remaining: - - '10' - x-ratelimit-reset: - - '0' - status: - code: 404 - message: Not Found -version: 1 diff --git a/tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards b/tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards deleted file mode 100644 index 3aa7eef..0000000 --- a/tests/cassettes/TestIDVsIntegration.test_list_idv_summary_awards +++ /dev/null @@ -1,244 +0,0 @@ -interactions: -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/vehicles/?page=1&limit=10&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date - response: - body: - string: '{"count":5874,"next":"https://tango.makegov.com/api/vehicles/?limit=10&page=2&shape=uuid%2Csolicitation_identifier%2Corganization_id%2Cawardee_count%2Corder_count%2Cvehicle_obligations%2Cvehicle_contracts_value%2Csolicitation_title%2Csolicitation_date","previous":null,"results":[{"uuid":"84d76669-61d8-5938-83fb-2d6f8a6c85b7","solicitation_identifier":"0","organization_id":"f6c88e61-3d34-5685-a5ab-670858289883","awardee_count":38,"order_count":65,"vehicle_obligations":8876449.66,"vehicle_contracts_value":9688796.56,"solicitation_title":"X1LZ--618-20-2-6190-0007 - - Service - Minneapolis VA CRRC Parking, 33 Parking Spaces - MPLS","solicitation_date":"2020-03-02"},{"uuid":"eb797c6e-6865-505e-9c71-7d0dfc3b1b35","solicitation_identifier":"0040626388","organization_id":"0d75c931-8b4e-5941-9ec3-2b35df3ea8d9","awardee_count":3,"order_count":6,"vehicle_obligations":37189.74,"vehicle_contracts_value":37189.74,"solicitation_title":"B--AZ - ES ARCHAEOLOGICAL SERVICES","solicitation_date":"2023-08-29"},{"uuid":"ef62a4f0-080a-503f-adbe-a1705ae410c0","solicitation_identifier":"05GA0A22Q0023","organization_id":"2774a854-bcf4-5d85-94c0-d715f0c1819f","awardee_count":4,"order_count":0,"vehicle_obligations":0.0,"vehicle_contracts_value":0.0,"solicitation_title":"SOLICITATION - - GAO IDIQ CONSTRUCTION SERVICES","solicitation_date":"2022-03-21"},{"uuid":"4c317645-db68-53e7-8d97-eeec38e7da2e","solicitation_identifier":"1069512","organization_id":"384a7047-2f7c-5a2f-88b0-8e47cb5f98f5","awardee_count":2,"order_count":5,"vehicle_obligations":1828095.0,"vehicle_contracts_value":1828095.0,"solicitation_title":"Intent - to Sole Source Procurement for Specific Pathogen Free (SPF) Embryonating Chicken - Eggs","solicitation_date":"2022-09-13"},{"uuid":"98718d55-29c9-56f8-9a19-058f2b6e7174","solicitation_identifier":"1131PL21RIQ71002","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":4,"order_count":6,"vehicle_obligations":332140.66,"vehicle_contracts_value":332140.66,"solicitation_title":"Monitoring - and Evaluations: Program Audit Series Services IDIQ","solicitation_date":"2021-08-06"},{"uuid":"e2b5a801-4ddd-5abe-92b4-ba1807421c8f","solicitation_identifier":"1131PL22RIQ0001","organization_id":"afcff312-fd10-5ad4-853a-83e5b0ecc2e0","awardee_count":18,"order_count":55,"vehicle_obligations":32511871.78,"vehicle_contracts_value":32687649.87,"solicitation_title":"IDIQ: - Multiple Award Contract - - Reverse Trade Missions, Conferences, Workshops, - Training, and Other Events","solicitation_date":"2022-04-08"},{"uuid":"a9df6717-67b2-51c1-9d6d-e29b1d89b4cb","solicitation_identifier":"1145PC20Q0026","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":9,"order_count":32,"vehicle_obligations":377286.14,"vehicle_contracts_value":383286.14,"solicitation_title":"Peace - Corps Background Investigators","solicitation_date":"2020-03-17"},{"uuid":"8d124a98-17f3-5143-b11a-cba33b218145","solicitation_identifier":"1145PC22Q0042","organization_id":"5b10eb83-548f-5685-b69e-c00f96ee6ff7","awardee_count":7,"order_count":18,"vehicle_obligations":116624.52,"vehicle_contracts_value":116624.52,"solicitation_title":"Language - Proficiency Interview (LPI) Tester Trainers","solicitation_date":"2022-03-28"},{"uuid":"d9351f6f-3663-5b3e-baa6-629e71f4a6ae","solicitation_identifier":"12-046W-18-Q-0056","organization_id":"2bdc6615-3582-5f85-ace9-470bf8f461f7","awardee_count":2,"order_count":2,"vehicle_obligations":35100.0,"vehicle_contracts_value":35100.0,"solicitation_title":"Trail - Maintenance/Restoration Services","solicitation_date":"2018-08-27"},{"uuid":"e9718942-c9d7-5ca7-a2e6-6eeb3a7a9d4c","solicitation_identifier":"12-04T0-18-Q-0001","organization_id":"2bdc6615-3582-5f85-ace9-470bf8f461f7","awardee_count":14,"order_count":58,"vehicle_obligations":671823.21,"vehicle_contracts_value":671823.21,"solicitation_title":"Region - 6 Coaching Services - BPA","solicitation_date":"2017-12-14"}]}' - headers: - CF-RAY: - - 9d71a7ae4ab2e892-MSP - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Wed, 04 Mar 2026 14:43:45 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=OvpmH2vExpNiPBWcdm3GAsr09aIcFhHjgQtTI6UtMZUasLRUPXpzuzxpknZ0ngfA2w3nslPnSbb1aX7%2FufUv0N0TgW%2BbFobcdPZ6imb1GThiqkTxmbxoudY9"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - allow: - - GET, HEAD, OPTIONS - cf-cache-status: - - DYNAMIC - content-length: - - '3916' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Accept, Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.022s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '1000' - x-ratelimit-burst-remaining: - - '896' - x-ratelimit-burst-reset: - - '3' - x-ratelimit-daily-limit: - - '2000000' - x-ratelimit-daily-remaining: - - '1999656' - x-ratelimit-daily-reset: - - '84964' - x-ratelimit-limit: - - '1000' - x-ratelimit-remaining: - - '896' - x-ratelimit-reset: - - '3' - status: - code: 200 - message: OK -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - host: - - tango.makegov.com - user-agent: - - python-httpx/0.28.1 - method: GET - uri: https://tango.makegov.com/api/idvs/0/summary/awards/?limit=10 - response: - body: - string: "\n\n \n \n - \ \n \n 404 - Page - Not Found | Tango by MakeGov\n \n \n \n - \ \n - \ \n \n - \ \n \n - \ \n - \ \n \n - \ \n - \ \n - \ \n - \ \n \n - \ \n \n \n \n \n \n \n Skip - to main content
\n
\n
\n - \
\n
\n
\n \n \n \n - \ \n - \ \n \n
\n - \
\n \n
\n
\n - \
\n
\n \n - \
\n
\n
\n \n
\n \n
\n \n

\"404

\n \n

Uh-oh! - Nothing here!

\n

Go - back

\n
\n \n
\n\n \n - \ \n \n\n" - headers: - CF-RAY: - - 9d71a7af1e8ae892-MSP - Connection: - - keep-alive - Content-Type: - - text/html; charset=utf-8 - Date: - - Wed, 04 Mar 2026 14:43:45 GMT - Nel: - - '{"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}' - Report-To: - - '{"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=K4YX978Y5QdYN7PdxuOgoP7dktNFnxH0T%2F3lbkIlScQMCQx17v0TtTrhqbwyFDbr9x1V%2BTKcLkJ6hK5DksN1odBzxSDQHXvGQ%2BP37yhnYlLApRWCDBX4VFt1"}]}' - Server: - - cloudflare - Transfer-Encoding: - - chunked - cf-cache-status: - - DYNAMIC - content-length: - - '7174' - cross-origin-opener-policy: - - same-origin - referrer-policy: - - same-origin - vary: - - Cookie - x-content-type-options: - - nosniff - x-execution-time: - - 0.007s - x-frame-options: - - DENY - x-ratelimit-burst-limit: - - '10' - x-ratelimit-burst-remaining: - - '10' - x-ratelimit-burst-reset: - - '0' - x-ratelimit-daily-limit: - - '100' - x-ratelimit-daily-remaining: - - '100' - x-ratelimit-daily-reset: - - '0' - x-ratelimit-limit: - - '10' - x-ratelimit-remaining: - - '10' - x-ratelimit-reset: - - '0' - status: - code: 404 - message: Not Found -version: 1 diff --git a/tests/integration/test_assistance_integration.py b/tests/integration/test_assistance_integration.py deleted file mode 100644 index 0d8a176..0000000 --- a/tests/integration/test_assistance_integration.py +++ /dev/null @@ -1,46 +0,0 @@ -"""Integration tests for assistance (financial assistance) endpoints - -Pytest Markers: - @pytest.mark.integration: Marks tests as integration tests that may hit external APIs - @pytest.mark.vcr(): Enables VCR recording/playback for HTTP interactions - -Usage: - pytest tests/integration/test_assistance_integration.py -""" - -import pytest - -from tango import TangoAPIError, TangoAuthError -from tests.integration.conftest import handle_api_exceptions -from tests.integration.validation import validate_pagination - - -@pytest.mark.vcr() -@pytest.mark.integration -class TestAssistanceIntegration: - """Integration tests for assistance transaction endpoints""" - - @handle_api_exceptions("assistance") - def test_list_assistance(self, tango_client): - """Test listing assistance transactions with production data.""" - try: - response = tango_client.list_assistance(limit=10) - except TangoAuthError: - pytest.skip( - "No matching cassette for assistance; re-record with TANGO_REFRESH_CASSETTES=1" - ) - except TangoAPIError as e: - if e.status_code == 504: - pytest.skip( - "Cassette contains 504 Gateway Timeout; re-record with " - "TANGO_REFRESH_CASSETTES=true when API is healthy." - ) - raise - - validate_pagination(response) - assert response.count >= 0 - assert isinstance(response.results, list) - - if response.results: - item = response.results[0] - assert isinstance(item, dict), "Assistance results are raw dicts" diff --git a/tests/integration/test_contracts_integration.py b/tests/integration/test_contracts_integration.py index 6babc7e..dd5f82f 100644 --- a/tests/integration/test_contracts_integration.py +++ b/tests/integration/test_contracts_integration.py @@ -26,7 +26,7 @@ import pytest -from tango import SearchFilters, ShapeConfig +from tango import SearchFilters, ShapeConfig, TangoAPIError from tests.integration.conftest import handle_api_exceptions from tests.integration.validation import ( validate_contract_fields, @@ -425,10 +425,18 @@ def test_new_fiscal_year_range_filters(self, tango_client): Validates: - Fiscal year range filters work correctly """ - response = tango_client.list_contracts(fiscal_year_gte=2020, fiscal_year_lte=2024, limit=5) - - validate_pagination(response) - # Should work without errors + try: + response = tango_client.list_contracts( + fiscal_year_gte=2020, fiscal_year_lte=2024, limit=5 + ) + validate_pagination(response) + except TangoAPIError as e: + if e.status_code == 504: + pytest.skip( + "Cassette contains 504 for fiscal year filters; re-record with " + "TANGO_REFRESH_CASSETTES=true when API is healthy." + ) + raise @handle_api_exceptions("contracts") def test_new_identifier_filters(self, tango_client): diff --git a/tests/integration/test_vehicles_idvs_integration.py b/tests/integration/test_vehicles_idvs_integration.py index 6b8360d..6f7cada 100644 --- a/tests/integration/test_vehicles_idvs_integration.py +++ b/tests/integration/test_vehicles_idvs_integration.py @@ -392,78 +392,3 @@ def test_list_idv_transactions(self, tango_client): if response.results: transaction = response.results[0] assert isinstance(transaction, dict), "Transaction should be a dictionary" - - @handle_api_exceptions("idvs") - def test_get_idv_summary(self, tango_client): - """Test getting an IDV summary by solicitation identifier - - Validates: - - Summary is returned correctly - - Response structure is valid - """ - # Use a vehicle to get solicitation_identifier (vehicles group IDVs by solicitation) - vehicles_response = tango_client.list_vehicles(limit=10) - if not vehicles_response.results: - pytest.skip("No vehicles available to test get_idv_summary") - - # Find a vehicle with a solicitation_identifier - solicitation_identifier = None - for vehicle in vehicles_response.results: - identifier = ( - vehicle.get("solicitation_identifier") - if isinstance(vehicle, dict) - else getattr(vehicle, "solicitation_identifier", None) - ) - if identifier: - solicitation_identifier = identifier - break - - if not solicitation_identifier: - pytest.skip("No vehicles with solicitation_identifier found to test get_idv_summary") - - summary = tango_client.get_idv_summary(solicitation_identifier) - - # Validate response structure - assert isinstance(summary, dict), "Summary should be a dictionary" - assert len(summary) > 0, "Summary should not be empty" - - @handle_api_exceptions("idvs") - def test_list_idv_summary_awards(self, tango_client): - """Test listing awards under an IDV summary - - Validates: - - Awards are returned correctly - - Pagination works correctly - - Response structure is valid - """ - # Use a vehicle to get solicitation_identifier (vehicles group IDVs by solicitation) - vehicles_response = tango_client.list_vehicles(limit=10) - if not vehicles_response.results: - pytest.skip("No vehicles available to test list_idv_summary_awards") - - # Find a vehicle with a solicitation_identifier - solicitation_identifier = None - for vehicle in vehicles_response.results: - identifier = ( - vehicle.get("solicitation_identifier") - if isinstance(vehicle, dict) - else getattr(vehicle, "solicitation_identifier", None) - ) - if identifier: - solicitation_identifier = identifier - break - - if not solicitation_identifier: - pytest.skip( - "No vehicles with solicitation_identifier found to test list_idv_summary_awards" - ) - - response = tango_client.list_idv_summary_awards(solicitation_identifier, limit=10) - - # Validate response structure - validate_pagination(response) - - # If we have results, validate they are dictionaries (awards don't use shape parsing) - if response.results: - award = response.results[0] - assert isinstance(award, dict), "Award should be a dictionary" diff --git a/tests/production/test_production_smoke.py b/tests/production/test_production_smoke.py index 225173f..15be48d 100644 --- a/tests/production/test_production_smoke.py +++ b/tests/production/test_production_smoke.py @@ -577,27 +577,6 @@ def test_list_naics(self, production_client): # Assistance Endpoints # ============================================================================ - @pytest.mark.skip(reason="Assistance endpoint not yet implemented in client") - @handle_rate_limit - @handle_auth_error - def test_list_assistance(self, production_client): - """Test assistance listing - - Validates: - - Assistance listing works - - Response parsing is correct - - Pagination structure is valid - """ - response = production_client.list_assistance(limit=5) - - validate_pagination(response) - assert response.count >= 0, "Count should be non-negative" - - if len(response.results) > 0: - assistance = response.results[0] - # Assistance records are returned as raw dicts - assert isinstance(assistance, dict), "Assistance should be a dict" - # ============================================================================ # Forecast Endpoints # ============================================================================ diff --git a/tests/test_client.py b/tests/test_client.py index eb95fbb..0d3c179 100644 --- a/tests/test_client.py +++ b/tests/test_client.py @@ -335,34 +335,6 @@ def test_list_subawards_with_default_shape(self, mock_request): # Default shape does not include id (API rejects it); assert on award_key assert subawards.results[0]["award_key"] == "CONT_AWD_123" - @patch("tango.client.httpx.Client.request") - def test_list_assistance(self, mock_request): - """Test list_assistance method (keyset pagination, raw results)""" - mock_response = Mock() - mock_response.is_success = True - mock_response.json.return_value = { - "count": 2, - "next": None, - "previous": None, - "results": [ - {"award_key": "ASST-1", "recipient": "Recipient A", "fiscal_year": 2024}, - {"award_key": "ASST-2", "recipient": "Recipient B", "fiscal_year": 2023}, - ], - "cursor": None, - } - mock_response.content = b'{"count": 2}' - mock_request.return_value = mock_response - - client = TangoClient(api_key="test-key") - assistance = client.list_assistance(limit=25, fiscal_year=2024) - - assert assistance.count == 2 - assert len(assistance.results) == 2 - assert assistance.results[0]["award_key"] == "ASST-1" - call_args = mock_request.call_args - assert call_args[1]["params"]["fiscal_year"] == 2024 - assert call_args[1]["params"]["limit"] == 25 - @patch("tango.client.httpx.Client.request") def test_error_handling_401(self, mock_request): """Test 401 authentication error handling"""