diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 553a159b..c9512847 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,19 +1,19 @@ lockVersion: 2.0.0 id: c48cf606-fb42-4a45-9c23-8f0555307828 management: - docChecksum: 6c80a5c3a1a288676b10856c3146c220 + docChecksum: 5cdc014e1e0db55fdd061072c1cb7a95 docVersion: 1.0.0 speakeasyVersion: 1.787.0 generationVersion: 2.914.0 - releaseVersion: 1.1.126 - configChecksum: 276752e163707095c09e1a91c01b2f99 + releaseVersion: 1.1.127 + configChecksum: dd4c63e39bf48f073622494ecad33ff7 repoURL: https://github.com/OpenRouterTeam/python-sdk.git installationURL: https://github.com/OpenRouterTeam/python-sdk.git published: true persistentEdits: - generation_id: bdd137c8-f325-4fd9-9054-1e923b9a96c5 - pristine_commit_hash: 1a9659ca8695f38619c7245fba1d613805d9ff07 - pristine_tree_hash: b9e4e3507e68ae8c19d95803f1b8f1be29acc534 + generation_id: c3181655-779b-4074-80b2-06108326d9d4 + pristine_commit_hash: ea6c63a371d99fd9bce4cfd5379ff9bf962ac2b0 + pristine_tree_hash: 70e7ff7a8cbbe388b7bc3e3e896848abdf7f9020 features: python: acceptHeaders: 3.0.0 @@ -1646,16 +1646,16 @@ trackedFiles: pristine_git_object: 63cc820d2e3f4ddaa6d42dfef4c80006f7810cb2 docs/components/createobservabilitydestinationrequest.mdx: id: 8d942a601a6e - last_write_checksum: sha1:0021248490c5090429fcd8fe25d4f0fdfcf06ac6 - pristine_git_object: d5091906ba8777d81d2771d658d463c24ce9dee9 + last_write_checksum: sha1:a266eb148b179de43a1b08282d7cadd013e5eaa1 + pristine_git_object: aa5a574f8d0f22e2a42f388ef4fe7e6164ee1c73 docs/components/createobservabilitydestinationrequesttype.mdx: id: 0cb269425077 last_write_checksum: sha1:f8608dbed4fcc4407be03f34d5a5ab50c5cd085e pristine_git_object: a3f9ac29f6a4edc5a63c4a6b18c5b86754c1f945 docs/components/createobservabilitydestinationresponse.mdx: id: ce5ac8963efc - last_write_checksum: sha1:5048d55d8a6fd21a25ed43c97ae2270b26520e10 - pristine_git_object: 11ab48b33de4baca74149e87dddc9fc943c64595 + last_write_checksum: sha1:dec84164e71bb210bcb5c4597117bb31ec4809b4 + pristine_git_object: 47ed5818928769a2664672bfd73f805f62382f72 docs/components/createpresetfrominferenceresponse.mdx: id: ed0298bf47bf last_write_checksum: sha1:01fc963af14788ca0453a09fe4f7a60e4420244a @@ -2318,8 +2318,8 @@ trackedFiles: pristine_git_object: c17bc0e827b50a77e3d2a447a32cd8d51d84d0ed docs/components/getobservabilitydestinationresponse.mdx: id: fc89b94d297e - last_write_checksum: sha1:59e4dd8c6b1ec13fde7bfbee9df6c54c2912dd40 - pristine_git_object: 15510e981d231b9251ff40f44c45d8a352669e94 + last_write_checksum: sha1:86f9c83f1b37c49ef0cb915552961ca01f614eca + pristine_git_object: 364e05408c84a0d73a9e4f9ecbb56d91afc9403f docs/components/getpresetresponse.mdx: id: c0c979f8e40b last_write_checksum: sha1:370381ce62ad520180a59c7659ba0f72a4a1cdd5 @@ -3354,8 +3354,8 @@ trackedFiles: pristine_git_object: 463ee9cd6a8eb9089700e17d1e6166d5bfb2078d docs/components/observabilityarizedestination.mdx: id: 8ab5c92ec9b5 - last_write_checksum: sha1:95a8e27c3dec38da7c3cefb0a9b5d81ae7a17c49 - pristine_git_object: f7dfaeeb2ddd051156b6f85e26dbb631495417df + last_write_checksum: sha1:c7d998de9b145c0c4e6fdd86c0c81f0b48dfed5e + pristine_git_object: a544b84189ef28ee9a9507d65db18d218c4ca606 docs/components/observabilityarizedestinationconfig.mdx: id: efaf5bfd1406 last_write_checksum: sha1:1425f56ed1f045643b3597c10f7c827969b4d2b2 @@ -3366,8 +3366,8 @@ trackedFiles: pristine_git_object: 8fb879fb1be791e16ed3c2d1340983ff3e48aca7 docs/components/observabilitybraintrustdestination.mdx: id: d4fb2aa6ff1b - last_write_checksum: sha1:96ec2b8260a2c61bb5abd296bcb2dfaad73a5998 - pristine_git_object: f569b94af75027fbc27d8774e354a86a62e2c7ce + last_write_checksum: sha1:12fe2984d21ac1937045e55eb559cfe51605870d + pristine_git_object: 3f6543347b718a55e8faf0dac85079ad7d7c2ec0 docs/components/observabilitybraintrustdestinationconfig.mdx: id: 03abfca35bdc last_write_checksum: sha1:c0ec75b1f1d28d62abe12c9ccff5d32bb98d8ad6 @@ -3378,8 +3378,8 @@ trackedFiles: pristine_git_object: 2686027052fc88669dbe1f261baacbdeed41a895 docs/components/observabilityclickhousedestination.mdx: id: 22672c72a47f - last_write_checksum: sha1:5d13e9ca0d42c51fbf913f9df79d5bbdb260b858 - pristine_git_object: 897e5e389431226ad795d73b1ed37d18a047399b + last_write_checksum: sha1:5b9c61cd615a5401dceb732985332403968183b2 + pristine_git_object: 06bb6951553af8e01844bcc1ab58d6788e18e88e docs/components/observabilityclickhousedestinationconfig.mdx: id: 31969c4f79e6 last_write_checksum: sha1:581b45aab6174219694069db5d2dd187aa3c081f @@ -3390,8 +3390,8 @@ trackedFiles: pristine_git_object: c450839c8b4d42ad1d2d075a948136c9dc9ac853 docs/components/observabilitydatadogdestination.mdx: id: 9069b48e8b03 - last_write_checksum: sha1:c47e9779e0f7428c3900f5552929662568744d6a - pristine_git_object: 1df35546bd3caa20d0672e560e4fe616598995d2 + last_write_checksum: sha1:06e01c90041761523ce59df10353c7a4f6e3b1e8 + pristine_git_object: 6a83d3ce3e7466fdbdc8f1113d1f5da8efac5704 docs/components/observabilitydatadogdestinationconfig.mdx: id: 5d9352581ce2 last_write_checksum: sha1:b55df9fe0666891c7819e80565e103b04997db73 @@ -3400,6 +3400,14 @@ trackedFiles: id: 0136bc2eef34 last_write_checksum: sha1:b1fdf5fc623076f9b5347d50743091f763fe3675 pristine_git_object: 872d16f1872c13732547fd416ec0093564931cd1 + docs/components/observabilitydataregion.mdx: + id: f801f830c1d9 + last_write_checksum: sha1:3419cfad6361bde812704e1a9d888665d8d65c6e + pristine_git_object: 454e7239c3a91825c8bf78d620db96410898ebec + docs/components/observabilitydataregioninput.mdx: + id: 056f27ff48b4 + last_write_checksum: sha1:8a5206f364d86a84e357d1ec92577bb3bf100379 + pristine_git_object: 5db8fe41e5169e7cd9c99805bb0b033f65933e07 docs/components/observabilitydestination.mdx: id: 2b5b371b62ed last_write_checksum: sha1:eb15fe342436bb49fe24b4884c5989564149716f @@ -3422,8 +3430,8 @@ trackedFiles: pristine_git_object: 842fa8f78a38e50486069046e7c2aef07997c600 docs/components/observabilitygrafanadestination.mdx: id: 933526705b96 - last_write_checksum: sha1:1d2eb05bf582f6b1edab64b3bf6482cccab2921f - pristine_git_object: f1a902bee6f72984286cd5ed37be642d9a5761cb + last_write_checksum: sha1:df449b23da58047c3c8dc468cee554bdd46efbc9 + pristine_git_object: e501c1f87831442572ec3ff07b859dd12a68f6b0 docs/components/observabilitygrafanadestinationconfig.mdx: id: 6dd26838a8ed last_write_checksum: sha1:5ecf3222dc5ab0e308e7e43fa0eea88e0c00902a @@ -3434,8 +3442,8 @@ trackedFiles: pristine_git_object: b3a87a6bd089fdda6ef0b1b82ac9a7fd7f7b8686 docs/components/observabilitylangfusedestination.mdx: id: a937f11e1a22 - last_write_checksum: sha1:18c8596bed2b8a2a7a86010a286e81a5c0be80df - pristine_git_object: 47c89946438bf569b60023cf3c43fe8ce5f78789 + last_write_checksum: sha1:b5abdd7766429ff6c07f599ef4ccefb5dce8cba3 + pristine_git_object: e2d69cf38891feb2ca7740d4a74eba886b3b252d docs/components/observabilitylangfusedestinationconfig.mdx: id: eb6d8b96b9db last_write_checksum: sha1:a272574f6faa764dbf291efe1852d5a4680c903b @@ -3446,8 +3454,8 @@ trackedFiles: pristine_git_object: 0a0ef90a75966cb1e6a01cdabca55e2854a2e65e docs/components/observabilitylangsmithdestination.mdx: id: 3c019b2baadd - last_write_checksum: sha1:d6f60dd8f5cfb5888ed59a18297b28d049a44b2f - pristine_git_object: 0d5a6498cd060aeb37839eed23ceb0de52da7b20 + last_write_checksum: sha1:b92b2a2ca695170d9d68afd83e86a803cf276e53 + pristine_git_object: e5114d4a736c95c0df14dbe602e575ee420878fb docs/components/observabilitylangsmithdestinationconfig.mdx: id: e8ba506f0bb6 last_write_checksum: sha1:9c000b6149bfe5f00602042e1a3230a72ae989eb @@ -3458,8 +3466,8 @@ trackedFiles: pristine_git_object: 4cc128c9afe496eb949236875b79455d15cc1365 docs/components/observabilitynewrelicdestination.mdx: id: 51f825f7492d - last_write_checksum: sha1:4c3df03aec007e6a22130d573035cbaf39abb7df - pristine_git_object: 7fb48f5372f6b6698cd6e6acc9047527df42ab35 + last_write_checksum: sha1:ac47eec699c5344624d53b570693be854fca187f + pristine_git_object: a95737dfb7576766cd8423ec6430b48e7a7e2cc2 docs/components/observabilitynewrelicdestinationconfig.mdx: id: 1bfa0e65f66e last_write_checksum: sha1:bb861670f63dcfdd47f92ffe04d26ce4020208be @@ -3470,8 +3478,8 @@ trackedFiles: pristine_git_object: 8f74ec6c80b673784e6663faced904afed9e73d7 docs/components/observabilityopikdestination.mdx: id: f79bf0519b07 - last_write_checksum: sha1:1719afdcb2eda0ba42ea5861dc733c1ee14bef24 - pristine_git_object: 559de2d1bd815abb5fcd446618683f456dd3d020 + last_write_checksum: sha1:89c25e966605d0c1e1532c75bbd51692d1cbf480 + pristine_git_object: cdf26b6c6363aa96c7bd89492f522afa4f2dceaf docs/components/observabilityopikdestinationconfig.mdx: id: a29272c1315e last_write_checksum: sha1:afe9c9dab6b21c068e5629c4823b09b1ce076086 @@ -3482,8 +3490,8 @@ trackedFiles: pristine_git_object: f7689374cb3fa75bfb790b12a737b10941fc9e57 docs/components/observabilityotelcollectordestination.mdx: id: fbefa5ba48da - last_write_checksum: sha1:f36ffcf2ee9d38b9b8ccb09e4af39f84dc0aca6d - pristine_git_object: bd1a83b804e1db7fdda618221e2c7f2adf66cf6d + last_write_checksum: sha1:68590e1fd879b94e64feb3eea29240ad1658de64 + pristine_git_object: 95b4bd7b665719e0d8c99cc56bde4f8c534b2ac0 docs/components/observabilityotelcollectordestinationconfig.mdx: id: 204fa4b1365b last_write_checksum: sha1:21ffeb7874cfe3cf90ee0521f3cc21a23b2c9f4b @@ -3494,8 +3502,8 @@ trackedFiles: pristine_git_object: 04d51fca83de0cd45e5341d5eafef87997644e08 docs/components/observabilityposthogdestination.mdx: id: 602ebbf459aa - last_write_checksum: sha1:efc49b1705f34883e0923ce5e56138ff022436d5 - pristine_git_object: 7e0644b0092975c5acc38b2a78aa690f4e4be9d6 + last_write_checksum: sha1:c18d820a90c8fbb3783baa3c9f30d2affdd0c829 + pristine_git_object: c3d4121e730f2e00e9425a8ff2bc3d6493de25c8 docs/components/observabilityposthogdestinationconfig.mdx: id: f70e6155227e last_write_checksum: sha1:ae7c844f4507e8fc571f10e8f23ebae6f4ef5ad9 @@ -3506,8 +3514,8 @@ trackedFiles: pristine_git_object: 15d5f4b204b6f11123e889347b9bca9d4c1bf774 docs/components/observabilityrampdestination.mdx: id: d282b8093450 - last_write_checksum: sha1:e85d680ecdeba957767c94cccf295bfe9e7f9838 - pristine_git_object: fbc07a12a949131ed034fc4e1dafbf42205f579f + last_write_checksum: sha1:55260b66db953eb221874073817ccc40a34f06e2 + pristine_git_object: 84e0fea64b575c68ec8c0625b17535dd75388a40 docs/components/observabilityrampdestinationconfig.mdx: id: 508afecc801d last_write_checksum: sha1:0303440d4c32b655e5eae672157859c3f5a3d842 @@ -3518,8 +3526,8 @@ trackedFiles: pristine_git_object: c344370154af3e48ab34d83bceeec80c163e8b4e docs/components/observabilitys3destination.mdx: id: fcfdc787f494 - last_write_checksum: sha1:8294e3c2bd2beaab8ecf202aaa961066cf3ea1d9 - pristine_git_object: 9fc291ed751e3f32abeb6b72534d2358ca6ea32b + last_write_checksum: sha1:f7a480915cc7b87a9df8ad03dfb2144b63942121 + pristine_git_object: 648c00ec513dc3f96aac38087cfb7c2481c59769 docs/components/observabilitys3destinationconfig.mdx: id: 040367f19dfe last_write_checksum: sha1:063638b494568601ae5043fa24f40cbac6a1b641 @@ -3530,8 +3538,8 @@ trackedFiles: pristine_git_object: 0ef939a6bbce82c2610a94f31a126bc62e32b382 docs/components/observabilitysentrydestination.mdx: id: 9a5494b91636 - last_write_checksum: sha1:55e0b9df295d458f8398b8655cc2c7a82660dee3 - pristine_git_object: 029bbf4a349ccac5f69a7e40f77f11b838a8c6ce + last_write_checksum: sha1:4d715b7ed93ef783d5c1c1f1fc5aef23112f96c2 + pristine_git_object: 8143111aac7af5606ee370df108724a76ccf1add docs/components/observabilitysentrydestinationconfig.mdx: id: 4b59b787f138 last_write_checksum: sha1:77957ffe6671ee13d885296e609bca1f6e6bfef9 @@ -3542,8 +3550,8 @@ trackedFiles: pristine_git_object: b4948a38975913b3ad4cd50b494566af44854935 docs/components/observabilitysnowflakedestination.mdx: id: 50eb5d73c736 - last_write_checksum: sha1:3203b625f505b5aed73a319d4e60511604cecade - pristine_git_object: 52ae75366b2042014f64fbbdc8b591770f6963ca + last_write_checksum: sha1:c947b8a48d1e8c2105606d9c26653951c8cf8745 + pristine_git_object: 712283b47b3463e807882274d9ed4e4b2963ab73 docs/components/observabilitysnowflakedestinationconfig.mdx: id: 61daa1944898 last_write_checksum: sha1:aba368fd00883f348c77fcee080414ec433a6dfe @@ -3554,8 +3562,8 @@ trackedFiles: pristine_git_object: c3cc873227fc32fff3a1aeddfe7852856057f095 docs/components/observabilityweavedestination.mdx: id: 16c45cebb51d - last_write_checksum: sha1:89a2ab7469a396877ebf757c7b18f804088e9394 - pristine_git_object: be84eb7b9d86c657a9299fdb924987d1b9cefe42 + last_write_checksum: sha1:34eb3c3e0689b67bac00542dc81b90e9c7a2835d + pristine_git_object: 418f8c17ef0e54a6ac89c1ee157a2ee915a34ab1 docs/components/observabilityweavedestinationconfig.mdx: id: 27ab1f4389f1 last_write_checksum: sha1:26f0010d5e544c9856f09b63136ff4584cc3443f @@ -3566,8 +3574,8 @@ trackedFiles: pristine_git_object: dcaffb2070e7203e06a6747111b6df950465b5ff docs/components/observabilitywebhookdestination.mdx: id: ac114793a610 - last_write_checksum: sha1:bb09f99041dfc29cf127311a66af85885ae76017 - pristine_git_object: dce0e333af029f19ad7fdce287bc0a93daca56bb + last_write_checksum: sha1:3522d6ec26eb30cb1bf514e3d3c5a8ea77927d51 + pristine_git_object: ba03c19f12d21871f2543676df45e6f705503647 docs/components/observabilitywebhookdestinationconfig.mdx: id: 3f56a0517583 last_write_checksum: sha1:50a935198381531354a979579be97e2f61f1ad46 @@ -5770,12 +5778,12 @@ trackedFiles: pristine_git_object: 510bac097152bc64d1eccad4f2a498db9bd8a86c docs/components/updateobservabilitydestinationrequest.mdx: id: b54091567003 - last_write_checksum: sha1:5e1ca1d49b7a6a202ab0c8b8aa0b4f1a78a6246d - pristine_git_object: 3ec5c2811fe63bd9ef043ad67ae775b2e77e21a8 + last_write_checksum: sha1:d878d301eca619ed7a9820c612e2e2251feaef0a + pristine_git_object: 64d0f95c5851d7c0a8f1b73958e0b2b1d396f716 docs/components/updateobservabilitydestinationresponse.mdx: id: be9661c3676e - last_write_checksum: sha1:0e661f2facf7780455f8891b4437bfa619d6f97d - pristine_git_object: d3f4360ed2bcd686b69125c549deec63dede21c9 + last_write_checksum: sha1:579f2873ba3bd2694b66d17d26e3b0e99d91f29f + pristine_git_object: f45af37c1fe62687b3c02068619b56ea1eef42d5 docs/components/updatescimgroupmappingrequest.mdx: id: 4318f4ed22f5 last_write_checksum: sha1:80947ab2421cee078a515582fc49381bfc2641a7 @@ -7106,8 +7114,8 @@ trackedFiles: pristine_git_object: 939ce50afe886df24246d91e5a037677042f06a2 docs/operations/listobservabilitydestinationsresponse.mdx: id: 7da9d153805e - last_write_checksum: sha1:6ddd543447209c7ee1e2ff8b8160bec50139b70a - pristine_git_object: 0f02272edfdbb69d0293a6ca15823737b63ef15a + last_write_checksum: sha1:23dfd2306732b9ea394b9cfa4f13f5f085cb714f + pristine_git_object: 3bddef48914f86b730061dc4a4d2890bbba4695e docs/operations/listorganizationmembersdata.mdx: id: d96ba08cbfe4 last_write_checksum: sha1:d947bba247f864f0420d6184495be6b26845a966 @@ -7594,8 +7602,8 @@ trackedFiles: pristine_git_object: 5e90344f13d6f49aa9399a4fd6bc2b870b54d348 docs/sdks/observability/README.mdx: id: 75811527e651 - last_write_checksum: sha1:8dcbcdd3a6ec358ebafd8246f0bf7bf9071c2967 - pristine_git_object: 3884960effcbf6df6d8209a716c048e265e88c5a + last_write_checksum: sha1:c834e9881bbbf35e230ebb5dc34e6635b68fb830 + pristine_git_object: 16293c505cafbccaf2f3c2480417a1c3e605f009 docs/sdks/organization/README.mdx: id: f41b85542db0 last_write_checksum: sha1:3d384483978c2c141bc145ac7bf9d8b1a4120593 @@ -7642,8 +7650,8 @@ trackedFiles: pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544 pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:7db4ebb7639dbbac84829c8de333590c35a7a444 - pristine_git_object: b61207e21f11631713adc5ed9ac893f678be8a47 + last_write_checksum: sha1:484b32af2ac7a270429e651295fa6ca6afc6c6b4 + pristine_git_object: abceeec2c564f38ef86627d6b14b6d9256ec60c2 scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:77f44b60b98bc126557ec27391f91dfba764bb54 @@ -7670,8 +7678,8 @@ trackedFiles: pristine_git_object: 86713cfea633e09d33b3d4e65281071fe20e6137 src/openrouter/_version.py: id: d8d15ad6c586 - last_write_checksum: sha1:76c3287d1ce867a3ca484ababba13c9cbfbc2252 - pristine_git_object: 96f2672085a3e8173d8d144b54c26e03594e62d9 + last_write_checksum: sha1:9d21564f850b1b655f1479a215e37a8e5a6787e6 + pristine_git_object: 057770285c66fb42877292b9000501977f9719ed src/openrouter/analytics.py: id: cb406b5aaabb last_write_checksum: sha1:1e0004d8d1d5d797e2b54cd1cabeb7f9489d08e9 @@ -7710,8 +7718,8 @@ trackedFiles: pristine_git_object: ad3d247954547814054c01989a2dff3d12b3e4e1 src/openrouter/components/__init__.py: id: 81754e97b3f4 - last_write_checksum: sha1:48f205253b200de438cc1d9c620799e193ff15e2 - pristine_git_object: f1304826cbe140e5ce661b3a95832fd5c6572459 + last_write_checksum: sha1:95c4495d8c046a9fc18dd1bf84be26231d589fab + pristine_git_object: 7e1f6f57e52a3c6defb09d972362c67b326b6225 src/openrouter/components/aabenchmarkentry.py: id: e2e0f0b48c82 last_write_checksum: sha1:fab4d9a24d2cea937bb749d46c5f83941e99d65c @@ -8442,8 +8450,8 @@ trackedFiles: pristine_git_object: d6c4a4dc73222668daddc2a1788d314ff30e8fe6 src/openrouter/components/createobservabilitydestinationrequest.py: id: 58587fb98a32 - last_write_checksum: sha1:73aa94c36e15c990e3f908e83ca40472087ddc55 - pristine_git_object: 07258838e652b2ca968c31002c3bb4adfb39ae66 + last_write_checksum: sha1:e0acb6b3d5dda9f6101b69ab9048dfea1492bb73 + pristine_git_object: a13a5ffb83c3e288d7880b855907cd5631f532d5 src/openrouter/components/createobservabilitydestinationresponse.py: id: 9a8561661e52 last_write_checksum: sha1:730054c12ad209d5f83b88825c946fd6f322e6e9 @@ -9162,20 +9170,28 @@ trackedFiles: pristine_git_object: 17e5e3520b488409523771b3af22cdd7947b8aa1 src/openrouter/components/observabilityarizedestination.py: id: 8926882c1d18 - last_write_checksum: sha1:a85ef87c067e35b9523ff45a6fe9e41b88261c4e - pristine_git_object: c5abf260ad6c6f71844eb82e14d8a69193aee82e + last_write_checksum: sha1:e5c24fa7decf77c16e36c88bddb0626d1b48e61c + pristine_git_object: ac7d28f45f6a0aa3e124df9d8d559b62dbe8e1d8 src/openrouter/components/observabilitybraintrustdestination.py: id: 432de20d1c77 - last_write_checksum: sha1:941faf4b1d9a674e1ee8e11f6a99626415ca26ce - pristine_git_object: 8d7def693da6dfb4344c32569d69f1137e9115f7 + last_write_checksum: sha1:1b4ba34a241d48930f4506aefa5b7bfc7a28feff + pristine_git_object: 2a2090608a13fdccca9ae574ce769325cdaa8a4c src/openrouter/components/observabilityclickhousedestination.py: id: 0bafb43cfee3 - last_write_checksum: sha1:012ae9d144ba1265f84466dcf1bb7ba3b16d83d1 - pristine_git_object: 61d6beb89a37b76be793621dcd483333aafada39 + last_write_checksum: sha1:a8bbf5bbb2e00bbb88c17e94447e172737c5ef7c + pristine_git_object: 96995a35ce5992c1165b0773e453a20d22b74871 src/openrouter/components/observabilitydatadogdestination.py: id: 2b99c86aa089 - last_write_checksum: sha1:75c2222de977eab98cf09dae2ff29131054da82d - pristine_git_object: fee01a534c047fd9b2ea3f4936373e86e5671dba + last_write_checksum: sha1:b36d32cbaec5869c32993d3369a8bbf5f6b78090 + pristine_git_object: 15bb944425fbfd8dd224e0bc3403b03039eb5d10 + src/openrouter/components/observabilitydataregion.py: + id: 1a40ef2157d4 + last_write_checksum: sha1:ed84f83c80c2a8f488a4f517fd76245066e820fa + pristine_git_object: 6a2781d81b482e79ed22599936378000bd23033f + src/openrouter/components/observabilitydataregioninput.py: + id: efb939ff720d + last_write_checksum: sha1:c13aa0cb9f7daecc5a926c3ae6b4bf9ba7228eb0 + pristine_git_object: 67bf6fb2c02ec68d1e21f0cf6f2b9d50466653ba src/openrouter/components/observabilitydestination.py: id: f02862444a3d last_write_checksum: sha1:182ba82fb2aee3f33a975ce8eb2ef978bc0b46d2 @@ -9194,56 +9210,56 @@ trackedFiles: pristine_git_object: 80ac61fe6a5044a15f9508a12a746b01085a558d src/openrouter/components/observabilitygrafanadestination.py: id: 36c8f26bcf6f - last_write_checksum: sha1:dbf4f9c180232602f73252ca32b683e3088ed2f7 - pristine_git_object: c132c9aa087cb43f1b6c2ef2890d14e0d8a9195c + last_write_checksum: sha1:5121ec0a9c038839ccb399961d98a9864ed039ad + pristine_git_object: d9cb96497a5c71532792bac0c6b647900697f2ab src/openrouter/components/observabilitylangfusedestination.py: id: 46cb7e3719a7 - last_write_checksum: sha1:ed3dec953ecb3b4637945a037ecc53c0cb32e338 - pristine_git_object: 1737ce962dcc5fbb10178fbb935fcfa978721cad + last_write_checksum: sha1:2ffb4e803a9635a70d332253bca72659f1714e7c + pristine_git_object: 8c87ba9928b1f756dcde2c143e50d7b502748b01 src/openrouter/components/observabilitylangsmithdestination.py: id: 90dfe215aead - last_write_checksum: sha1:d4837b1e703024aea124676338b394ec3dd999c7 - pristine_git_object: e273ba1cf5a2423c3b901f98c2d3bcd2c79c743a + last_write_checksum: sha1:3112ed17e6cb88b7c61296b54b9039b5e297e3f0 + pristine_git_object: 8abe3f213269cd30b68aa3feda5186d919b8feae src/openrouter/components/observabilitynewrelicdestination.py: id: 6294b06c08ec - last_write_checksum: sha1:7919977eecbe09b11d16303cf59c04d26e133724 - pristine_git_object: e42315690c7e95345fed0180bb254c58ce62d147 + last_write_checksum: sha1:9a004180e799bab6e844ef06c434ef47a086fa32 + pristine_git_object: 9c2fdbc3d87fc3e5bbe6d59514f9b6d43a459de8 src/openrouter/components/observabilityopikdestination.py: id: 404c6ff48b85 - last_write_checksum: sha1:fcada22ec084bbf10ceeb5606850da4a6cf13217 - pristine_git_object: abf3edd27037fa8c890541a304d0d1a2874cc100 + last_write_checksum: sha1:976c25ee69c693e8411e0dcf8d47eff9e148126e + pristine_git_object: 21f9f4b84c98895790c6878af1f9598a7af2b501 src/openrouter/components/observabilityotelcollectordestination.py: id: dc77f211456a - last_write_checksum: sha1:c27bef2ac2ff6a9936ae523570dc0a211de02428 - pristine_git_object: 4a8a8a90d6971003aee6be9a7c52fb2efbff8e94 + last_write_checksum: sha1:340ec0724399cb815e2b8ee6798ec86459c13189 + pristine_git_object: 4bfeba2149f51b3973fb7b4803884d075267d27d src/openrouter/components/observabilityposthogdestination.py: id: 3a9f4942fcf9 - last_write_checksum: sha1:4213bc26545af8314ffccc2be70e1e8d51c614b9 - pristine_git_object: 5cfe0565c2b192de4565a7711166ca2d2303da5c + last_write_checksum: sha1:55c362d48a80a8911beebce2fce2611312aa78c1 + pristine_git_object: 4ca4675c7ad92860052720cd72bfe3223333b74f src/openrouter/components/observabilityrampdestination.py: id: 8559b9e7501b - last_write_checksum: sha1:322d6a545da4a249ac70edcdab8ce986b2b71300 - pristine_git_object: 78df4a419bc3e6e4ff3f23e5b6312758a43aa7be + last_write_checksum: sha1:4e19135019b63e17c7859f544155a575825211c2 + pristine_git_object: 46783aa10a015e780debca7d530c9e6f72990a39 src/openrouter/components/observabilitys3destination.py: id: 2022d25fe7d6 - last_write_checksum: sha1:0e27a0140ebc64f326f57324878bce0b3342bf79 - pristine_git_object: f3f839f47674fcb6f506bd5f3d443af66749840d + last_write_checksum: sha1:0e63a82c7e252839ce37eb8af5ad24972262a0b2 + pristine_git_object: 6c1ef8be3e75544984003a9b8b6708e6e723207a src/openrouter/components/observabilitysentrydestination.py: id: d27b8b37d1f8 - last_write_checksum: sha1:10233f7d1df296cfdaaa9dc4f7c301865ffd0797 - pristine_git_object: 77c1359305a3d100447c48a937825ba6f797385a + last_write_checksum: sha1:46500a24d16919d7a5f104baf2c684be136280d7 + pristine_git_object: d399e852ca35e285dc2625907c935af1af75597c src/openrouter/components/observabilitysnowflakedestination.py: id: 4e4136c11a0f - last_write_checksum: sha1:a94fe17cccef92bf64332311a96b6564df36f1b0 - pristine_git_object: 077a345f0f65bd5623c85dff9d63d3811e83dea2 + last_write_checksum: sha1:db6593e37769502e38685fb3254f8308a8de9665 + pristine_git_object: 53b005e660d20b8097ba003275ecfd0373e80d11 src/openrouter/components/observabilityweavedestination.py: id: 6ee5e9677e6c - last_write_checksum: sha1:0106f8ef5183456216dd8b1afe2dfdbda2e15454 - pristine_git_object: 1fd8e8dd94d35d1da32a1584d06a882553d8c91b + last_write_checksum: sha1:f89b6ca0e6f05bdcd84affb8500dcb085f3a2cae + pristine_git_object: 41deac2556bb31e58a5b5997db25edbbb8ce50ea src/openrouter/components/observabilitywebhookdestination.py: id: 2f942be86581 - last_write_checksum: sha1:a1c44a1390c0f50a4f48f9dfddb177aa6ef62a1d - pristine_git_object: 336851b5859a7550ed7c77765e537f5bf05e2e00 + last_write_checksum: sha1:0a5f802f5b421c434e4866ed6f5cf35587563c6b + pristine_git_object: 4b30b650047dce401259616532a6cf9a27cf799b src/openrouter/components/openaifile.py: id: fd021f0cb031 last_write_checksum: sha1:b44d0b18a4c9b119382e224786191e8d5c49960b @@ -10110,8 +10126,8 @@ trackedFiles: pristine_git_object: df833960211cc7ed2a2a42fddbeafda0092e1c0c src/openrouter/components/updateobservabilitydestinationrequest.py: id: d7a39fe04386 - last_write_checksum: sha1:401e5b576f8631d08e0592b6f9af9eab602c78d4 - pristine_git_object: 2a17255000032e895ba9dc65917aa17c0f5ccef8 + last_write_checksum: sha1:47d6d5c3b92103b9544a97475598b400afc6a6a7 + pristine_git_object: 27ee1a2e485c9501db0adc25c77f8410449019ea src/openrouter/components/updateobservabilitydestinationresponse.py: id: 187c51d2b3a4 last_write_checksum: sha1:cadc62b37feddb4281e471d15627a9a1bef32cb1 @@ -10406,8 +10422,8 @@ trackedFiles: pristine_git_object: 67a8110158546a5f1ea311e63ef8d5fc1837f70b src/openrouter/observability.py: id: 6a17f32d3f33 - last_write_checksum: sha1:cfa8495534fa7d219e42cc4a2425417738279b85 - pristine_git_object: 5c553b76ab24d9eaef51c3bf6d85aa74391e335e + last_write_checksum: sha1:5ce75ba2b1beb3f44ff94ef9d2dee0e59debc0ba + pristine_git_object: 8680343bbc90107ae6413bd5686012b1fd75d665 src/openrouter/operations/__init__.py: id: 9afcea1e7161 last_write_checksum: sha1:534f35479d3f763b301b02511da7c8211209b70e @@ -11947,7 +11963,7 @@ examples: limit: 50 responses: "200": - application/json: {"data": [{"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}], "total_count": 1} + application/json: {"data": [{"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "regions": ["global"], "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}], "total_count": 1} "401": application/json: {"error": {"code": 401, "message": "Missing Authentication header"}} "500": @@ -11960,7 +11976,7 @@ examples: application/json: {"broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "enabled": true, "name": "Production Langfuse", "privacy_mode": false, "type": "langfuse"} responses: "201": - application/json: {"data": {"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}} + application/json: {"data": {"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "regions": ["global"], "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}} "400": application/json: {"error": {"code": 400, "message": "Invalid request parameters"}} "401": @@ -11992,7 +12008,7 @@ examples: id: "99999999-aaaa-bbbb-cccc-dddddddddddd" responses: "200": - application/json: {"data": {"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}} + application/json: {"data": {"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "regions": ["global"], "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}} "401": application/json: {"error": {"code": 401, "message": "Missing Authentication header"}} "404": @@ -12008,7 +12024,7 @@ examples: application/json: {} responses: "200": - application/json: {"data": {"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}} + application/json: {"data": {"api_key_hashes": null, "broadcast_generation_cost": false, "broadcast_generation_identity": false, "broadcast_generation_request_context": false, "config": {"baseUrl": "https://us.cloud.langfuse.com", "publicKey": "pk-l...EfGh", "secretKey": "sk-l...AbCd"}, "created_at": "2025-08-24T10:30:00Z", "enabled": true, "filter_rules": null, "id": "99999999-aaaa-bbbb-cccc-dddddddddddd", "name": "Production Langfuse", "privacy_mode": false, "regions": ["global"], "sampling_rate": 1, "type": "langfuse", "updated_at": "2025-08-24T15:45:00Z", "workspace_id": "550e8400-e29b-41d4-a716-446655440000"}} "400": application/json: {"error": {"code": 400, "message": "Invalid request parameters"}} "401": @@ -12870,3 +12886,4 @@ examples: "500": application/json: {"error": {"code": 500, "message": "Internal Server Error"}} examplesVersion: 1.0.2 +releaseNotes: "## Python SDK Changes:\n* `open_router.observability.list()`: `response.data[]` **Changed**\n* `open_router.observability.create()`: \n * `request.regions` **Added**\n * `response.data` **Changed**\n* `open_router.observability.get()`: `response.data` **Changed**\n* `open_router.observability.update()`: \n * `request.regions` **Added**\n * `response.data` **Changed**\n" diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 903433a0..bdb2994c 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -36,7 +36,7 @@ generation: documentation: mintlify preApplyUnionDiscriminators: true python: - version: 1.1.126 + version: 1.1.127 additionalDependencies: dev: {} main: {} diff --git a/.speakeasy/out.openapi.yaml b/.speakeasy/out.openapi.yaml index 0a396669..b9e88e47 100644 --- a/.speakeasy/out.openapi.yaml +++ b/.speakeasy/out.openapi.yaml @@ -7707,6 +7707,16 @@ components: description: 'When true, request/response bodies are not forwarded — only metadata.' example: false type: 'boolean' + regions: + default: + - 'global' + description: 'Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to [''global'']; the array must be non-empty.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegionInput' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate between 0.0001 and 1 (1 = 100%).' example: 1 @@ -7762,6 +7772,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -10154,6 +10166,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -12342,6 +12356,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -15321,6 +15337,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Arize' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'arize' updated_at: '2025-08-24T15:45:00Z' @@ -15396,6 +15414,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -15417,6 +15443,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -15447,6 +15474,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Braintrust' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'braintrust' updated_at: '2025-08-24T15:45:00Z' @@ -15517,6 +15546,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -15538,6 +15575,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -15570,6 +15608,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production ClickHouse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'clickhouse' updated_at: '2025-08-24T15:45:00Z' @@ -15649,6 +15689,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -15670,6 +15718,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -15700,6 +15749,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Datadog' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'datadog' updated_at: '2025-08-24T15:45:00Z' @@ -15773,6 +15824,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -15794,6 +15853,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -15808,6 +15868,24 @@ components: - 'type' - 'config' type: 'object' + ObservabilityDataRegion: + enum: + - 'global' + - 'europe' + - 'us' + example: 'global' + type: 'string' + x-speakeasy-unknown-values: allow + ObservabilityDataRegionInput: + description: '`eu` is accepted as an alias for `europe` and normalizes to `europe`.' + enum: + - 'global' + - 'europe' + - 'us' + - 'eu' + example: 'global' + type: 'string' + x-speakeasy-unknown-values: allow ObservabilityDestination: discriminator: mapping: @@ -15844,6 +15922,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -15977,6 +16057,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Grafana' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'grafana' updated_at: '2025-08-24T15:45:00Z' @@ -16047,6 +16129,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16068,6 +16158,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16098,6 +16189,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -16168,6 +16261,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16189,6 +16290,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16219,6 +16321,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production LangSmith' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langsmith' updated_at: '2025-08-24T15:45:00Z' @@ -16293,6 +16397,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16314,6 +16426,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16343,6 +16456,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production New Relic' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'newrelic' updated_at: '2025-08-24T15:45:00Z' @@ -16413,6 +16528,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16434,6 +16557,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16464,6 +16588,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Opik' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'opik' updated_at: '2025-08-24T15:45:00Z' @@ -16535,6 +16661,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16556,6 +16690,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16584,6 +16719,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production OTel Collector' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'otel-collector' updated_at: '2025-08-24T15:45:00Z' @@ -16646,6 +16783,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16667,6 +16812,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16696,6 +16842,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production PostHog' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'posthog' updated_at: '2025-08-24T15:45:00Z' @@ -16762,6 +16910,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16783,6 +16939,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16812,6 +16969,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Ramp' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'ramp' updated_at: '2025-08-24T15:45:00Z' @@ -16879,6 +17038,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -16900,6 +17067,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -16930,6 +17098,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production S3' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 's3' updated_at: '2025-08-24T15:45:00Z' @@ -17016,6 +17186,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -17037,6 +17215,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -17066,6 +17245,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Sentry' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'sentry' updated_at: '2025-08-24T15:45:00Z' @@ -17133,6 +17314,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -17154,6 +17343,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -17183,6 +17373,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Snowflake' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'snowflake' updated_at: '2025-08-24T15:45:00Z' @@ -17264,6 +17456,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -17285,6 +17485,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -17316,6 +17517,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Weave' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'weave' updated_at: '2025-08-24T15:45:00Z' @@ -17390,6 +17593,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -17411,6 +17622,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -17439,6 +17651,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Webhook' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'webhook' updated_at: '2025-08-24T15:45:00Z' @@ -17507,6 +17721,14 @@ components: description: 'When true, request/response bodies are not forwarded to this destination — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegion' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).' example: 1 @@ -17528,6 +17750,7 @@ components: required: - 'id' - 'workspace_id' + - 'regions' - 'name' - 'enabled' - 'privacy_mode' @@ -26544,6 +26767,14 @@ components: description: 'When true, request/response bodies are not forwarded — only metadata.' example: false type: 'boolean' + regions: + description: 'Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared.' + example: + - 'global' + items: + $ref: '#/components/schemas/ObservabilityDataRegionInput' + minItems: 1 + type: 'array' sampling_rate: description: 'Sampling rate between 0.0001 and 1 (1 = 100%).' example: 1 @@ -26567,6 +26798,8 @@ components: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -37142,6 +37375,8 @@ paths: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -37231,6 +37466,8 @@ paths: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -37386,6 +37623,8 @@ paths: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' @@ -37469,6 +37708,8 @@ paths: id: '99999999-aaaa-bbbb-cccc-dddddddddddd' name: 'Production Langfuse' privacy_mode: false + regions: + - 'global' sampling_rate: 1 type: 'langfuse' updated_at: '2025-08-24T15:45:00Z' diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index b7292613..9ee56215 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -2,8 +2,8 @@ speakeasyVersion: 1.787.0 sources: OpenRouter API: sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:359e29756fe670f1e04f2775a2ee1814e2141728d767fba72744fb59a73ce9d5 - sourceBlobDigest: sha256:0c6bdbbcf39f2eb7cb18ec81018ec47ca8ba285848184a06f803d46be51f8229 + sourceRevisionDigest: sha256:1c551d0b84d26e924c5452f814262557c0a96e368cba620cdcf637ceecfce526 + sourceBlobDigest: sha256:091a46fd737e7eaf85cd6402ec86d2106a2a753bee9cacdc64fde4523e736dc6 tags: - latest - 1.0.0 @@ -11,10 +11,10 @@ targets: open-router: source: OpenRouter API sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:359e29756fe670f1e04f2775a2ee1814e2141728d767fba72744fb59a73ce9d5 - sourceBlobDigest: sha256:0c6bdbbcf39f2eb7cb18ec81018ec47ca8ba285848184a06f803d46be51f8229 + sourceRevisionDigest: sha256:1c551d0b84d26e924c5452f814262557c0a96e368cba620cdcf637ceecfce526 + sourceBlobDigest: sha256:091a46fd737e7eaf85cd6402ec86d2106a2a753bee9cacdc64fde4523e736dc6 codeSamplesNamespace: open-router-python-code-samples - codeSamplesRevisionDigest: sha256:2cd6a99013481706110a6e2723554ce8fece2ca5ce657d8f69626c6c3e67b569 + codeSamplesRevisionDigest: sha256:cb133efca89db688166250836546ee48a832b57f77cd1559fec479ef9fe1083f workflow: workflowVersion: 1.0.0 speakeasyVersion: 1.787.0 diff --git a/RELEASES.md b/RELEASES.md index 118053c2..55ac4d04 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -2049,4 +2049,14 @@ Based on: ### Generated - [python v1.1.126] . ### Releases -- [PyPI v1.1.126] https://pypi.org/project/openrouter/1.1.126 - . \ No newline at end of file +- [PyPI v1.1.126] https://pypi.org/project/openrouter/1.1.126 - . + +## 2026-09-05 22:02:25 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v1.1.127] . +### Releases +- [PyPI v1.1.127] https://pypi.org/project/openrouter/1.1.127 - . \ No newline at end of file diff --git a/docs/components/createobservabilitydestinationrequest.mdx b/docs/components/createobservabilitydestinationrequest.mdx index d5091906..aa5a574f 100644 --- a/docs/components/createobservabilitydestinationrequest.mdx +++ b/docs/components/createobservabilitydestinationrequest.mdx @@ -4,17 +4,18 @@ title: "CreateObservabilityDestinationRequest" ## Fields -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes whose traffic is forwarded. `null` or omitted means all keys. Must contain at least one hash if provided. | null | -| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | When true, include cost and billing generation metadata. | false | -| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | When true, include identity generation metadata. | false | -| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | When true, include request-context generation metadata. | false | -| `config` | Dict[str, *Any*] | :heavy_check_mark: | Provider-specific configuration. The shape depends on `type` and is validated server-side. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | -| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether this destination should be enabled immediately. | true | -| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | Optional structured filter rules controlling which events are forwarded. | null | -| `name` | *str* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | -| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | -| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | -| `type` | [components.CreateObservabilityDestinationRequestType](../components/createobservabilitydestinationrequesttype.mdx) | :heavy_check_mark: | The destination type. Only stable destination types are accepted. | langfuse | -| `workspace_id` | *Optional[str]* | :heavy_minus_sign: | Optional workspace ID. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes whose traffic is forwarded. `null` or omitted means all keys. Must contain at least one hash if provided. | null | +| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | When true, include cost and billing generation metadata. | false | +| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | When true, include identity generation metadata. | false | +| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | When true, include request-context generation metadata. | false | +| `config` | Dict[str, *Any*] | :heavy_check_mark: | Provider-specific configuration. The shape depends on `type` and is validated server-side. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | +| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether this destination should be enabled immediately. | true | +| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | Optional structured filter rules controlling which events are forwarded. | null | +| `name` | *str* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegionInput](../components/observabilitydataregioninput.mdx)] | :heavy_minus_sign: | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty. | [
"global"
] | +| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | +| `type` | [components.CreateObservabilityDestinationRequestType](../components/createobservabilitydestinationrequesttype.mdx) | :heavy_check_mark: | The destination type. Only stable destination types are accepted. | langfuse | +| `workspace_id` | *Optional[str]* | :heavy_minus_sign: | Optional workspace ID. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/components/createobservabilitydestinationresponse.mdx b/docs/components/createobservabilitydestinationresponse.mdx index 11ab48b3..47ed5818 100644 --- a/docs/components/createobservabilitydestinationresponse.mdx +++ b/docs/components/createobservabilitydestinationresponse.mdx @@ -4,6 +4,6 @@ title: "CreateObservabilityDestinationResponse" ## Fields -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `data` | [components.ObservabilityDestination](../components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [components.ObservabilityDestination](../components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/components/getobservabilitydestinationresponse.mdx b/docs/components/getobservabilitydestinationresponse.mdx index 15510e98..364e0540 100644 --- a/docs/components/getobservabilitydestinationresponse.mdx +++ b/docs/components/getobservabilitydestinationresponse.mdx @@ -4,6 +4,6 @@ title: "GetObservabilityDestinationResponse" ## Fields -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `data` | [components.ObservabilityDestination](../components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [components.ObservabilityDestination](../components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/components/observabilityarizedestination.mdx b/docs/components/observabilityarizedestination.mdx index f7dfaeeb..a544b841 100644 --- a/docs/components/observabilityarizedestination.mdx +++ b/docs/components/observabilityarizedestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityArizeDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityArizeDestinationType](../components/observabilityarizedestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitybraintrustdestination.mdx b/docs/components/observabilitybraintrustdestination.mdx index f569b94a..3f654334 100644 --- a/docs/components/observabilitybraintrustdestination.mdx +++ b/docs/components/observabilitybraintrustdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityBraintrustDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityBraintrustDestinationType](../components/observabilitybraintrustdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilityclickhousedestination.mdx b/docs/components/observabilityclickhousedestination.mdx index 897e5e38..06bb6951 100644 --- a/docs/components/observabilityclickhousedestination.mdx +++ b/docs/components/observabilityclickhousedestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityClickhouseDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityClickhouseDestinationType](../components/observabilityclickhousedestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitydatadogdestination.mdx b/docs/components/observabilitydatadogdestination.mdx index 1df35546..6a83d3ce 100644 --- a/docs/components/observabilitydatadogdestination.mdx +++ b/docs/components/observabilitydatadogdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityDatadogDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityDatadogDestinationType](../components/observabilitydatadogdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitydataregion.mdx b/docs/components/observabilitydataregion.mdx new file mode 100644 index 00000000..454e7239 --- /dev/null +++ b/docs/components/observabilitydataregion.mdx @@ -0,0 +1,21 @@ +--- +title: "ObservabilityDataRegion" +--- + +## Example Usage + +```python +from openrouter.components import ObservabilityDataRegion + +# Open enum: unrecognized values are captured as UnrecognizedStr +value: ObservabilityDataRegion = "global" +``` + + +## Values + +This is an open enum. Unrecognized values will not fail type checks. + +- `"global"` +- `"europe"` +- `"us"` diff --git a/docs/components/observabilitydataregioninput.mdx b/docs/components/observabilitydataregioninput.mdx new file mode 100644 index 00000000..5db8fe41 --- /dev/null +++ b/docs/components/observabilitydataregioninput.mdx @@ -0,0 +1,24 @@ +--- +title: "ObservabilityDataRegionInput" +--- + +`eu` is accepted as an alias for `europe` and normalizes to `europe`. + +## Example Usage + +```python +from openrouter.components import ObservabilityDataRegionInput + +# Open enum: unrecognized values are captured as UnrecognizedStr +value: ObservabilityDataRegionInput = "global" +``` + + +## Values + +This is an open enum. Unrecognized values will not fail type checks. + +- `"global"` +- `"europe"` +- `"us"` +- `"eu"` diff --git a/docs/components/observabilitygrafanadestination.mdx b/docs/components/observabilitygrafanadestination.mdx index f1a902be..e501c1f8 100644 --- a/docs/components/observabilitygrafanadestination.mdx +++ b/docs/components/observabilitygrafanadestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityGrafanaDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityGrafanaDestinationType](../components/observabilitygrafanadestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitylangfusedestination.mdx b/docs/components/observabilitylangfusedestination.mdx index 47c89946..e2d69cf3 100644 --- a/docs/components/observabilitylangfusedestination.mdx +++ b/docs/components/observabilitylangfusedestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityLangfuseDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityLangfuseDestinationType](../components/observabilitylangfusedestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitylangsmithdestination.mdx b/docs/components/observabilitylangsmithdestination.mdx index 0d5a6498..e5114d4a 100644 --- a/docs/components/observabilitylangsmithdestination.mdx +++ b/docs/components/observabilitylangsmithdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityLangsmithDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityLangsmithDestinationType](../components/observabilitylangsmithdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitynewrelicdestination.mdx b/docs/components/observabilitynewrelicdestination.mdx index 7fb48f53..a95737df 100644 --- a/docs/components/observabilitynewrelicdestination.mdx +++ b/docs/components/observabilitynewrelicdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityNewrelicDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityNewrelicDestinationType](../components/observabilitynewrelicdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilityopikdestination.mdx b/docs/components/observabilityopikdestination.mdx index 559de2d1..cdf26b6c 100644 --- a/docs/components/observabilityopikdestination.mdx +++ b/docs/components/observabilityopikdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityOpikDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityOpikDestinationType](../components/observabilityopikdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilityotelcollectordestination.mdx b/docs/components/observabilityotelcollectordestination.mdx index bd1a83b8..95b4bd7b 100644 --- a/docs/components/observabilityotelcollectordestination.mdx +++ b/docs/components/observabilityotelcollectordestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityOtelCollectorDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityOtelCollectorDestinationType](../components/observabilityotelcollectordestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilityposthogdestination.mdx b/docs/components/observabilityposthogdestination.mdx index 7e0644b0..c3d4121e 100644 --- a/docs/components/observabilityposthogdestination.mdx +++ b/docs/components/observabilityposthogdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityPosthogDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityPosthogDestinationType](../components/observabilityposthogdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilityrampdestination.mdx b/docs/components/observabilityrampdestination.mdx index fbc07a12..84e0fea6 100644 --- a/docs/components/observabilityrampdestination.mdx +++ b/docs/components/observabilityrampdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityRampDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityRampDestinationType](../components/observabilityrampdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitys3destination.mdx b/docs/components/observabilitys3destination.mdx index 9fc291ed..648c00ec 100644 --- a/docs/components/observabilitys3destination.mdx +++ b/docs/components/observabilitys3destination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityS3Destination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityS3DestinationType](../components/observabilitys3destinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitysentrydestination.mdx b/docs/components/observabilitysentrydestination.mdx index 029bbf4a..8143111a 100644 --- a/docs/components/observabilitysentrydestination.mdx +++ b/docs/components/observabilitysentrydestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilitySentryDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilitySentryDestinationType](../components/observabilitysentrydestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitysnowflakedestination.mdx b/docs/components/observabilitysnowflakedestination.mdx index 52ae7536..712283b4 100644 --- a/docs/components/observabilitysnowflakedestination.mdx +++ b/docs/components/observabilitysnowflakedestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilitySnowflakeDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilitySnowflakeDestinationType](../components/observabilitysnowflakedestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilityweavedestination.mdx b/docs/components/observabilityweavedestination.mdx index be84eb7b..418f8c17 100644 --- a/docs/components/observabilityweavedestination.mdx +++ b/docs/components/observabilityweavedestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityWeaveDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityWeaveDestinationType](../components/observabilityweavedestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/observabilitywebhookdestination.mdx b/docs/components/observabilitywebhookdestination.mdx index dce0e333..ba03c19f 100644 --- a/docs/components/observabilitywebhookdestination.mdx +++ b/docs/components/observabilitywebhookdestination.mdx @@ -17,6 +17,7 @@ title: "ObservabilityWebhookDestination" | `id` | *str* | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | | `name` | *Nullable[str]* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | | `privacy_mode` | *bool* | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegion](../components/observabilitydataregion.mdx)] | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | | `sampling_rate` | *float* | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | | `type` | [components.ObservabilityWebhookDestinationType](../components/observabilitywebhookdestinationtype.mdx) | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | diff --git a/docs/components/updateobservabilitydestinationrequest.mdx b/docs/components/updateobservabilitydestinationrequest.mdx index 3ec5c281..64d0f95c 100644 --- a/docs/components/updateobservabilitydestinationrequest.mdx +++ b/docs/components/updateobservabilitydestinationrequest.mdx @@ -4,15 +4,16 @@ title: "UpdateObservabilityDestinationRequest" ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes. `null` clears the filter (all keys). Omitting leaves the current value. Must contain at least one hash if provided. | null | -| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | Whether to include cost and billing generation metadata. | false | -| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | Whether to include identity generation metadata. | false | -| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | Whether to include request-context generation metadata. | false | -| `config` | Dict[str, *Any*] | :heavy_minus_sign: | Provider-specific configuration fields to update. Masked values are ignored; unset fields keep their current value. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | -| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether the destination is enabled. | true | -| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | N/A | null | -| `name` | *Optional[str]* | :heavy_minus_sign: | Human-readable name for the destination. | Production Langfuse | -| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | -| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes. `null` clears the filter (all keys). Omitting leaves the current value. Must contain at least one hash if provided. | null | +| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | Whether to include cost and billing generation metadata. | false | +| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | Whether to include identity generation metadata. | false | +| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | Whether to include request-context generation metadata. | false | +| `config` | Dict[str, *Any*] | :heavy_minus_sign: | Provider-specific configuration fields to update. Masked values are ignored; unset fields keep their current value. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | +| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether the destination is enabled. | true | +| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | N/A | null | +| `name` | *Optional[str]* | :heavy_minus_sign: | Human-readable name for the destination. | Production Langfuse | +| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegionInput](../components/observabilitydataregioninput.mdx)] | :heavy_minus_sign: | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared. | [
"global"
] | +| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | \ No newline at end of file diff --git a/docs/components/updateobservabilitydestinationresponse.mdx b/docs/components/updateobservabilitydestinationresponse.mdx index d3f4360e..f45af37c 100644 --- a/docs/components/updateobservabilitydestinationresponse.mdx +++ b/docs/components/updateobservabilitydestinationresponse.mdx @@ -4,6 +4,6 @@ title: "UpdateObservabilityDestinationResponse" ## Fields -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `data` | [components.ObservabilityDestination](../components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `data` | [components.ObservabilityDestination](../components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/operations/listobservabilitydestinationsresponse.mdx b/docs/operations/listobservabilitydestinationsresponse.mdx index 0f02272e..3bddef48 100644 --- a/docs/operations/listobservabilitydestinationsresponse.mdx +++ b/docs/operations/listobservabilitydestinationsresponse.mdx @@ -4,6 +4,6 @@ title: "ListObservabilityDestinationsResponse" ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `result` | [components.ListObservabilityDestinationsResponse](../components/listobservabilitydestinationsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `result` | [components.ListObservabilityDestinationsResponse](../components/listobservabilitydestinationsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/sdks/observability/README.mdx b/docs/sdks/observability/README.mdx index 3884960e..16293c50 100644 --- a/docs/sdks/observability/README.mdx +++ b/docs/sdks/observability/README.mdx @@ -98,24 +98,25 @@ with OpenRouter( ### Parameters -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `config` | Dict[str, *Any*] | :heavy_check_mark: | Provider-specific configuration. The shape depends on `type` and is validated server-side. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | -| `name` | *str* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | -| `type` | [components.CreateObservabilityDestinationRequestType](../../components/createobservabilitydestinationrequesttype.mdx) | :heavy_check_mark: | The destination type. Only stable destination types are accepted. | langfuse | -| `http_referer` | *Optional[str]* | :heavy_minus_sign: | The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
| | -| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | -| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | -| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes whose traffic is forwarded. `null` or omitted means all keys. Must contain at least one hash if provided. | null | -| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | When true, include cost and billing generation metadata. | false | -| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | When true, include identity generation metadata. | false | -| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | When true, include request-context generation metadata. | false | -| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether this destination should be enabled immediately. | true | -| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | Optional structured filter rules controlling which events are forwarded. | null | -| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | -| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | -| `workspace_id` | *Optional[str]* | :heavy_minus_sign: | Optional workspace ID. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `config` | Dict[str, *Any*] | :heavy_check_mark: | Provider-specific configuration. The shape depends on `type` and is validated server-side. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | +| `name` | *str* | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `type` | [components.CreateObservabilityDestinationRequestType](../../components/createobservabilitydestinationrequesttype.mdx) | :heavy_check_mark: | The destination type. Only stable destination types are accepted. | langfuse | +| `http_referer` | *Optional[str]* | :heavy_minus_sign: | The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
| | +| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | +| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | +| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes whose traffic is forwarded. `null` or omitted means all keys. Must contain at least one hash if provided. | null | +| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | When true, include cost and billing generation metadata. | false | +| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | When true, include identity generation metadata. | false | +| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | When true, include request-context generation metadata. | false | +| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether this destination should be enabled immediately. | true | +| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | Optional structured filter rules controlling which events are forwarded. | null | +| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegionInput](../../components/observabilitydataregioninput.mdx)] | :heavy_minus_sign: | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty. | [
"global"
] | +| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | +| `workspace_id` | *Optional[str]* | :heavy_minus_sign: | Optional workspace ID. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | ### Response @@ -255,23 +256,24 @@ with OpenRouter( ### Parameters -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *str* | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `http_referer` | *Optional[str]* | :heavy_minus_sign: | The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
| | -| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | -| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | -| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes. `null` clears the filter (all keys). Omitting leaves the current value. Must contain at least one hash if provided. | null | -| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | Whether to include cost and billing generation metadata. | false | -| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | Whether to include identity generation metadata. | false | -| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | Whether to include request-context generation metadata. | false | -| `config` | Dict[str, *Any*] | :heavy_minus_sign: | Provider-specific configuration fields to update. Masked values are ignored; unset fields keep their current value. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | -| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether the destination is enabled. | true | -| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | N/A | null | -| `name` | *Optional[str]* | :heavy_minus_sign: | Human-readable name for the destination. | Production Langfuse | -| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | -| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `id` | *str* | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `http_referer` | *Optional[str]* | :heavy_minus_sign: | The app identifier should be your app's URL and is used as the primary identifier for rankings.
This is used to track API usage per application.
| | +| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.
| | +| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.
| | +| `api_key_hashes` | List[*str*] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes. `null` clears the filter (all keys). Omitting leaves the current value. Must contain at least one hash if provided. | null | +| `broadcast_generation_cost` | *Optional[bool]* | :heavy_minus_sign: | Whether to include cost and billing generation metadata. | false | +| `broadcast_generation_identity` | *Optional[bool]* | :heavy_minus_sign: | Whether to include identity generation metadata. | false | +| `broadcast_generation_request_context` | *Optional[bool]* | :heavy_minus_sign: | Whether to include request-context generation metadata. | false | +| `config` | Dict[str, *Any*] | :heavy_minus_sign: | Provider-specific configuration fields to update. Masked values are ignored; unset fields keep their current value. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | +| `enabled` | *Optional[bool]* | :heavy_minus_sign: | Whether the destination is enabled. | true | +| `filter_rules` | [OptionalNullable[components.ObservabilityFilterRulesConfigNullable]](../../components/observabilityfilterrulesconfignullable.mdx) | :heavy_minus_sign: | N/A | null | +| `name` | *Optional[str]* | :heavy_minus_sign: | Human-readable name for the destination. | Production Langfuse | +| `privacy_mode` | *Optional[bool]* | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | +| `regions` | List[[components.ObservabilityDataRegionInput](../../components/observabilitydataregioninput.mdx)] | :heavy_minus_sign: | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared. | [
"global"
] | +| `sampling_rate` | *Optional[float]* | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.mdx) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | ### Response diff --git a/pyproject.toml b/pyproject.toml index b61207e2..abceeec2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "openrouter" -version = "1.1.126" +version = "1.1.127" description = "Official Python Client SDK for OpenRouter." authors = [{ name = "OpenRouter" },] readme = "README-PYPI.md" diff --git a/src/openrouter/_version.py b/src/openrouter/_version.py index 96f26720..05777028 100644 --- a/src/openrouter/_version.py +++ b/src/openrouter/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "openrouter" -__version__: str = "1.1.126" +__version__: str = "1.1.127" __openapi_doc_version__: str = "1.0.0" __gen_version__: str = "2.914.0" -__user_agent__: str = "speakeasy-sdk/python 1.1.126 2.914.0 1.0.0 openrouter" +__user_agent__: str = "speakeasy-sdk/python 1.1.127 2.914.0 1.0.0 openrouter" try: if __package__ is not None: diff --git a/src/openrouter/components/__init__.py b/src/openrouter/components/__init__.py index f1304826..7e1f6f57 100644 --- a/src/openrouter/components/__init__.py +++ b/src/openrouter/components/__init__.py @@ -1937,6 +1937,8 @@ ObservabilityDatadogDestinationType, ObservabilityDatadogDestinationTypedDict, ) + from .observabilitydataregion import ObservabilityDataRegion + from .observabilitydataregioninput import ObservabilityDataRegionInput from .observabilitydestination import ( ObservabilityDestination, ObservabilityDestinationTypedDict, @@ -4590,6 +4592,8 @@ "ObservabilityClickhouseDestinationConfigTypedDict", "ObservabilityClickhouseDestinationType", "ObservabilityClickhouseDestinationTypedDict", + "ObservabilityDataRegion", + "ObservabilityDataRegionInput", "ObservabilityDatadogDestination", "ObservabilityDatadogDestinationConfig", "ObservabilityDatadogDestinationConfigTypedDict", @@ -7073,6 +7077,8 @@ "ObservabilityDatadogDestinationConfigTypedDict": ".observabilitydatadogdestination", "ObservabilityDatadogDestinationType": ".observabilitydatadogdestination", "ObservabilityDatadogDestinationTypedDict": ".observabilitydatadogdestination", + "ObservabilityDataRegion": ".observabilitydataregion", + "ObservabilityDataRegionInput": ".observabilitydataregioninput", "ObservabilityDestination": ".observabilitydestination", "ObservabilityDestinationTypedDict": ".observabilitydestination", "UnknownObservabilityDestination": ".observabilitydestination", diff --git a/src/openrouter/components/createobservabilitydestinationrequest.py b/src/openrouter/components/createobservabilitydestinationrequest.py index 07258838..a13a5ffb 100644 --- a/src/openrouter/components/createobservabilitydestinationrequest.py +++ b/src/openrouter/components/createobservabilitydestinationrequest.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregioninput import ObservabilityDataRegionInput from .observabilityfilterrulesconfignullable import ( ObservabilityFilterRulesConfigNullable, ObservabilityFilterRulesConfigNullableTypedDict, @@ -64,6 +65,8 @@ class CreateObservabilityDestinationRequestTypedDict(TypedDict): r"""Optional structured filter rules controlling which events are forwarded.""" privacy_mode: NotRequired[bool] r"""When true, request/response bodies are not forwarded — only metadata.""" + regions: NotRequired[List[ObservabilityDataRegionInput]] + r"""Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty.""" sampling_rate: NotRequired[float] r"""Sampling rate between 0.0001 and 1 (1 = 100%).""" workspace_id: NotRequired[str] @@ -101,6 +104,9 @@ class CreateObservabilityDestinationRequest(BaseModel): privacy_mode: Optional[bool] = False r"""When true, request/response bodies are not forwarded — only metadata.""" + regions: Optional[List[ObservabilityDataRegionInput]] = None + r"""Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty.""" + sampling_rate: Optional[float] = None r"""Sampling rate between 0.0001 and 1 (1 = 100%).""" @@ -118,6 +124,7 @@ def serialize_model(self, handler): "enabled", "filter_rules", "privacy_mode", + "regions", "sampling_rate", "workspace_id", ] diff --git a/src/openrouter/components/observabilityarizedestination.py b/src/openrouter/components/observabilityarizedestination.py index c5abf260..ac7d28f4 100644 --- a/src/openrouter/components/observabilityarizedestination.py +++ b/src/openrouter/components/observabilityarizedestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -79,6 +80,8 @@ class ObservabilityArizeDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityArizeDestinationType @@ -121,6 +124,9 @@ class ObservabilityArizeDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitybraintrustdestination.py b/src/openrouter/components/observabilitybraintrustdestination.py index 8d7def69..2a209060 100644 --- a/src/openrouter/components/observabilitybraintrustdestination.py +++ b/src/openrouter/components/observabilitybraintrustdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -74,6 +75,8 @@ class ObservabilityBraintrustDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityBraintrustDestinationType @@ -116,6 +119,9 @@ class ObservabilityBraintrustDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilityclickhousedestination.py b/src/openrouter/components/observabilityclickhousedestination.py index 61d6beb8..96995a35 100644 --- a/src/openrouter/components/observabilityclickhousedestination.py +++ b/src/openrouter/components/observabilityclickhousedestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -79,6 +80,8 @@ class ObservabilityClickhouseDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityClickhouseDestinationType @@ -121,6 +124,9 @@ class ObservabilityClickhouseDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitydatadogdestination.py b/src/openrouter/components/observabilitydatadogdestination.py index fee01a53..15bb9444 100644 --- a/src/openrouter/components/observabilitydatadogdestination.py +++ b/src/openrouter/components/observabilitydatadogdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -78,6 +79,8 @@ class ObservabilityDatadogDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityDatadogDestinationType @@ -120,6 +123,9 @@ class ObservabilityDatadogDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitydataregion.py b/src/openrouter/components/observabilitydataregion.py new file mode 100644 index 00000000..6a2781d8 --- /dev/null +++ b/src/openrouter/components/observabilitydataregion.py @@ -0,0 +1,15 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from openrouter.types import UnrecognizedStr +from typing import Literal, Union + + +ObservabilityDataRegion = Union[ + Literal[ + "global", + "europe", + "us", + ], + UnrecognizedStr, +] diff --git a/src/openrouter/components/observabilitydataregioninput.py b/src/openrouter/components/observabilitydataregioninput.py new file mode 100644 index 00000000..67bf6fb2 --- /dev/null +++ b/src/openrouter/components/observabilitydataregioninput.py @@ -0,0 +1,17 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from openrouter.types import UnrecognizedStr +from typing import Literal, Union + + +ObservabilityDataRegionInput = Union[ + Literal[ + "global", + "europe", + "us", + "eu", + ], + UnrecognizedStr, +] +r"""`eu` is accepted as an alias for `europe` and normalizes to `europe`.""" diff --git a/src/openrouter/components/observabilitygrafanadestination.py b/src/openrouter/components/observabilitygrafanadestination.py index c132c9aa..d9cb9649 100644 --- a/src/openrouter/components/observabilitygrafanadestination.py +++ b/src/openrouter/components/observabilitygrafanadestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -74,6 +75,8 @@ class ObservabilityGrafanaDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityGrafanaDestinationType @@ -116,6 +119,9 @@ class ObservabilityGrafanaDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitylangfusedestination.py b/src/openrouter/components/observabilitylangfusedestination.py index 1737ce96..8c87ba99 100644 --- a/src/openrouter/components/observabilitylangfusedestination.py +++ b/src/openrouter/components/observabilitylangfusedestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -74,6 +75,8 @@ class ObservabilityLangfuseDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityLangfuseDestinationType @@ -116,6 +119,9 @@ class ObservabilityLangfuseDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitylangsmithdestination.py b/src/openrouter/components/observabilitylangsmithdestination.py index e273ba1c..8abe3f21 100644 --- a/src/openrouter/components/observabilitylangsmithdestination.py +++ b/src/openrouter/components/observabilitylangsmithdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -79,6 +80,8 @@ class ObservabilityLangsmithDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityLangsmithDestinationType @@ -121,6 +124,9 @@ class ObservabilityLangsmithDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitynewrelicdestination.py b/src/openrouter/components/observabilitynewrelicdestination.py index e4231569..9c2fdbc3 100644 --- a/src/openrouter/components/observabilitynewrelicdestination.py +++ b/src/openrouter/components/observabilitynewrelicdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -78,6 +79,8 @@ class ObservabilityNewrelicDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityNewrelicDestinationType @@ -120,6 +123,9 @@ class ObservabilityNewrelicDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilityopikdestination.py b/src/openrouter/components/observabilityopikdestination.py index abf3edd2..21f9f4b8 100644 --- a/src/openrouter/components/observabilityopikdestination.py +++ b/src/openrouter/components/observabilityopikdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -72,6 +73,8 @@ class ObservabilityOpikDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityOpikDestinationType @@ -114,6 +117,9 @@ class ObservabilityOpikDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilityotelcollectordestination.py b/src/openrouter/components/observabilityotelcollectordestination.py index 4a8a8a90..4bfeba21 100644 --- a/src/openrouter/components/observabilityotelcollectordestination.py +++ b/src/openrouter/components/observabilityotelcollectordestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -65,6 +66,8 @@ class ObservabilityOtelCollectorDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityOtelCollectorDestinationType @@ -107,6 +110,9 @@ class ObservabilityOtelCollectorDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilityposthogdestination.py b/src/openrouter/components/observabilityposthogdestination.py index 5cfe0565..4ca4675c 100644 --- a/src/openrouter/components/observabilityposthogdestination.py +++ b/src/openrouter/components/observabilityposthogdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -69,6 +70,8 @@ class ObservabilityPosthogDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityPosthogDestinationType @@ -111,6 +114,9 @@ class ObservabilityPosthogDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilityrampdestination.py b/src/openrouter/components/observabilityrampdestination.py index 78df4a41..46783aa1 100644 --- a/src/openrouter/components/observabilityrampdestination.py +++ b/src/openrouter/components/observabilityrampdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -73,6 +74,8 @@ class ObservabilityRampDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityRampDestinationType @@ -115,6 +118,9 @@ class ObservabilityRampDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitys3destination.py b/src/openrouter/components/observabilitys3destination.py index f3f839f4..6c1ef8be 100644 --- a/src/openrouter/components/observabilitys3destination.py +++ b/src/openrouter/components/observabilitys3destination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -95,6 +96,8 @@ class ObservabilityS3DestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityS3DestinationType @@ -137,6 +140,9 @@ class ObservabilityS3Destination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitysentrydestination.py b/src/openrouter/components/observabilitysentrydestination.py index 77c13593..d399e852 100644 --- a/src/openrouter/components/observabilitysentrydestination.py +++ b/src/openrouter/components/observabilitysentrydestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -69,6 +70,8 @@ class ObservabilitySentryDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilitySentryDestinationType @@ -111,6 +114,9 @@ class ObservabilitySentryDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitysnowflakedestination.py b/src/openrouter/components/observabilitysnowflakedestination.py index 077a345f..53b005e6 100644 --- a/src/openrouter/components/observabilitysnowflakedestination.py +++ b/src/openrouter/components/observabilitysnowflakedestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -81,6 +82,8 @@ class ObservabilitySnowflakeDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilitySnowflakeDestinationType @@ -123,6 +126,9 @@ class ObservabilitySnowflakeDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilityweavedestination.py b/src/openrouter/components/observabilityweavedestination.py index 1fd8e8dd..41deac25 100644 --- a/src/openrouter/components/observabilityweavedestination.py +++ b/src/openrouter/components/observabilityweavedestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -77,6 +78,8 @@ class ObservabilityWeaveDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityWeaveDestinationType @@ -119,6 +122,9 @@ class ObservabilityWeaveDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/observabilitywebhookdestination.py b/src/openrouter/components/observabilitywebhookdestination.py index 336851b5..4b30b650 100644 --- a/src/openrouter/components/observabilitywebhookdestination.py +++ b/src/openrouter/components/observabilitywebhookdestination.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregion import ObservabilityDataRegion from .observabilityfilterrulesconfig import ( ObservabilityFilterRulesConfig, ObservabilityFilterRulesConfigTypedDict, @@ -75,6 +76,8 @@ class ObservabilityWebhookDestinationTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" type: ObservabilityWebhookDestinationType @@ -117,6 +120,9 @@ class ObservabilityWebhookDestination(BaseModel): privacy_mode: bool r"""When true, request/response bodies are not forwarded to this destination — only metadata.""" + regions: List[ObservabilityDataRegion] + r"""Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region.""" + sampling_rate: float r"""Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%).""" diff --git a/src/openrouter/components/updateobservabilitydestinationrequest.py b/src/openrouter/components/updateobservabilitydestinationrequest.py index 2a172550..27ee1a2e 100644 --- a/src/openrouter/components/updateobservabilitydestinationrequest.py +++ b/src/openrouter/components/updateobservabilitydestinationrequest.py @@ -1,6 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .observabilitydataregioninput import ObservabilityDataRegionInput from .observabilityfilterrulesconfignullable import ( ObservabilityFilterRulesConfigNullable, ObservabilityFilterRulesConfigNullableTypedDict, @@ -35,6 +36,8 @@ class UpdateObservabilityDestinationRequestTypedDict(TypedDict): r"""Human-readable name for the destination.""" privacy_mode: NotRequired[bool] r"""When true, request/response bodies are not forwarded — only metadata.""" + regions: NotRequired[List[ObservabilityDataRegionInput]] + r"""Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared.""" sampling_rate: NotRequired[float] r"""Sampling rate between 0.0001 and 1 (1 = 100%).""" @@ -66,6 +69,9 @@ class UpdateObservabilityDestinationRequest(BaseModel): privacy_mode: Optional[bool] = None r"""When true, request/response bodies are not forwarded — only metadata.""" + regions: Optional[List[ObservabilityDataRegionInput]] = None + r"""Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared.""" + sampling_rate: Optional[float] = None r"""Sampling rate between 0.0001 and 1 (1 = 100%).""" @@ -82,6 +88,7 @@ def serialize_model(self, handler): "filter_rules", "name", "privacy_mode", + "regions", "sampling_rate", ] ) diff --git a/src/openrouter/observability.py b/src/openrouter/observability.py index 5c553b76..8680343b 100644 --- a/src/openrouter/observability.py +++ b/src/openrouter/observability.py @@ -373,6 +373,7 @@ def create( ] ] = UNSET, privacy_mode: Optional[bool] = False, + regions: Optional[Iterable[components.ObservabilityDataRegionInput]] = None, sampling_rate: Optional[float] = None, workspace_id: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, @@ -401,6 +402,7 @@ def create( :param enabled: Whether this destination should be enabled immediately. :param filter_rules: Optional structured filter rules controlling which events are forwarded. :param privacy_mode: When true, request/response bodies are not forwarded — only metadata. + :param regions: Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty. :param sampling_rate: Sampling rate between 0.0001 and 1 (1 = 100%). :param workspace_id: Optional workspace ID. Defaults to the authenticated entity's default workspace. :param retries: Override the default retry configuration for this method @@ -437,6 +439,9 @@ def create( ), name=name, privacy_mode=privacy_mode, + regions=utils.unmarshal( + regions, Optional[List[components.ObservabilityDataRegionInput]] + ), sampling_rate=sampling_rate, type=type_, workspace_id=workspace_id, @@ -565,6 +570,7 @@ async def create_async( ] ] = UNSET, privacy_mode: Optional[bool] = False, + regions: Optional[Iterable[components.ObservabilityDataRegionInput]] = None, sampling_rate: Optional[float] = None, workspace_id: Optional[str] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, @@ -593,6 +599,7 @@ async def create_async( :param enabled: Whether this destination should be enabled immediately. :param filter_rules: Optional structured filter rules controlling which events are forwarded. :param privacy_mode: When true, request/response bodies are not forwarded — only metadata. + :param regions: Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty. :param sampling_rate: Sampling rate between 0.0001 and 1 (1 = 100%). :param workspace_id: Optional workspace ID. Defaults to the authenticated entity's default workspace. :param retries: Override the default retry configuration for this method @@ -629,6 +636,9 @@ async def create_async( ), name=name, privacy_mode=privacy_mode, + regions=utils.unmarshal( + regions, Optional[List[components.ObservabilityDataRegionInput]] + ), sampling_rate=sampling_rate, type=type_, workspace_id=workspace_id, @@ -1277,6 +1287,7 @@ def update( ] = UNSET, name: Optional[str] = None, privacy_mode: Optional[bool] = None, + regions: Optional[Iterable[components.ObservabilityDataRegionInput]] = None, sampling_rate: Optional[float] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -1304,6 +1315,7 @@ def update( :param filter_rules: :param name: Human-readable name for the destination. :param privacy_mode: When true, request/response bodies are not forwarded — only metadata. + :param regions: Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared. :param sampling_rate: Sampling rate between 0.0001 and 1 (1 = 100%). :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -1340,6 +1352,9 @@ def update( ), name=name, privacy_mode=privacy_mode, + regions=utils.unmarshal( + regions, Optional[List[components.ObservabilityDataRegionInput]] + ), sampling_rate=sampling_rate, ), ) @@ -1471,6 +1486,7 @@ async def update_async( ] = UNSET, name: Optional[str] = None, privacy_mode: Optional[bool] = None, + regions: Optional[Iterable[components.ObservabilityDataRegionInput]] = None, sampling_rate: Optional[float] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, @@ -1498,6 +1514,7 @@ async def update_async( :param filter_rules: :param name: Human-readable name for the destination. :param privacy_mode: When true, request/response bodies are not forwarded — only metadata. + :param regions: Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared. :param sampling_rate: Sampling rate between 0.0001 and 1 (1 = 100%). :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -1534,6 +1551,9 @@ async def update_async( ), name=name, privacy_mode=privacy_mode, + regions=utils.unmarshal( + regions, Optional[List[components.ObservabilityDataRegionInput]] + ), sampling_rate=sampling_rate, ), ) diff --git a/uv.lock b/uv.lock index 5303c0f2..edc64982 100644 --- a/uv.lock +++ b/uv.lock @@ -213,7 +213,7 @@ wheels = [ [[package]] name = "openrouter" -version = "1.1.126" +version = "1.1.127" source = { editable = "." } dependencies = [ { name = "httpcore" },