viio-sync-api-sdk 0.3.0__tar.gz → 0.4.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. viio_sync_api_sdk-0.4.0/CHANGELOG.md +42 -0
  2. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/PKG-INFO +1 -1
  3. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/pyproject.toml +1 -1
  4. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/_client.py +1 -0
  5. viio_sync_api_sdk-0.4.0/src/viio_sync_api/v1/anthropic_pb2.py +62 -0
  6. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/anthropic_pb2.pyi +1 -1
  7. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/anthropic_pb2_grpc.py +1 -1
  8. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/bamboo_hr_pb2_grpc.py +1 -1
  9. viio_sync_api_sdk-0.4.0/src/viio_sync_api/v1/contracts_pb2.py +172 -0
  10. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/contracts_pb2.pyi +50 -8
  11. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/contracts_pb2_grpc.py +1 -1
  12. viio_sync_api_sdk-0.4.0/src/viio_sync_api/v1/focus_pb2.py +42 -0
  13. viio_sync_api_sdk-0.4.0/src/viio_sync_api/v1/focus_pb2.pyi +137 -0
  14. viio_sync_api_sdk-0.4.0/src/viio_sync_api/v1/focus_pb2_grpc.py +24 -0
  15. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/generic_pb2_grpc.py +1 -1
  16. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/google_pb2_grpc.py +1 -1
  17. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/microsoft_pb2_grpc.py +1 -1
  18. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/okta_pb2_grpc.py +1 -1
  19. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/openai_pb2_grpc.py +1 -1
  20. viio_sync_api_sdk-0.3.0/CHANGELOG.md +0 -35
  21. viio_sync_api_sdk-0.3.0/src/viio_sync_api/v1/anthropic_pb2.py +0 -62
  22. viio_sync_api_sdk-0.3.0/src/viio_sync_api/v1/contracts_pb2.py +0 -161
  23. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/.gitignore +0 -0
  24. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/LICENSE +0 -0
  25. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/README.md +0 -0
  26. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/examples/__init__.py +0 -0
  27. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/examples/aws_lambda.py +0 -0
  28. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/examples/requirements.txt +0 -0
  29. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/examples/template.yaml +0 -0
  30. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/__init__.py +0 -0
  31. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/_auth.py +0 -0
  32. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/_endpoint.py +0 -0
  33. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/_errors.py +0 -0
  34. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/_options.py +0 -0
  35. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/_transport.py +0 -0
  36. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/py.typed +0 -0
  37. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/__init__.py +0 -0
  38. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/bamboo_hr_pb2.py +0 -0
  39. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/bamboo_hr_pb2.pyi +0 -0
  40. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/generic_pb2.py +0 -0
  41. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/generic_pb2.pyi +0 -0
  42. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/google_pb2.py +0 -0
  43. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/google_pb2.pyi +0 -0
  44. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/microsoft_pb2.py +0 -0
  45. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/microsoft_pb2.pyi +0 -0
  46. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/okta_pb2.py +0 -0
  47. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/okta_pb2.pyi +0 -0
  48. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/openai_pb2.py +0 -0
  49. {viio_sync_api_sdk-0.3.0 → viio_sync_api_sdk-0.4.0}/src/viio_sync_api/v1/openai_pb2.pyi +0 -0
@@ -0,0 +1,42 @@
1
+ # Changelog
2
+
3
+ ## [0.4.0](https://github.com/viio-io/integration-domain/compare/viio-sync-api-sdk-v0.3.0...viio-sync-api-sdk-v0.4.0) (2026-09-21)
4
+
5
+ ### Features
6
+
7
+ - ingest AWS cloud cost in FOCUS format through the Sync API ([#2466](https://github.com/viio-io/integration-domain/issues/2466)) ([898b8a1](https://github.com/viio-io/integration-domain/commit/898b8a1897c8e6fb5f8e4e8d45801f23f906460e))
8
+ - rename Anthropic messages usage contract ([#2512](https://github.com/viio-io/integration-domain/issues/2512)) ([1d555a4](https://github.com/viio-io/integration-domain/commit/1d555a4e03860e22c2c715fe92a5035e1ea7f4a4))
9
+ - **Slack:** survey bot users fetcher with a Slack account flag, safe for two installations ([#2474](https://github.com/viio-io/integration-domain/issues/2474)) ([f559468](https://github.com/viio-io/integration-domain/commit/f5594684ca1aec8499dd3bc415032e8769dc4e11))
10
+
11
+ ### Bugfixes
12
+
13
+ - rename the Slack surveys account flag to hasAppInstalled ([#2491](https://github.com/viio-io/integration-domain/issues/2491)) ([8a9afd0](https://github.com/viio-io/integration-domain/commit/8a9afd06ccc7af4a32c7247d6a8769a4c0949622))
14
+
15
+ ## [0.3.0](https://github.com/viio-io/integration-domain/compare/viio-sync-api-sdk-v0.2.0...viio-sync-api-sdk-v0.3.0) (2026-09-08)
16
+
17
+ ### Features
18
+
19
+ - publish OpenAI organization usage ([#2422](https://github.com/viio-io/integration-domain/issues/2422)) ([91c0410](https://github.com/viio-io/integration-domain/commit/91c04108cd7cc7e25b62738bbd43dbe0557ac234))
20
+
21
+ ### Bugfixes
22
+
23
+ - **sync-api:** let Google employees have no family name ([#2362](https://github.com/viio-io/integration-domain/issues/2362)) ([2a106eb](https://github.com/viio-io/integration-domain/commit/2a106eb8afedf565dfbd45c5d29043fe01a6ef0a))
24
+
25
+ ## [0.2.0](https://github.com/viio-io/integration-domain/compare/viio-sync-api-sdk-v0.1.0...viio-sync-api-sdk-v0.2.0) (2026-08-05)
26
+
27
+ ### Features
28
+
29
+ - **sync-api:** add Microsoft audit log details ([#2338](https://github.com/viio-io/integration-domain/issues/2338)) ([2eb24b4](https://github.com/viio-io/integration-domain/commit/2eb24b4e03a1d60099ca54cc179a5a48a3e1442d))
30
+ - **sync-api:** add optional account type to the Account contract ([#2331](https://github.com/viio-io/integration-domain/issues/2331)) ([4c734c5](https://github.com/viio-io/integration-domain/commit/4c734c5e39c47886978e785bc4fb5ff20898d0ec)), closes [#2328](https://github.com/viio-io/integration-domain/issues/2328)
31
+
32
+ ### Bugfixes
33
+
34
+ - **sync-api-sdk:** repair release publishing ([#2323](https://github.com/viio-io/integration-domain/issues/2323)) ([9510126](https://github.com/viio-io/integration-domain/commit/9510126bf2541a781c8abdc742142c6b81ce7de6))
35
+
36
+ ## 0.1.0 (2026-07-31)
37
+
38
+ ### Features
39
+
40
+ - **sync-api:** add Python SDK ([#2313](https://github.com/viio-io/integration-domain/issues/2313)) ([dbbfcf5](https://github.com/viio-io/integration-domain/commit/dbbfcf585dc9d99f71fba6e1ef1d3c4e5f57f9f5))
41
+
42
+ ## Changelog
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: viio-sync-api-sdk
3
- Version: 0.3.0
3
+ Version: 0.4.0
4
4
  Summary: Async Python SDK for the Viio Sync API
5
5
  Project-URL: Documentation, https://developers.viio.io/sync-api
6
6
  Project-URL: Changelog, https://developers.viio.io/sync-api
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "viio-sync-api-sdk"
7
- version = "0.3.0"
7
+ version = "0.4.0"
8
8
  description = "Async Python SDK for the Viio Sync API"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -36,6 +36,7 @@ _TYPED_WRAPPERS = (
36
36
  "audit_logs",
37
37
  "ai_usage",
38
38
  "ai_costs",
39
+ "cloud_costs",
39
40
  )
40
41
 
41
42
 
@@ -0,0 +1,62 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: viio/sync/v1/anthropic.proto
5
+ # Protobuf Python Version: 7.35.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 7,
15
+ 35,
16
+ 1,
17
+ '',
18
+ 'viio/sync/v1/anthropic.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
26
+
27
+
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cviio/sync/v1/anthropic.proto\x12\x0cviio.sync.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\xa8\x05\n\x16\x41nthropicMessagesUsage\x12/\n\x0bstarting_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\tending_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\naccount_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x17\n\napi_key_id\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x12service_account_id\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x0cworkspace_id\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x12\n\x05model\x18\x07 \x01(\tH\x04\x88\x01\x01\x12\x19\n\x0cservice_tier\x18\x08 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0e\x63ontext_window\x18\t \x01(\tH\x06\x88\x01\x01\x12\x1a\n\rinference_geo\x18\n \x01(\tH\x07\x88\x01\x01\x12\x1d\n\x15uncached_input_tokens\x18\x0b \x01(\x03\x12\x1f\n\x17\x63\x61\x63he_read_input_tokens\x18\x0c \x01(\x03\x12\x15\n\routput_tokens\x18\r \x01(\x03\x12<\n\x0e\x63\x61\x63he_creation\x18\x0e \x01(\x0b\x32$.viio.sync.v1.AnthropicCacheCreation\x12=\n\x0fserver_tool_use\x18\x0f \x01(\x0b\x32$.viio.sync.v1.AnthropicServerToolUseB\r\n\x0b_account_idB\r\n\x0b_api_key_idB\x15\n\x13_service_account_idB\x0f\n\r_workspace_idB\x08\n\x06_modelB\x0f\n\r_service_tierB\x11\n\x0f_context_windowB\x10\n\x0e_inference_geo\"^\n\x16\x41nthropicCacheCreation\x12!\n\x19\x65phemeral_1h_input_tokens\x18\x01 \x01(\x03\x12!\n\x19\x65phemeral_5m_input_tokens\x18\x02 \x01(\x03\"5\n\x16\x41nthropicServerToolUse\x12\x1b\n\x13web_search_requests\x18\x01 \x01(\x03\"\xdd\x03\n\rAnthropicCost\x12/\n\x0bstarting_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\tending_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06\x61mount\x18\x03 \x01(\t\x12\x10\n\x08\x63urrency\x18\x04 \x01(\t\x12\x19\n\x0cworkspace_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x16\n\tcost_type\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x17\n\ntoken_type\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x12\n\x05model\x18\t \x01(\tH\x04\x88\x01\x01\x12\x19\n\x0cservice_tier\x18\n \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0e\x63ontext_window\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x1a\n\rinference_geo\x18\x0c \x01(\tH\x07\x88\x01\x01\x42\x0f\n\r_workspace_idB\x0e\n\x0c_descriptionB\x0c\n\n_cost_typeB\r\n\x0b_token_typeB\x08\n\x06_modelB\x0f\n\r_service_tierB\x11\n\x0f_context_windowB\x10\n\x0e_inference_geo\"\x92\x04\n\x18\x41nthropicClaudeCodeUsage\x12(\n\x04\x64\x61te\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x05\x61\x63tor\x18\x02 \x01(\x0b\x32&.viio.sync.v1.AnthropicClaudeCodeActor\x12\x1c\n\x0forganization_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rcustomer_type\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1e\n\x11subscription_type\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rterminal_type\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x42\n\x0c\x63ore_metrics\x18\x07 \x01(\x0b\x32,.viio.sync.v1.AnthropicClaudeCodeCoreMetrics\x12\x42\n\x0ctool_actions\x18\x08 \x01(\x0b\x32,.viio.sync.v1.AnthropicClaudeCodeToolActions\x12I\n\x10model_breakdowns\x18\t \x03(\x0b\x32/.viio.sync.v1.AnthropicClaudeCodeModelBreakdownB\x12\n\x10_organization_idB\x10\n\x0e_customer_typeB\x14\n\x12_subscription_typeB\x10\n\x0e_terminal_type\"\x82\x01\n\x18\x41nthropicClaudeCodeActor\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x1a\n\remail_address\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0c\x61pi_key_name\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_email_addressB\x0f\n\r_api_key_name\"\xc1\x01\n\x1e\x41nthropicClaudeCodeCoreMetrics\x12\x14\n\x0cnum_sessions\x18\x01 \x01(\x03\x12\x43\n\rlines_of_code\x18\x02 \x01(\x0b\x32,.viio.sync.v1.AnthropicClaudeCodeLinesOfCode\x12\x1e\n\x16\x63ommits_by_claude_code\x18\x03 \x01(\x03\x12$\n\x1cpull_requests_by_claude_code\x18\x04 \x01(\x03\"@\n\x1e\x41nthropicClaudeCodeLinesOfCode\x12\r\n\x05\x61\x64\x64\x65\x64\x18\x01 \x01(\x03\x12\x0f\n\x07removed\x18\x02 \x01(\x03\"\xb0\x02\n\x1e\x41nthropicClaudeCodeToolActions\x12>\n\tedit_tool\x18\x01 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\x12\x44\n\x0fmulti_edit_tool\x18\x02 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\x12?\n\nwrite_tool\x18\x03 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\x12G\n\x12notebook_edit_tool\x18\x04 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\"C\n\x1d\x41nthropicClaudeCodeToolAction\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x01 \x01(\x03\x12\x10\n\x08rejected\x18\x02 \x01(\x03\"\xb3\x01\n!AnthropicClaudeCodeModelBreakdown\x12\r\n\x05model\x18\x01 \x01(\t\x12\x37\n\x06tokens\x18\x02 \x01(\x0b\x32\'.viio.sync.v1.AnthropicClaudeCodeTokens\x12\x46\n\x0e\x65stimated_cost\x18\x03 \x01(\x0b\x32..viio.sync.v1.AnthropicClaudeCodeEstimatedCost\"f\n\x19\x41nthropicClaudeCodeTokens\x12\r\n\x05input\x18\x01 \x01(\x03\x12\x0e\n\x06output\x18\x02 \x01(\x03\x12\x12\n\ncache_read\x18\x03 \x01(\x03\x12\x16\n\x0e\x63\x61\x63he_creation\x18\x04 \x01(\x03\"D\n AnthropicClaudeCodeEstimatedCost\x12\x10\n\x08\x63urrency\x18\x01 \x01(\t\x12\x0e\n\x06\x61mount\x18\x02 \x01(\x03\x42\x1c\xaa\x02\x19Viio.SyncApi.V1.Contractsb\x06proto3')
29
+
30
+ _globals = globals()
31
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
32
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'viio.sync.v1.anthropic_pb2', _globals)
33
+ if not _descriptor._USE_C_DESCRIPTORS:
34
+ _globals['DESCRIPTOR']._loaded_options = None
35
+ _globals['DESCRIPTOR']._serialized_options = b'\252\002\031Viio.SyncApi.V1.Contracts'
36
+ _globals['_ANTHROPICMESSAGESUSAGE']._serialized_start=80
37
+ _globals['_ANTHROPICMESSAGESUSAGE']._serialized_end=760
38
+ _globals['_ANTHROPICCACHECREATION']._serialized_start=762
39
+ _globals['_ANTHROPICCACHECREATION']._serialized_end=856
40
+ _globals['_ANTHROPICSERVERTOOLUSE']._serialized_start=858
41
+ _globals['_ANTHROPICSERVERTOOLUSE']._serialized_end=911
42
+ _globals['_ANTHROPICCOST']._serialized_start=914
43
+ _globals['_ANTHROPICCOST']._serialized_end=1391
44
+ _globals['_ANTHROPICCLAUDECODEUSAGE']._serialized_start=1394
45
+ _globals['_ANTHROPICCLAUDECODEUSAGE']._serialized_end=1924
46
+ _globals['_ANTHROPICCLAUDECODEACTOR']._serialized_start=1927
47
+ _globals['_ANTHROPICCLAUDECODEACTOR']._serialized_end=2057
48
+ _globals['_ANTHROPICCLAUDECODECOREMETRICS']._serialized_start=2060
49
+ _globals['_ANTHROPICCLAUDECODECOREMETRICS']._serialized_end=2253
50
+ _globals['_ANTHROPICCLAUDECODELINESOFCODE']._serialized_start=2255
51
+ _globals['_ANTHROPICCLAUDECODELINESOFCODE']._serialized_end=2319
52
+ _globals['_ANTHROPICCLAUDECODETOOLACTIONS']._serialized_start=2322
53
+ _globals['_ANTHROPICCLAUDECODETOOLACTIONS']._serialized_end=2626
54
+ _globals['_ANTHROPICCLAUDECODETOOLACTION']._serialized_start=2628
55
+ _globals['_ANTHROPICCLAUDECODETOOLACTION']._serialized_end=2695
56
+ _globals['_ANTHROPICCLAUDECODEMODELBREAKDOWN']._serialized_start=2698
57
+ _globals['_ANTHROPICCLAUDECODEMODELBREAKDOWN']._serialized_end=2877
58
+ _globals['_ANTHROPICCLAUDECODETOKENS']._serialized_start=2879
59
+ _globals['_ANTHROPICCLAUDECODETOKENS']._serialized_end=2981
60
+ _globals['_ANTHROPICCLAUDECODEESTIMATEDCOST']._serialized_start=2983
61
+ _globals['_ANTHROPICCLAUDECODEESTIMATEDCOST']._serialized_end=3051
62
+ # @@protoc_insertion_point(module_scope)
@@ -9,7 +9,7 @@ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
9
9
 
10
10
  DESCRIPTOR: _descriptor.FileDescriptor
11
11
 
12
- class AnthropicChatUsage(_message.Message):
12
+ class AnthropicMessagesUsage(_message.Message):
13
13
  __slots__ = ("starting_at", "ending_at", "account_id", "api_key_id", "service_account_id", "workspace_id", "model", "service_tier", "context_window", "inference_geo", "uncached_input_tokens", "cache_read_input_tokens", "output_tokens", "cache_creation", "server_tool_use")
14
14
  STARTING_AT_FIELD_NUMBER: _ClassVar[int]
15
15
  ENDING_AT_FIELD_NUMBER: _ClassVar[int]
@@ -4,7 +4,7 @@ import grpc
4
4
  import warnings
5
5
 
6
6
 
7
- GRPC_GENERATED_VERSION = '1.83.1'
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
8
  GRPC_VERSION = grpc.__version__
9
9
  _version_not_supported = False
10
10
 
@@ -4,7 +4,7 @@ import grpc
4
4
  import warnings
5
5
 
6
6
 
7
- GRPC_GENERATED_VERSION = '1.83.1'
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
8
  GRPC_VERSION = grpc.__version__
9
9
  _version_not_supported = False
10
10
 
@@ -0,0 +1,172 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: viio/sync/v1/contracts.proto
5
+ # Protobuf Python Version: 7.35.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 7,
15
+ 35,
16
+ 1,
17
+ '',
18
+ 'viio/sync/v1/contracts.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
26
+ from viio_sync_api.v1 import anthropic_pb2 as viio_dot_sync_dot_v1_dot_anthropic__pb2
27
+ from viio_sync_api.v1 import bamboo_hr_pb2 as viio_dot_sync_dot_v1_dot_bamboo__hr__pb2
28
+ from viio_sync_api.v1 import focus_pb2 as viio_dot_sync_dot_v1_dot_focus__pb2
29
+ from viio_sync_api.v1 import generic_pb2 as viio_dot_sync_dot_v1_dot_generic__pb2
30
+ from viio_sync_api.v1 import google_pb2 as viio_dot_sync_dot_v1_dot_google__pb2
31
+ from viio_sync_api.v1 import microsoft_pb2 as viio_dot_sync_dot_v1_dot_microsoft__pb2
32
+ from viio_sync_api.v1 import okta_pb2 as viio_dot_sync_dot_v1_dot_okta__pb2
33
+ from viio_sync_api.v1 import openai_pb2 as viio_dot_sync_dot_v1_dot_openai__pb2
34
+
35
+
36
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cviio/sync/v1/contracts.proto\x12\x0cviio.sync.v1\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cviio/sync/v1/anthropic.proto\x1a\x1cviio/sync/v1/bamboo_hr.proto\x1a\x18viio/sync/v1/focus.proto\x1a\x1aviio/sync/v1/generic.proto\x1a\x19viio/sync/v1/google.proto\x1a\x1cviio/sync/v1/microsoft.proto\x1a\x17viio/sync/v1/okta.proto\x1a\x19viio/sync/v1/openai.proto\"C\n\x15StartSyncBatchRequest\x12*\n\"direct_integration_installation_id\x18\x01 \x01(\t\"}\n\x16StartSyncBatchResponse\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\x12\x0f\n\x07success\x18\x02 \x01(\x08\x12\x0f\n\x07message\x18\x03 \x01(\t\x12/\n\nerror_code\x18\x04 \x01(\x0e\x32\x1b.viio.sync.v1.SyncErrorCode\"\xbc\x05\n\x12SyncRecordsRequest\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\x12.\n\x08\x61\x63\x63ounts\x18\x02 \x01(\x0b\x32\x1c.viio.sync.v1.AccountRecords\x12.\n\x08licenses\x18\x03 \x01(\x0b\x32\x1c.viio.sync.v1.LicenseRecords\x12(\n\x05plans\x18\x04 \x01(\x0b\x32\x19.viio.sync.v1.PlanRecords\x12)\n\x05usage\x18\x05 \x01(\x0b\x32\x1a.viio.sync.v1.UsageRecords\x12\x30\n\temployees\x18\x06 \x01(\x0b\x32\x1d.viio.sync.v1.EmployeeRecords\x12*\n\x06groups\x18\x07 \x01(\x0b\x32\x1a.viio.sync.v1.GroupRecords\x12\x37\n\rgroup_members\x18\x08 \x01(\x0b\x32 .viio.sync.v1.GroupMemberRecords\x12S\n\x1b\x65xternally_discovered_usage\x18\t \x01(\x0b\x32..viio.sync.v1.ExternallyDiscoveredUsageRecords\x12,\n\x07\x64\x65vices\x18\n \x01(\x0b\x32\x1b.viio.sync.v1.DeviceRecords\x12\x31\n\naudit_logs\x18\x0b \x01(\x0b\x32\x1d.viio.sync.v1.AuditLogRecords\x12.\n\x08\x61i_usage\x18\x0c \x01(\x0b\x32\x1c.viio.sync.v1.AiUsageRecords\x12-\n\x08\x61i_costs\x18\r \x01(\x0b\x32\x1b.viio.sync.v1.AiCostRecords\x12\x33\n\x0b\x63loud_costs\x18\x0e \x01(\x0b\x32\x1e.viio.sync.v1.CloudCostRecords\"8\n\x0e\x41\x63\x63ountRecords\x12&\n\x07records\x18\x01 \x03(\x0b\x32\x15.viio.sync.v1.Account\"8\n\x0eLicenseRecords\x12&\n\x07records\x18\x01 \x03(\x0b\x32\x15.viio.sync.v1.License\"2\n\x0bPlanRecords\x12#\n\x07records\x18\x01 \x03(\x0b\x32\x12.viio.sync.v1.Plan\"4\n\x0cUsageRecords\x12$\n\x07records\x18\x01 \x03(\x0b\x32\x13.viio.sync.v1.Usage\":\n\x0f\x45mployeeRecords\x12\'\n\x07records\x18\x01 \x03(\x0b\x32\x16.viio.sync.v1.Employee\"4\n\x0cGroupRecords\x12$\n\x07records\x18\x01 \x03(\x0b\x32\x13.viio.sync.v1.Group\"@\n\x12GroupMemberRecords\x12*\n\x07records\x18\x01 \x03(\x0b\x32\x19.viio.sync.v1.GroupMember\"\\\n ExternallyDiscoveredUsageRecords\x12\x38\n\x07records\x18\x01 \x03(\x0b\x32\'.viio.sync.v1.ExternallyDiscoveredUsage\"6\n\rDeviceRecords\x12%\n\x07records\x18\x01 \x03(\x0b\x32\x14.viio.sync.v1.Device\":\n\x0f\x41uditLogRecords\x12\'\n\x07records\x18\x01 \x03(\x0b\x32\x16.viio.sync.v1.AuditLog\"8\n\x0e\x41iUsageRecords\x12&\n\x07records\x18\x01 \x03(\x0b\x32\x15.viio.sync.v1.AiUsage\"6\n\rAiCostRecords\x12%\n\x07records\x18\x01 \x03(\x0b\x32\x14.viio.sync.v1.AiCost\"<\n\x10\x43loudCostRecords\x12(\n\x07records\x18\x01 \x03(\x0b\x32\x17.viio.sync.v1.CloudCost\"7\n\x13SyncRecordsResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\",\n\x18\x43ompleteSyncBatchRequest\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\"=\n\x19\x43ompleteSyncBatchResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\")\n\x15\x41\x62ortSyncBatchRequest\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\":\n\x16\x41\x62ortSyncBatchResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"I\n\x07\x41\x63\x63ount\x12\x36\n\x07generic\x18\x01 \x01(\x0b\x32#.viio.sync.v1.GenericAccountDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x8c\x02\n\x15GenericAccountDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\x04name\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05\x65mail\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x08username\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x61\x63tive\x18\x05 \x01(\x08H\x03\x88\x01\x01\x12\r\n\x05roles\x18\x06 \x03(\t\x12\x32\n\x07\x64\x65tails\x18\x07 \x01(\x0b\x32\x1c.viio.sync.v1.AccountDetailsH\x04\x88\x01\x01\x12\x11\n\x04type\x18\x08 \x01(\tH\x05\x88\x01\x01\x42\x07\n\x05_nameB\x08\n\x06_emailB\x0b\n\t_usernameB\t\n\x07_activeB\n\n\x08_detailsB\x07\n\x05_type\"\x8a\x01\n\x0e\x41\x63\x63ountDetails\x12:\n\tmicrosoft\x18\x01 \x01(\x0b\x32%.viio.sync.v1.MicrosoftAccountDetailsH\x00\x12\x32\n\x05slack\x18\x02 \x01(\x0b\x32!.viio.sync.v1.SlackAccountDetailsH\x00\x42\x08\n\x06vendor\"T\n\x17MicrosoftAccountDetails\x12/\n\x05teams\x18\x01 \x01(\x0b\x32\x1b.viio.sync.v1.TeamsMetadataH\x00\x88\x01\x01\x42\x08\n\x06_teams\"\"\n\rTeamsMetadata\x12\x11\n\thas_teams\x18\x01 \x01(\x08\"[\n\x13SlackAccountDetails\x12\x38\n\x07surveys\x18\x01 \x01(\x0b\x32\".viio.sync.v1.SlackSurveysMetadataH\x00\x88\x01\x01\x42\n\n\x08_surveys\"1\n\x14SlackSurveysMetadata\x12\x19\n\x11has_app_installed\x18\x01 \x01(\x08\"I\n\x07License\x12\x36\n\x07generic\x18\x01 \x01(\x0b\x32#.viio.sync.v1.GenericLicenseDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xa9\x01\n\x15GenericLicenseDetails\x12\x19\n\x11source_account_id\x18\x01 \x01(\t\x12\x16\n\x0esource_plan_id\x18\x02 \x01(\t\x12\x10\n\x08\x62illable\x18\x03 \x01(\x08\x12 \n\x13\x65xternal_product_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x11\n\tsource_id\x18\x05 \x01(\tB\x16\n\x14_external_product_id\"\x85\x01\n\x0bPlanDetails\x12.\n\x05model\x18\x01 \x01(\x0e\x32\x1f.viio.sync.v1.SubscriptionModel\x12>\n\nseat_based\x18\x02 \x01(\x0b\x32(.viio.sync.v1.SeatBasedSubscriptionModelH\x00\x42\x06\n\x04\x64\x61ta\"t\n\x1aSeatBasedSubscriptionModel\x12\x17\n\npaid_seats\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1b\n\x0e\x63onsumed_seats\x18\x02 \x01(\x05H\x01\x88\x01\x01\x42\r\n\x0b_paid_seatsB\x11\n\x0f_consumed_seats\"C\n\x04Plan\x12\x33\n\x07generic\x18\x01 \x01(\x0b\x32 .viio.sync.v1.GenericPlanDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x9f\x02\n\x12GenericPlanDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1a\n\x12\x65xternal_plan_name\x18\x02 \x01(\t\x12\"\n\x15\x65xternal_product_name\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x44\n\nattributes\x18\x04 \x03(\x0b\x32\x30.viio.sync.v1.GenericPlanDetails.AttributesEntry\x12*\n\x07\x64\x65tails\x18\x05 \x01(\x0b\x32\x19.viio.sync.v1.PlanDetails\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x18\n\x16_external_product_name\"E\n\x05Usage\x12\x34\n\x07generic\x18\x01 \x01(\x0b\x32!.viio.sync.v1.GenericUsageDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xdb\x01\n\x13GenericUsageDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x17\n\x0fsource_actor_id\x18\x02 \x01(\t\x12\"\n\x15\x65xternal_product_name\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0esource_plan_id\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x31\n\rlast_activity\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x18\n\x16_external_product_nameB\x11\n\x0f_source_plan_id\"m\n\x19\x45xternallyDiscoveredUsage\x12H\n\x07generic\x18\x01 \x01(\x0b\x32\x35.viio.sync.v1.GenericExternallyDiscoveredUsageDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xb8\x03\n\'GenericExternallyDiscoveredUsageDetails\x12\x17\n\x0fsource_actor_id\x18\x01 \x01(\t\x12\x18\n\x0b\x61\x63tor_email\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\"\n\x15\x65xternal_product_name\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x36\n\rlast_activity\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03\x88\x01\x01\x12;\n\x12last_activity_from\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x04\x88\x01\x01\x12\x39\n\x10last_activity_to\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x05\x88\x01\x01\x42\x0e\n\x0c_actor_emailB\x18\n\x16_external_product_nameB\t\n\x07_sourceB\x10\n\x0e_last_activityB\x15\n\x13_last_activity_fromB\x13\n\x11_last_activity_to\"\xae\x02\n\x08\x45mployee\x12\x37\n\x07generic\x18\x01 \x01(\x0b\x32$.viio.sync.v1.GenericEmployeeDetailsH\x00\x12;\n\tmicrosoft\x18\x02 \x01(\x0b\x32&.viio.sync.v1.MicrosoftEmployeeDetailsH\x00\x12\x35\n\x06google\x18\x03 \x01(\x0b\x32#.viio.sync.v1.GoogleEmployeeDetailsH\x00\x12\x31\n\x04okta\x18\x04 \x01(\x0b\x32!.viio.sync.v1.OktaEmployeeDetailsH\x00\x12:\n\tbamboo_hr\x18\x05 \x01(\x0b\x32%.viio.sync.v1.BambooHrEmployeeDetailsH\x00\x42\x06\n\x04\x64\x61ta\"E\n\x05Group\x12\x34\n\x07generic\x18\x01 \x01(\x0b\x32!.viio.sync.v1.GenericGroupDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xfe\x02\n\x13GenericGroupDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x36\n\rdeletion_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12\x36\n\rcreation_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02\x88\x01\x01\x12\x15\n\remail_aliases\x18\x06 \x03(\t\x12\x45\n\nattributes\x18\x07 \x03(\x0b\x32\x31.viio.sync.v1.GenericGroupDetails.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x10\n\x0e_deletion_timeB\x10\n\x0e_creation_time\"Q\n\x0bGroupMember\x12:\n\x07generic\x18\x01 \x01(\x0b\x32\'.viio.sync.v1.GenericGroupMemberDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x9d\x03\n\x19GenericGroupMemberDetails\x12\x10\n\x08group_id\x18\x01 \x01(\t\x12\x11\n\tmember_id\x18\x02 \x01(\t\x12\x36\n\rdeletion_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x36\n\rcreation_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12+\n\x04type\x18\x05 \x01(\x0e\x32\x1d.viio.sync.v1.GroupMemberType\x12\x11\n\x04role\x18\x06 \x01(\tH\x02\x88\x01\x01\x12K\n\nattributes\x18\x07 \x03(\x0b\x32\x37.viio.sync.v1.GenericGroupMemberDetails.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x10\n\x0e_deletion_timeB\x10\n\x0e_creation_timeB\x07\n\x05_role\"7\n\x0b\x44\x65viceOwner\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\x05\x65mail\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_email\"G\n\x06\x44\x65vice\x12\x35\n\x07generic\x18\x01 \x01(\x0b\x32\".viio.sync.v1.GenericDeviceDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x9c\x01\n\x14GenericDeviceDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12-\n\x05owner\x18\x02 \x01(\x0b\x32\x19.viio.sync.v1.DeviceOwnerH\x00\x88\x01\x01\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x15\n\rserial_number\x18\x04 \x01(\t\x12\x11\n\x04uuid\x18\x05 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_ownerB\x07\n\x05_uuid\"6\n\rAuditLogActor\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05\x65mail\x18\x02 \x01(\tB\x05\n\x03_id\"\xe4\x01\n\x08\x41uditLog\x12\x37\n\x07generic\x18\x01 \x01(\x0b\x32$.viio.sync.v1.GenericAuditLogDetailsH\x00\x12I\n\x11microsoft_sign_in\x18\x02 \x01(\x0b\x32,.viio.sync.v1.MicrosoftSignInAuditLogDetailsH\x00\x12L\n\x12microsoft_security\x18\x03 \x01(\x0b\x32..viio.sync.v1.MicrosoftSecurityAuditLogDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x81\x02\n\x16GenericAuditLogDetails\x12(\n\x04\x64\x61te\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10\x61udit_log_source\x18\x02 \x01(\t\x12*\n\x05\x61\x63tor\x18\x03 \x01(\x0b\x32\x1b.viio.sync.v1.AuditLogActor\x12\x18\n\x10\x61pplication_name\x18\x04 \x01(\t\x12\x0e\n\x06source\x18\x05 \x01(\t\x12\x15\n\ractivity_name\x18\x06 \x01(\t\x12\x13\n\x06scopes\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x0e\x65vent_provider\x18\x08 \x01(\tB\t\n\x07_scopes\"\x83\x02\n\x07\x41iUsage\x12*\n\x08provider\x18\x01 \x01(\x0e\x32\x18.viio.sync.v1.AiProvider\x12H\n\x18\x61nthropic_messages_usage\x18\x02 \x01(\x0b\x32$.viio.sync.v1.AnthropicMessagesUsageH\x00\x12G\n\x15\x61nthropic_claude_code\x18\x03 \x01(\x0b\x32&.viio.sync.v1.AnthropicClaudeCodeUsageH\x00\x12\x31\n\x0copenai_usage\x18\x04 \x01(\x0b\x32\x19.viio.sync.v1.OpenAiUsageH\x00\x42\x06\n\x04\x64\x61ta\"\xa4\x01\n\x06\x41iCost\x12*\n\x08provider\x18\x01 \x01(\x0e\x32\x18.viio.sync.v1.AiProvider\x12\x35\n\x0e\x61nthropic_cost\x18\x02 \x01(\x0b\x32\x1b.viio.sync.v1.AnthropicCostH\x00\x12/\n\x0bopenai_cost\x18\x03 \x01(\x0b\x32\x18.viio.sync.v1.OpenAiCostH\x00\x42\x06\n\x04\x64\x61ta\"\x8c\x01\n\tCloudCost\x12-\n\x08provider\x18\x01 \x01(\x0e\x32\x1b.viio.sync.v1.CloudProvider\x12\r\n\x05scope\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12(\n\x05\x66ocus\x18\x04 \x01(\x0b\x32\x17.viio.sync.v1.FocusCostH\x00\x42\x06\n\x04\x64\x61ta*v\n\nAiProvider\x12\x1b\n\x17\x41I_PROVIDER_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41I_PROVIDER_ANTHROPIC\x10\x01\x12\x17\n\x13\x41I_PROVIDER_GENERIC\x10\x02\x12\x17\n\x13\x41I_PROVIDER_OPEN_AI\x10\x03*G\n\rCloudProvider\x12\x1e\n\x1a\x43LOUD_PROVIDER_UNSPECIFIED\x10\x00\x12\x16\n\x12\x43LOUD_PROVIDER_AWS\x10\x01*Z\n\x11SubscriptionModel\x12\"\n\x1eSUBSCRIPTION_MODEL_UNSPECIFIED\x10\x00\x12!\n\x1dSUBSCRIPTION_MODEL_SEAT_BASED\x10\x01*m\n\x0fGroupMemberType\x12!\n\x1dGROUP_MEMBER_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16GROUP_MEMBER_TYPE_USER\x10\x01\x12\x1b\n\x17GROUP_MEMBER_TYPE_GROUP\x10\x02*^\n\rSyncErrorCode\x12\x1f\n\x1bSYNC_ERROR_CODE_UNSPECIFIED\x10\x00\x12,\n(SYNC_ERROR_CODE_SYNC_ALREADY_IN_PROGRESS\x10\x01\x32\x83\x03\n\x0bSyncService\x12[\n\x0eStartSyncBatch\x12#.viio.sync.v1.StartSyncBatchRequest\x1a$.viio.sync.v1.StartSyncBatchResponse\x12T\n\x0bSyncRecords\x12 .viio.sync.v1.SyncRecordsRequest\x1a!.viio.sync.v1.SyncRecordsResponse(\x01\x12\x64\n\x11\x43ompleteSyncBatch\x12&.viio.sync.v1.CompleteSyncBatchRequest\x1a\'.viio.sync.v1.CompleteSyncBatchResponse\x12[\n\x0e\x41\x62ortSyncBatch\x12#.viio.sync.v1.AbortSyncBatchRequest\x1a$.viio.sync.v1.AbortSyncBatchResponseB\x1c\xaa\x02\x19Viio.SyncApi.V1.Contractsb\x06proto3')
37
+
38
+ _globals = globals()
39
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
40
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'viio.sync.v1.contracts_pb2', _globals)
41
+ if not _descriptor._USE_C_DESCRIPTORS:
42
+ _globals['DESCRIPTOR']._loaded_options = None
43
+ _globals['DESCRIPTOR']._serialized_options = b'\252\002\031Viio.SyncApi.V1.Contracts'
44
+ _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._loaded_options = None
45
+ _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._serialized_options = b'8\001'
46
+ _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._loaded_options = None
47
+ _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._serialized_options = b'8\001'
48
+ _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._loaded_options = None
49
+ _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._serialized_options = b'8\001'
50
+ _globals['_AIPROVIDER']._serialized_start=7386
51
+ _globals['_AIPROVIDER']._serialized_end=7504
52
+ _globals['_CLOUDPROVIDER']._serialized_start=7506
53
+ _globals['_CLOUDPROVIDER']._serialized_end=7577
54
+ _globals['_SUBSCRIPTIONMODEL']._serialized_start=7579
55
+ _globals['_SUBSCRIPTIONMODEL']._serialized_end=7669
56
+ _globals['_GROUPMEMBERTYPE']._serialized_start=7671
57
+ _globals['_GROUPMEMBERTYPE']._serialized_end=7780
58
+ _globals['_SYNCERRORCODE']._serialized_start=7782
59
+ _globals['_SYNCERRORCODE']._serialized_end=7876
60
+ _globals['_STARTSYNCBATCHREQUEST']._serialized_start=302
61
+ _globals['_STARTSYNCBATCHREQUEST']._serialized_end=369
62
+ _globals['_STARTSYNCBATCHRESPONSE']._serialized_start=371
63
+ _globals['_STARTSYNCBATCHRESPONSE']._serialized_end=496
64
+ _globals['_SYNCRECORDSREQUEST']._serialized_start=499
65
+ _globals['_SYNCRECORDSREQUEST']._serialized_end=1199
66
+ _globals['_ACCOUNTRECORDS']._serialized_start=1201
67
+ _globals['_ACCOUNTRECORDS']._serialized_end=1257
68
+ _globals['_LICENSERECORDS']._serialized_start=1259
69
+ _globals['_LICENSERECORDS']._serialized_end=1315
70
+ _globals['_PLANRECORDS']._serialized_start=1317
71
+ _globals['_PLANRECORDS']._serialized_end=1367
72
+ _globals['_USAGERECORDS']._serialized_start=1369
73
+ _globals['_USAGERECORDS']._serialized_end=1421
74
+ _globals['_EMPLOYEERECORDS']._serialized_start=1423
75
+ _globals['_EMPLOYEERECORDS']._serialized_end=1481
76
+ _globals['_GROUPRECORDS']._serialized_start=1483
77
+ _globals['_GROUPRECORDS']._serialized_end=1535
78
+ _globals['_GROUPMEMBERRECORDS']._serialized_start=1537
79
+ _globals['_GROUPMEMBERRECORDS']._serialized_end=1601
80
+ _globals['_EXTERNALLYDISCOVEREDUSAGERECORDS']._serialized_start=1603
81
+ _globals['_EXTERNALLYDISCOVEREDUSAGERECORDS']._serialized_end=1695
82
+ _globals['_DEVICERECORDS']._serialized_start=1697
83
+ _globals['_DEVICERECORDS']._serialized_end=1751
84
+ _globals['_AUDITLOGRECORDS']._serialized_start=1753
85
+ _globals['_AUDITLOGRECORDS']._serialized_end=1811
86
+ _globals['_AIUSAGERECORDS']._serialized_start=1813
87
+ _globals['_AIUSAGERECORDS']._serialized_end=1869
88
+ _globals['_AICOSTRECORDS']._serialized_start=1871
89
+ _globals['_AICOSTRECORDS']._serialized_end=1925
90
+ _globals['_CLOUDCOSTRECORDS']._serialized_start=1927
91
+ _globals['_CLOUDCOSTRECORDS']._serialized_end=1987
92
+ _globals['_SYNCRECORDSRESPONSE']._serialized_start=1989
93
+ _globals['_SYNCRECORDSRESPONSE']._serialized_end=2044
94
+ _globals['_COMPLETESYNCBATCHREQUEST']._serialized_start=2046
95
+ _globals['_COMPLETESYNCBATCHREQUEST']._serialized_end=2090
96
+ _globals['_COMPLETESYNCBATCHRESPONSE']._serialized_start=2092
97
+ _globals['_COMPLETESYNCBATCHRESPONSE']._serialized_end=2153
98
+ _globals['_ABORTSYNCBATCHREQUEST']._serialized_start=2155
99
+ _globals['_ABORTSYNCBATCHREQUEST']._serialized_end=2196
100
+ _globals['_ABORTSYNCBATCHRESPONSE']._serialized_start=2198
101
+ _globals['_ABORTSYNCBATCHRESPONSE']._serialized_end=2256
102
+ _globals['_ACCOUNT']._serialized_start=2258
103
+ _globals['_ACCOUNT']._serialized_end=2331
104
+ _globals['_GENERICACCOUNTDETAILS']._serialized_start=2334
105
+ _globals['_GENERICACCOUNTDETAILS']._serialized_end=2602
106
+ _globals['_ACCOUNTDETAILS']._serialized_start=2605
107
+ _globals['_ACCOUNTDETAILS']._serialized_end=2743
108
+ _globals['_MICROSOFTACCOUNTDETAILS']._serialized_start=2745
109
+ _globals['_MICROSOFTACCOUNTDETAILS']._serialized_end=2829
110
+ _globals['_TEAMSMETADATA']._serialized_start=2831
111
+ _globals['_TEAMSMETADATA']._serialized_end=2865
112
+ _globals['_SLACKACCOUNTDETAILS']._serialized_start=2867
113
+ _globals['_SLACKACCOUNTDETAILS']._serialized_end=2958
114
+ _globals['_SLACKSURVEYSMETADATA']._serialized_start=2960
115
+ _globals['_SLACKSURVEYSMETADATA']._serialized_end=3009
116
+ _globals['_LICENSE']._serialized_start=3011
117
+ _globals['_LICENSE']._serialized_end=3084
118
+ _globals['_GENERICLICENSEDETAILS']._serialized_start=3087
119
+ _globals['_GENERICLICENSEDETAILS']._serialized_end=3256
120
+ _globals['_PLANDETAILS']._serialized_start=3259
121
+ _globals['_PLANDETAILS']._serialized_end=3392
122
+ _globals['_SEATBASEDSUBSCRIPTIONMODEL']._serialized_start=3394
123
+ _globals['_SEATBASEDSUBSCRIPTIONMODEL']._serialized_end=3510
124
+ _globals['_PLAN']._serialized_start=3512
125
+ _globals['_PLAN']._serialized_end=3579
126
+ _globals['_GENERICPLANDETAILS']._serialized_start=3582
127
+ _globals['_GENERICPLANDETAILS']._serialized_end=3869
128
+ _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._serialized_start=3794
129
+ _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._serialized_end=3843
130
+ _globals['_USAGE']._serialized_start=3871
131
+ _globals['_USAGE']._serialized_end=3940
132
+ _globals['_GENERICUSAGEDETAILS']._serialized_start=3943
133
+ _globals['_GENERICUSAGEDETAILS']._serialized_end=4162
134
+ _globals['_EXTERNALLYDISCOVEREDUSAGE']._serialized_start=4164
135
+ _globals['_EXTERNALLYDISCOVEREDUSAGE']._serialized_end=4273
136
+ _globals['_GENERICEXTERNALLYDISCOVEREDUSAGEDETAILS']._serialized_start=4276
137
+ _globals['_GENERICEXTERNALLYDISCOVEREDUSAGEDETAILS']._serialized_end=4716
138
+ _globals['_EMPLOYEE']._serialized_start=4719
139
+ _globals['_EMPLOYEE']._serialized_end=5021
140
+ _globals['_GROUP']._serialized_start=5023
141
+ _globals['_GROUP']._serialized_end=5092
142
+ _globals['_GENERICGROUPDETAILS']._serialized_start=5095
143
+ _globals['_GENERICGROUPDETAILS']._serialized_end=5477
144
+ _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._serialized_start=3794
145
+ _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._serialized_end=3843
146
+ _globals['_GROUPMEMBER']._serialized_start=5479
147
+ _globals['_GROUPMEMBER']._serialized_end=5560
148
+ _globals['_GENERICGROUPMEMBERDETAILS']._serialized_start=5563
149
+ _globals['_GENERICGROUPMEMBERDETAILS']._serialized_end=5976
150
+ _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._serialized_start=3794
151
+ _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._serialized_end=3843
152
+ _globals['_DEVICEOWNER']._serialized_start=5978
153
+ _globals['_DEVICEOWNER']._serialized_end=6033
154
+ _globals['_DEVICE']._serialized_start=6035
155
+ _globals['_DEVICE']._serialized_end=6106
156
+ _globals['_GENERICDEVICEDETAILS']._serialized_start=6109
157
+ _globals['_GENERICDEVICEDETAILS']._serialized_end=6265
158
+ _globals['_AUDITLOGACTOR']._serialized_start=6267
159
+ _globals['_AUDITLOGACTOR']._serialized_end=6321
160
+ _globals['_AUDITLOG']._serialized_start=6324
161
+ _globals['_AUDITLOG']._serialized_end=6552
162
+ _globals['_GENERICAUDITLOGDETAILS']._serialized_start=6555
163
+ _globals['_GENERICAUDITLOGDETAILS']._serialized_end=6812
164
+ _globals['_AIUSAGE']._serialized_start=6815
165
+ _globals['_AIUSAGE']._serialized_end=7074
166
+ _globals['_AICOST']._serialized_start=7077
167
+ _globals['_AICOST']._serialized_end=7241
168
+ _globals['_CLOUDCOST']._serialized_start=7244
169
+ _globals['_CLOUDCOST']._serialized_end=7384
170
+ _globals['_SYNCSERVICE']._serialized_start=7879
171
+ _globals['_SYNCSERVICE']._serialized_end=8266
172
+ # @@protoc_insertion_point(module_scope)
@@ -3,6 +3,7 @@ import datetime
3
3
  from google.protobuf import timestamp_pb2 as _timestamp_pb2
4
4
  from viio_sync_api.v1 import anthropic_pb2 as _anthropic_pb2
5
5
  from viio_sync_api.v1 import bamboo_hr_pb2 as _bamboo_hr_pb2
6
+ from viio_sync_api.v1 import focus_pb2 as _focus_pb2
6
7
  from viio_sync_api.v1 import generic_pb2 as _generic_pb2
7
8
  from viio_sync_api.v1 import google_pb2 as _google_pb2
8
9
  from viio_sync_api.v1 import microsoft_pb2 as _microsoft_pb2
@@ -24,6 +25,11 @@ class AiProvider(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
24
25
  AI_PROVIDER_GENERIC: _ClassVar[AiProvider]
25
26
  AI_PROVIDER_OPEN_AI: _ClassVar[AiProvider]
26
27
 
28
+ class CloudProvider(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
29
+ __slots__ = ()
30
+ CLOUD_PROVIDER_UNSPECIFIED: _ClassVar[CloudProvider]
31
+ CLOUD_PROVIDER_AWS: _ClassVar[CloudProvider]
32
+
27
33
  class SubscriptionModel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
28
34
  __slots__ = ()
29
35
  SUBSCRIPTION_MODEL_UNSPECIFIED: _ClassVar[SubscriptionModel]
@@ -43,6 +49,8 @@ AI_PROVIDER_UNSPECIFIED: AiProvider
43
49
  AI_PROVIDER_ANTHROPIC: AiProvider
44
50
  AI_PROVIDER_GENERIC: AiProvider
45
51
  AI_PROVIDER_OPEN_AI: AiProvider
52
+ CLOUD_PROVIDER_UNSPECIFIED: CloudProvider
53
+ CLOUD_PROVIDER_AWS: CloudProvider
46
54
  SUBSCRIPTION_MODEL_UNSPECIFIED: SubscriptionModel
47
55
  SUBSCRIPTION_MODEL_SEAT_BASED: SubscriptionModel
48
56
  GROUP_MEMBER_TYPE_UNSPECIFIED: GroupMemberType
@@ -70,7 +78,7 @@ class StartSyncBatchResponse(_message.Message):
70
78
  def __init__(self, batch_id: _Optional[str] = ..., success: _Optional[bool] = ..., message: _Optional[str] = ..., error_code: _Optional[_Union[SyncErrorCode, str]] = ...) -> None: ...
71
79
 
72
80
  class SyncRecordsRequest(_message.Message):
73
- __slots__ = ("batch_id", "accounts", "licenses", "plans", "usage", "employees", "groups", "group_members", "externally_discovered_usage", "devices", "audit_logs", "ai_usage", "ai_costs")
81
+ __slots__ = ("batch_id", "accounts", "licenses", "plans", "usage", "employees", "groups", "group_members", "externally_discovered_usage", "devices", "audit_logs", "ai_usage", "ai_costs", "cloud_costs")
74
82
  BATCH_ID_FIELD_NUMBER: _ClassVar[int]
75
83
  ACCOUNTS_FIELD_NUMBER: _ClassVar[int]
76
84
  LICENSES_FIELD_NUMBER: _ClassVar[int]
@@ -84,6 +92,7 @@ class SyncRecordsRequest(_message.Message):
84
92
  AUDIT_LOGS_FIELD_NUMBER: _ClassVar[int]
85
93
  AI_USAGE_FIELD_NUMBER: _ClassVar[int]
86
94
  AI_COSTS_FIELD_NUMBER: _ClassVar[int]
95
+ CLOUD_COSTS_FIELD_NUMBER: _ClassVar[int]
87
96
  batch_id: str
88
97
  accounts: AccountRecords
89
98
  licenses: LicenseRecords
@@ -97,7 +106,8 @@ class SyncRecordsRequest(_message.Message):
97
106
  audit_logs: AuditLogRecords
98
107
  ai_usage: AiUsageRecords
99
108
  ai_costs: AiCostRecords
100
- def __init__(self, batch_id: _Optional[str] = ..., accounts: _Optional[_Union[AccountRecords, _Mapping]] = ..., licenses: _Optional[_Union[LicenseRecords, _Mapping]] = ..., plans: _Optional[_Union[PlanRecords, _Mapping]] = ..., usage: _Optional[_Union[UsageRecords, _Mapping]] = ..., employees: _Optional[_Union[EmployeeRecords, _Mapping]] = ..., groups: _Optional[_Union[GroupRecords, _Mapping]] = ..., group_members: _Optional[_Union[GroupMemberRecords, _Mapping]] = ..., externally_discovered_usage: _Optional[_Union[ExternallyDiscoveredUsageRecords, _Mapping]] = ..., devices: _Optional[_Union[DeviceRecords, _Mapping]] = ..., audit_logs: _Optional[_Union[AuditLogRecords, _Mapping]] = ..., ai_usage: _Optional[_Union[AiUsageRecords, _Mapping]] = ..., ai_costs: _Optional[_Union[AiCostRecords, _Mapping]] = ...) -> None: ...
109
+ cloud_costs: CloudCostRecords
110
+ def __init__(self, batch_id: _Optional[str] = ..., accounts: _Optional[_Union[AccountRecords, _Mapping]] = ..., licenses: _Optional[_Union[LicenseRecords, _Mapping]] = ..., plans: _Optional[_Union[PlanRecords, _Mapping]] = ..., usage: _Optional[_Union[UsageRecords, _Mapping]] = ..., employees: _Optional[_Union[EmployeeRecords, _Mapping]] = ..., groups: _Optional[_Union[GroupRecords, _Mapping]] = ..., group_members: _Optional[_Union[GroupMemberRecords, _Mapping]] = ..., externally_discovered_usage: _Optional[_Union[ExternallyDiscoveredUsageRecords, _Mapping]] = ..., devices: _Optional[_Union[DeviceRecords, _Mapping]] = ..., audit_logs: _Optional[_Union[AuditLogRecords, _Mapping]] = ..., ai_usage: _Optional[_Union[AiUsageRecords, _Mapping]] = ..., ai_costs: _Optional[_Union[AiCostRecords, _Mapping]] = ..., cloud_costs: _Optional[_Union[CloudCostRecords, _Mapping]] = ...) -> None: ...
101
111
 
102
112
  class AccountRecords(_message.Message):
103
113
  __slots__ = ("records",)
@@ -171,6 +181,12 @@ class AiCostRecords(_message.Message):
171
181
  records: _containers.RepeatedCompositeFieldContainer[AiCost]
172
182
  def __init__(self, records: _Optional[_Iterable[_Union[AiCost, _Mapping]]] = ...) -> None: ...
173
183
 
184
+ class CloudCostRecords(_message.Message):
185
+ __slots__ = ("records",)
186
+ RECORDS_FIELD_NUMBER: _ClassVar[int]
187
+ records: _containers.RepeatedCompositeFieldContainer[CloudCost]
188
+ def __init__(self, records: _Optional[_Iterable[_Union[CloudCost, _Mapping]]] = ...) -> None: ...
189
+
174
190
  class SyncRecordsResponse(_message.Message):
175
191
  __slots__ = ("success", "message")
176
192
  SUCCESS_FIELD_NUMBER: _ClassVar[int]
@@ -234,10 +250,12 @@ class GenericAccountDetails(_message.Message):
234
250
  def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., email: _Optional[str] = ..., username: _Optional[str] = ..., active: _Optional[bool] = ..., roles: _Optional[_Iterable[str]] = ..., details: _Optional[_Union[AccountDetails, _Mapping]] = ..., type: _Optional[str] = ...) -> None: ...
235
251
 
236
252
  class AccountDetails(_message.Message):
237
- __slots__ = ("microsoft",)
253
+ __slots__ = ("microsoft", "slack")
238
254
  MICROSOFT_FIELD_NUMBER: _ClassVar[int]
255
+ SLACK_FIELD_NUMBER: _ClassVar[int]
239
256
  microsoft: MicrosoftAccountDetails
240
- def __init__(self, microsoft: _Optional[_Union[MicrosoftAccountDetails, _Mapping]] = ...) -> None: ...
257
+ slack: SlackAccountDetails
258
+ def __init__(self, microsoft: _Optional[_Union[MicrosoftAccountDetails, _Mapping]] = ..., slack: _Optional[_Union[SlackAccountDetails, _Mapping]] = ...) -> None: ...
241
259
 
242
260
  class MicrosoftAccountDetails(_message.Message):
243
261
  __slots__ = ("teams",)
@@ -251,6 +269,18 @@ class TeamsMetadata(_message.Message):
251
269
  has_teams: bool
252
270
  def __init__(self, has_teams: _Optional[bool] = ...) -> None: ...
253
271
 
272
+ class SlackAccountDetails(_message.Message):
273
+ __slots__ = ("surveys",)
274
+ SURVEYS_FIELD_NUMBER: _ClassVar[int]
275
+ surveys: SlackSurveysMetadata
276
+ def __init__(self, surveys: _Optional[_Union[SlackSurveysMetadata, _Mapping]] = ...) -> None: ...
277
+
278
+ class SlackSurveysMetadata(_message.Message):
279
+ __slots__ = ("has_app_installed",)
280
+ HAS_APP_INSTALLED_FIELD_NUMBER: _ClassVar[int]
281
+ has_app_installed: bool
282
+ def __init__(self, has_app_installed: _Optional[bool] = ...) -> None: ...
283
+
254
284
  class License(_message.Message):
255
285
  __slots__ = ("generic",)
256
286
  GENERIC_FIELD_NUMBER: _ClassVar[int]
@@ -501,16 +531,16 @@ class GenericAuditLogDetails(_message.Message):
501
531
  def __init__(self, date: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., audit_log_source: _Optional[str] = ..., actor: _Optional[_Union[AuditLogActor, _Mapping]] = ..., application_name: _Optional[str] = ..., source: _Optional[str] = ..., activity_name: _Optional[str] = ..., scopes: _Optional[str] = ..., event_provider: _Optional[str] = ...) -> None: ...
502
532
 
503
533
  class AiUsage(_message.Message):
504
- __slots__ = ("provider", "anthropic_chat_usage", "anthropic_claude_code", "openai_usage")
534
+ __slots__ = ("provider", "anthropic_messages_usage", "anthropic_claude_code", "openai_usage")
505
535
  PROVIDER_FIELD_NUMBER: _ClassVar[int]
506
- ANTHROPIC_CHAT_USAGE_FIELD_NUMBER: _ClassVar[int]
536
+ ANTHROPIC_MESSAGES_USAGE_FIELD_NUMBER: _ClassVar[int]
507
537
  ANTHROPIC_CLAUDE_CODE_FIELD_NUMBER: _ClassVar[int]
508
538
  OPENAI_USAGE_FIELD_NUMBER: _ClassVar[int]
509
539
  provider: AiProvider
510
- anthropic_chat_usage: _anthropic_pb2.AnthropicChatUsage
540
+ anthropic_messages_usage: _anthropic_pb2.AnthropicMessagesUsage
511
541
  anthropic_claude_code: _anthropic_pb2.AnthropicClaudeCodeUsage
512
542
  openai_usage: _openai_pb2.OpenAiUsage
513
- def __init__(self, provider: _Optional[_Union[AiProvider, str]] = ..., anthropic_chat_usage: _Optional[_Union[_anthropic_pb2.AnthropicChatUsage, _Mapping]] = ..., anthropic_claude_code: _Optional[_Union[_anthropic_pb2.AnthropicClaudeCodeUsage, _Mapping]] = ..., openai_usage: _Optional[_Union[_openai_pb2.OpenAiUsage, _Mapping]] = ...) -> None: ...
543
+ def __init__(self, provider: _Optional[_Union[AiProvider, str]] = ..., anthropic_messages_usage: _Optional[_Union[_anthropic_pb2.AnthropicMessagesUsage, _Mapping]] = ..., anthropic_claude_code: _Optional[_Union[_anthropic_pb2.AnthropicClaudeCodeUsage, _Mapping]] = ..., openai_usage: _Optional[_Union[_openai_pb2.OpenAiUsage, _Mapping]] = ...) -> None: ...
514
544
 
515
545
  class AiCost(_message.Message):
516
546
  __slots__ = ("provider", "anthropic_cost", "openai_cost")
@@ -521,3 +551,15 @@ class AiCost(_message.Message):
521
551
  anthropic_cost: _anthropic_pb2.AnthropicCost
522
552
  openai_cost: _openai_pb2.OpenAiCost
523
553
  def __init__(self, provider: _Optional[_Union[AiProvider, str]] = ..., anthropic_cost: _Optional[_Union[_anthropic_pb2.AnthropicCost, _Mapping]] = ..., openai_cost: _Optional[_Union[_openai_pb2.OpenAiCost, _Mapping]] = ...) -> None: ...
554
+
555
+ class CloudCost(_message.Message):
556
+ __slots__ = ("provider", "scope", "version", "focus")
557
+ PROVIDER_FIELD_NUMBER: _ClassVar[int]
558
+ SCOPE_FIELD_NUMBER: _ClassVar[int]
559
+ VERSION_FIELD_NUMBER: _ClassVar[int]
560
+ FOCUS_FIELD_NUMBER: _ClassVar[int]
561
+ provider: CloudProvider
562
+ scope: str
563
+ version: str
564
+ focus: _focus_pb2.FocusCost
565
+ def __init__(self, provider: _Optional[_Union[CloudProvider, str]] = ..., scope: _Optional[str] = ..., version: _Optional[str] = ..., focus: _Optional[_Union[_focus_pb2.FocusCost, _Mapping]] = ...) -> None: ...
@@ -5,7 +5,7 @@ import warnings
5
5
 
6
6
  from viio_sync_api.v1 import contracts_pb2 as viio_dot_sync_dot_v1_dot_contracts__pb2
7
7
 
8
- GRPC_GENERATED_VERSION = '1.83.1'
8
+ GRPC_GENERATED_VERSION = '1.84.0'
9
9
  GRPC_VERSION = grpc.__version__
10
10
  _version_not_supported = False
11
11
 
@@ -0,0 +1,42 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: viio/sync/v1/focus.proto
5
+ # Protobuf Python Version: 7.35.1
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 7,
15
+ 35,
16
+ 1,
17
+ '',
18
+ 'viio/sync/v1/focus.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
26
+
27
+
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18viio/sync/v1/focus.proto\x12\x0cviio.sync.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\xff\x19\n\tFocusCost\x12\x1e\n\x11\x61vailability_zone\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x62illed_cost\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x12\x62illing_account_id\x18\x03 \x01(\tH\x02\x88\x01\x01\x12!\n\x14\x62illing_account_name\x18\x04 \x01(\tH\x03\x88\x01\x01\x12!\n\x14\x62illing_account_type\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x10\x62illing_currency\x18\x06 \x01(\tH\x05\x88\x01\x01\x12;\n\x12\x62illing_period_end\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x06\x88\x01\x01\x12=\n\x14\x62illing_period_start\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x07\x88\x01\x01\x12$\n\x17\x63\x61pacity_reservation_id\x18\t \x01(\tH\x08\x88\x01\x01\x12(\n\x1b\x63\x61pacity_reservation_status\x18\n \x01(\tH\t\x88\x01\x01\x12\x1c\n\x0f\x63harge_category\x18\x0b \x01(\tH\n\x88\x01\x01\x12\x19\n\x0c\x63harge_class\x18\x0c \x01(\tH\x0b\x88\x01\x01\x12\x1f\n\x12\x63harge_description\x18\r \x01(\tH\x0c\x88\x01\x01\x12\x1d\n\x10\x63harge_frequency\x18\x0e \x01(\tH\r\x88\x01\x01\x12:\n\x11\x63harge_period_end\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x0e\x88\x01\x01\x12<\n\x13\x63harge_period_start\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x0f\x88\x01\x01\x12)\n\x1c\x63ommitment_discount_category\x18\x11 \x01(\tH\x10\x88\x01\x01\x12#\n\x16\x63ommitment_discount_id\x18\x12 \x01(\tH\x11\x88\x01\x01\x12%\n\x18\x63ommitment_discount_name\x18\x13 \x01(\tH\x12\x88\x01\x01\x12)\n\x1c\x63ommitment_discount_quantity\x18\x14 \x01(\tH\x13\x88\x01\x01\x12\'\n\x1a\x63ommitment_discount_status\x18\x15 \x01(\tH\x14\x88\x01\x01\x12%\n\x18\x63ommitment_discount_type\x18\x16 \x01(\tH\x15\x88\x01\x01\x12%\n\x18\x63ommitment_discount_unit\x18\x17 \x01(\tH\x16\x88\x01\x01\x12\x1e\n\x11\x63onsumed_quantity\x18\x18 \x01(\tH\x17\x88\x01\x01\x12\x1a\n\rconsumed_unit\x18\x19 \x01(\tH\x18\x88\x01\x01\x12\x1c\n\x0f\x63ontracted_cost\x18\x1a \x01(\tH\x19\x88\x01\x01\x12\"\n\x15\x63ontracted_unit_price\x18\x1b \x01(\tH\x1a\x88\x01\x01\x12\x1b\n\x0e\x65\x66\x66\x65\x63tive_cost\x18\x1c \x01(\tH\x1b\x88\x01\x01\x12\x17\n\ninvoice_id\x18\x1d \x01(\tH\x1c\x88\x01\x01\x12 \n\x13invoice_issuer_name\x18\x1e \x01(\tH\x1d\x88\x01\x01\x12\x16\n\tlist_cost\x18\x1f \x01(\tH\x1e\x88\x01\x01\x12\x1c\n\x0flist_unit_price\x18 \x01(\tH\x1f\x88\x01\x01\x12\x1d\n\x10pricing_category\x18! \x01(\tH \x88\x01\x01\x12\x1d\n\x10pricing_currency\x18\" \x01(\tH!\x88\x01\x01\x12\x33\n&pricing_currency_contracted_unit_price\x18# \x01(\tH\"\x88\x01\x01\x12,\n\x1fpricing_currency_effective_cost\x18$ \x01(\tH#\x88\x01\x01\x12-\n pricing_currency_list_unit_price\x18% \x01(\tH$\x88\x01\x01\x12\x1d\n\x10pricing_quantity\x18& \x01(\tH%\x88\x01\x01\x12\x19\n\x0cpricing_unit\x18\' \x01(\tH&\x88\x01\x01\x12\x1a\n\rprovider_name\x18( \x01(\tH\'\x88\x01\x01\x12\x1b\n\x0epublisher_name\x18) \x01(\tH(\x88\x01\x01\x12\x16\n\tregion_id\x18* \x01(\tH)\x88\x01\x01\x12\x18\n\x0bregion_name\x18+ \x01(\tH*\x88\x01\x01\x12\x18\n\x0bresource_id\x18, \x01(\tH+\x88\x01\x01\x12\x1a\n\rresource_name\x18- \x01(\tH,\x88\x01\x01\x12\x1a\n\rresource_type\x18. \x01(\tH-\x88\x01\x01\x12\x1d\n\x10service_category\x18/ \x01(\tH.\x88\x01\x01\x12\x19\n\x0cservice_name\x18\x30 \x01(\tH/\x88\x01\x01\x12 \n\x13service_subcategory\x18\x31 \x01(\tH0\x88\x01\x01\x12\x13\n\x06sku_id\x18\x32 \x01(\tH1\x88\x01\x01\x12\x16\n\tsku_meter\x18\x33 \x01(\tH2\x88\x01\x01\x12\x1e\n\x11sku_price_details\x18\x34 \x01(\tH3\x88\x01\x01\x12\x19\n\x0csku_price_id\x18\x35 \x01(\tH4\x88\x01\x01\x12\x1b\n\x0esub_account_id\x18\x36 \x01(\tH5\x88\x01\x01\x12\x1d\n\x10sub_account_name\x18\x37 \x01(\tH6\x88\x01\x01\x12\x1d\n\x10sub_account_type\x18\x38 \x01(\tH7\x88\x01\x01\x12\x11\n\x04tags\x18\x39 \x01(\tH8\x88\x01\x01\x12\x33\n\x06\x65xtras\x18: \x03(\x0b\x32#.viio.sync.v1.FocusCost.ExtrasEntry\x1a-\n\x0b\x45xtrasEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_availability_zoneB\x0e\n\x0c_billed_costB\x15\n\x13_billing_account_idB\x17\n\x15_billing_account_nameB\x17\n\x15_billing_account_typeB\x13\n\x11_billing_currencyB\x15\n\x13_billing_period_endB\x17\n\x15_billing_period_startB\x1a\n\x18_capacity_reservation_idB\x1e\n\x1c_capacity_reservation_statusB\x12\n\x10_charge_categoryB\x0f\n\r_charge_classB\x15\n\x13_charge_descriptionB\x13\n\x11_charge_frequencyB\x14\n\x12_charge_period_endB\x16\n\x14_charge_period_startB\x1f\n\x1d_commitment_discount_categoryB\x19\n\x17_commitment_discount_idB\x1b\n\x19_commitment_discount_nameB\x1f\n\x1d_commitment_discount_quantityB\x1d\n\x1b_commitment_discount_statusB\x1b\n\x19_commitment_discount_typeB\x1b\n\x19_commitment_discount_unitB\x14\n\x12_consumed_quantityB\x10\n\x0e_consumed_unitB\x12\n\x10_contracted_costB\x18\n\x16_contracted_unit_priceB\x11\n\x0f_effective_costB\r\n\x0b_invoice_idB\x16\n\x14_invoice_issuer_nameB\x0c\n\n_list_costB\x12\n\x10_list_unit_priceB\x13\n\x11_pricing_categoryB\x13\n\x11_pricing_currencyB)\n\'_pricing_currency_contracted_unit_priceB\"\n _pricing_currency_effective_costB#\n!_pricing_currency_list_unit_priceB\x13\n\x11_pricing_quantityB\x0f\n\r_pricing_unitB\x10\n\x0e_provider_nameB\x11\n\x0f_publisher_nameB\x0c\n\n_region_idB\x0e\n\x0c_region_nameB\x0e\n\x0c_resource_idB\x10\n\x0e_resource_nameB\x10\n\x0e_resource_typeB\x13\n\x11_service_categoryB\x0f\n\r_service_nameB\x16\n\x14_service_subcategoryB\t\n\x07_sku_idB\x0c\n\n_sku_meterB\x14\n\x12_sku_price_detailsB\x0f\n\r_sku_price_idB\x11\n\x0f_sub_account_idB\x13\n\x11_sub_account_nameB\x13\n\x11_sub_account_typeB\x07\n\x05_tagsB\x1c\xaa\x02\x19Viio.SyncApi.V1.Contractsb\x06proto3')
29
+
30
+ _globals = globals()
31
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
32
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'viio.sync.v1.focus_pb2', _globals)
33
+ if not _descriptor._USE_C_DESCRIPTORS:
34
+ _globals['DESCRIPTOR']._loaded_options = None
35
+ _globals['DESCRIPTOR']._serialized_options = b'\252\002\031Viio.SyncApi.V1.Contracts'
36
+ _globals['_FOCUSCOST_EXTRASENTRY']._loaded_options = None
37
+ _globals['_FOCUSCOST_EXTRASENTRY']._serialized_options = b'8\001'
38
+ _globals['_FOCUSCOST']._serialized_start=76
39
+ _globals['_FOCUSCOST']._serialized_end=3403
40
+ _globals['_FOCUSCOST_EXTRASENTRY']._serialized_start=2091
41
+ _globals['_FOCUSCOST_EXTRASENTRY']._serialized_end=2136
42
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,137 @@
1
+ import datetime
2
+
3
+ from google.protobuf import timestamp_pb2 as _timestamp_pb2
4
+ from google.protobuf.internal import containers as _containers
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import message as _message
7
+ from collections.abc import Mapping as _Mapping
8
+ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
9
+
10
+ DESCRIPTOR: _descriptor.FileDescriptor
11
+
12
+ class FocusCost(_message.Message):
13
+ __slots__ = ("availability_zone", "billed_cost", "billing_account_id", "billing_account_name", "billing_account_type", "billing_currency", "billing_period_end", "billing_period_start", "capacity_reservation_id", "capacity_reservation_status", "charge_category", "charge_class", "charge_description", "charge_frequency", "charge_period_end", "charge_period_start", "commitment_discount_category", "commitment_discount_id", "commitment_discount_name", "commitment_discount_quantity", "commitment_discount_status", "commitment_discount_type", "commitment_discount_unit", "consumed_quantity", "consumed_unit", "contracted_cost", "contracted_unit_price", "effective_cost", "invoice_id", "invoice_issuer_name", "list_cost", "list_unit_price", "pricing_category", "pricing_currency", "pricing_currency_contracted_unit_price", "pricing_currency_effective_cost", "pricing_currency_list_unit_price", "pricing_quantity", "pricing_unit", "provider_name", "publisher_name", "region_id", "region_name", "resource_id", "resource_name", "resource_type", "service_category", "service_name", "service_subcategory", "sku_id", "sku_meter", "sku_price_details", "sku_price_id", "sub_account_id", "sub_account_name", "sub_account_type", "tags", "extras")
14
+ class ExtrasEntry(_message.Message):
15
+ __slots__ = ("key", "value")
16
+ KEY_FIELD_NUMBER: _ClassVar[int]
17
+ VALUE_FIELD_NUMBER: _ClassVar[int]
18
+ key: str
19
+ value: str
20
+ def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
21
+ AVAILABILITY_ZONE_FIELD_NUMBER: _ClassVar[int]
22
+ BILLED_COST_FIELD_NUMBER: _ClassVar[int]
23
+ BILLING_ACCOUNT_ID_FIELD_NUMBER: _ClassVar[int]
24
+ BILLING_ACCOUNT_NAME_FIELD_NUMBER: _ClassVar[int]
25
+ BILLING_ACCOUNT_TYPE_FIELD_NUMBER: _ClassVar[int]
26
+ BILLING_CURRENCY_FIELD_NUMBER: _ClassVar[int]
27
+ BILLING_PERIOD_END_FIELD_NUMBER: _ClassVar[int]
28
+ BILLING_PERIOD_START_FIELD_NUMBER: _ClassVar[int]
29
+ CAPACITY_RESERVATION_ID_FIELD_NUMBER: _ClassVar[int]
30
+ CAPACITY_RESERVATION_STATUS_FIELD_NUMBER: _ClassVar[int]
31
+ CHARGE_CATEGORY_FIELD_NUMBER: _ClassVar[int]
32
+ CHARGE_CLASS_FIELD_NUMBER: _ClassVar[int]
33
+ CHARGE_DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
34
+ CHARGE_FREQUENCY_FIELD_NUMBER: _ClassVar[int]
35
+ CHARGE_PERIOD_END_FIELD_NUMBER: _ClassVar[int]
36
+ CHARGE_PERIOD_START_FIELD_NUMBER: _ClassVar[int]
37
+ COMMITMENT_DISCOUNT_CATEGORY_FIELD_NUMBER: _ClassVar[int]
38
+ COMMITMENT_DISCOUNT_ID_FIELD_NUMBER: _ClassVar[int]
39
+ COMMITMENT_DISCOUNT_NAME_FIELD_NUMBER: _ClassVar[int]
40
+ COMMITMENT_DISCOUNT_QUANTITY_FIELD_NUMBER: _ClassVar[int]
41
+ COMMITMENT_DISCOUNT_STATUS_FIELD_NUMBER: _ClassVar[int]
42
+ COMMITMENT_DISCOUNT_TYPE_FIELD_NUMBER: _ClassVar[int]
43
+ COMMITMENT_DISCOUNT_UNIT_FIELD_NUMBER: _ClassVar[int]
44
+ CONSUMED_QUANTITY_FIELD_NUMBER: _ClassVar[int]
45
+ CONSUMED_UNIT_FIELD_NUMBER: _ClassVar[int]
46
+ CONTRACTED_COST_FIELD_NUMBER: _ClassVar[int]
47
+ CONTRACTED_UNIT_PRICE_FIELD_NUMBER: _ClassVar[int]
48
+ EFFECTIVE_COST_FIELD_NUMBER: _ClassVar[int]
49
+ INVOICE_ID_FIELD_NUMBER: _ClassVar[int]
50
+ INVOICE_ISSUER_NAME_FIELD_NUMBER: _ClassVar[int]
51
+ LIST_COST_FIELD_NUMBER: _ClassVar[int]
52
+ LIST_UNIT_PRICE_FIELD_NUMBER: _ClassVar[int]
53
+ PRICING_CATEGORY_FIELD_NUMBER: _ClassVar[int]
54
+ PRICING_CURRENCY_FIELD_NUMBER: _ClassVar[int]
55
+ PRICING_CURRENCY_CONTRACTED_UNIT_PRICE_FIELD_NUMBER: _ClassVar[int]
56
+ PRICING_CURRENCY_EFFECTIVE_COST_FIELD_NUMBER: _ClassVar[int]
57
+ PRICING_CURRENCY_LIST_UNIT_PRICE_FIELD_NUMBER: _ClassVar[int]
58
+ PRICING_QUANTITY_FIELD_NUMBER: _ClassVar[int]
59
+ PRICING_UNIT_FIELD_NUMBER: _ClassVar[int]
60
+ PROVIDER_NAME_FIELD_NUMBER: _ClassVar[int]
61
+ PUBLISHER_NAME_FIELD_NUMBER: _ClassVar[int]
62
+ REGION_ID_FIELD_NUMBER: _ClassVar[int]
63
+ REGION_NAME_FIELD_NUMBER: _ClassVar[int]
64
+ RESOURCE_ID_FIELD_NUMBER: _ClassVar[int]
65
+ RESOURCE_NAME_FIELD_NUMBER: _ClassVar[int]
66
+ RESOURCE_TYPE_FIELD_NUMBER: _ClassVar[int]
67
+ SERVICE_CATEGORY_FIELD_NUMBER: _ClassVar[int]
68
+ SERVICE_NAME_FIELD_NUMBER: _ClassVar[int]
69
+ SERVICE_SUBCATEGORY_FIELD_NUMBER: _ClassVar[int]
70
+ SKU_ID_FIELD_NUMBER: _ClassVar[int]
71
+ SKU_METER_FIELD_NUMBER: _ClassVar[int]
72
+ SKU_PRICE_DETAILS_FIELD_NUMBER: _ClassVar[int]
73
+ SKU_PRICE_ID_FIELD_NUMBER: _ClassVar[int]
74
+ SUB_ACCOUNT_ID_FIELD_NUMBER: _ClassVar[int]
75
+ SUB_ACCOUNT_NAME_FIELD_NUMBER: _ClassVar[int]
76
+ SUB_ACCOUNT_TYPE_FIELD_NUMBER: _ClassVar[int]
77
+ TAGS_FIELD_NUMBER: _ClassVar[int]
78
+ EXTRAS_FIELD_NUMBER: _ClassVar[int]
79
+ availability_zone: str
80
+ billed_cost: str
81
+ billing_account_id: str
82
+ billing_account_name: str
83
+ billing_account_type: str
84
+ billing_currency: str
85
+ billing_period_end: _timestamp_pb2.Timestamp
86
+ billing_period_start: _timestamp_pb2.Timestamp
87
+ capacity_reservation_id: str
88
+ capacity_reservation_status: str
89
+ charge_category: str
90
+ charge_class: str
91
+ charge_description: str
92
+ charge_frequency: str
93
+ charge_period_end: _timestamp_pb2.Timestamp
94
+ charge_period_start: _timestamp_pb2.Timestamp
95
+ commitment_discount_category: str
96
+ commitment_discount_id: str
97
+ commitment_discount_name: str
98
+ commitment_discount_quantity: str
99
+ commitment_discount_status: str
100
+ commitment_discount_type: str
101
+ commitment_discount_unit: str
102
+ consumed_quantity: str
103
+ consumed_unit: str
104
+ contracted_cost: str
105
+ contracted_unit_price: str
106
+ effective_cost: str
107
+ invoice_id: str
108
+ invoice_issuer_name: str
109
+ list_cost: str
110
+ list_unit_price: str
111
+ pricing_category: str
112
+ pricing_currency: str
113
+ pricing_currency_contracted_unit_price: str
114
+ pricing_currency_effective_cost: str
115
+ pricing_currency_list_unit_price: str
116
+ pricing_quantity: str
117
+ pricing_unit: str
118
+ provider_name: str
119
+ publisher_name: str
120
+ region_id: str
121
+ region_name: str
122
+ resource_id: str
123
+ resource_name: str
124
+ resource_type: str
125
+ service_category: str
126
+ service_name: str
127
+ service_subcategory: str
128
+ sku_id: str
129
+ sku_meter: str
130
+ sku_price_details: str
131
+ sku_price_id: str
132
+ sub_account_id: str
133
+ sub_account_name: str
134
+ sub_account_type: str
135
+ tags: str
136
+ extras: _containers.ScalarMap[str, str]
137
+ def __init__(self, availability_zone: _Optional[str] = ..., billed_cost: _Optional[str] = ..., billing_account_id: _Optional[str] = ..., billing_account_name: _Optional[str] = ..., billing_account_type: _Optional[str] = ..., billing_currency: _Optional[str] = ..., billing_period_end: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., billing_period_start: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., capacity_reservation_id: _Optional[str] = ..., capacity_reservation_status: _Optional[str] = ..., charge_category: _Optional[str] = ..., charge_class: _Optional[str] = ..., charge_description: _Optional[str] = ..., charge_frequency: _Optional[str] = ..., charge_period_end: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., charge_period_start: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., commitment_discount_category: _Optional[str] = ..., commitment_discount_id: _Optional[str] = ..., commitment_discount_name: _Optional[str] = ..., commitment_discount_quantity: _Optional[str] = ..., commitment_discount_status: _Optional[str] = ..., commitment_discount_type: _Optional[str] = ..., commitment_discount_unit: _Optional[str] = ..., consumed_quantity: _Optional[str] = ..., consumed_unit: _Optional[str] = ..., contracted_cost: _Optional[str] = ..., contracted_unit_price: _Optional[str] = ..., effective_cost: _Optional[str] = ..., invoice_id: _Optional[str] = ..., invoice_issuer_name: _Optional[str] = ..., list_cost: _Optional[str] = ..., list_unit_price: _Optional[str] = ..., pricing_category: _Optional[str] = ..., pricing_currency: _Optional[str] = ..., pricing_currency_contracted_unit_price: _Optional[str] = ..., pricing_currency_effective_cost: _Optional[str] = ..., pricing_currency_list_unit_price: _Optional[str] = ..., pricing_quantity: _Optional[str] = ..., pricing_unit: _Optional[str] = ..., provider_name: _Optional[str] = ..., publisher_name: _Optional[str] = ..., region_id: _Optional[str] = ..., region_name: _Optional[str] = ..., resource_id: _Optional[str] = ..., resource_name: _Optional[str] = ..., resource_type: _Optional[str] = ..., service_category: _Optional[str] = ..., service_name: _Optional[str] = ..., service_subcategory: _Optional[str] = ..., sku_id: _Optional[str] = ..., sku_meter: _Optional[str] = ..., sku_price_details: _Optional[str] = ..., sku_price_id: _Optional[str] = ..., sub_account_id: _Optional[str] = ..., sub_account_name: _Optional[str] = ..., sub_account_type: _Optional[str] = ..., tags: _Optional[str] = ..., extras: _Optional[_Mapping[str, str]] = ...) -> None: ...
@@ -0,0 +1,24 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
+ GRPC_VERSION = grpc.__version__
9
+ _version_not_supported = False
10
+
11
+ try:
12
+ from grpc._utilities import first_version_is_lower
13
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
14
+ except ImportError:
15
+ _version_not_supported = True
16
+
17
+ if _version_not_supported:
18
+ raise RuntimeError(
19
+ f'The grpc package installed is at version {GRPC_VERSION},'
20
+ + ' but the generated code in viio/sync/v1/focus_pb2_grpc.py depends on'
21
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
22
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
23
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
24
+ )
@@ -4,7 +4,7 @@ import grpc
4
4
  import warnings
5
5
 
6
6
 
7
- GRPC_GENERATED_VERSION = '1.83.1'
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
8
  GRPC_VERSION = grpc.__version__
9
9
  _version_not_supported = False
10
10
 
@@ -4,7 +4,7 @@ import grpc
4
4
  import warnings
5
5
 
6
6
 
7
- GRPC_GENERATED_VERSION = '1.83.1'
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
8
  GRPC_VERSION = grpc.__version__
9
9
  _version_not_supported = False
10
10
 
@@ -4,7 +4,7 @@ import grpc
4
4
  import warnings
5
5
 
6
6
 
7
- GRPC_GENERATED_VERSION = '1.83.1'
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
8
  GRPC_VERSION = grpc.__version__
9
9
  _version_not_supported = False
10
10
 
@@ -4,7 +4,7 @@ import grpc
4
4
  import warnings
5
5
 
6
6
 
7
- GRPC_GENERATED_VERSION = '1.83.1'
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
8
  GRPC_VERSION = grpc.__version__
9
9
  _version_not_supported = False
10
10
 
@@ -4,7 +4,7 @@ import grpc
4
4
  import warnings
5
5
 
6
6
 
7
- GRPC_GENERATED_VERSION = '1.83.1'
7
+ GRPC_GENERATED_VERSION = '1.84.0'
8
8
  GRPC_VERSION = grpc.__version__
9
9
  _version_not_supported = False
10
10
 
@@ -1,35 +0,0 @@
1
- # Changelog
2
-
3
- ## [0.3.0](https://github.com/viio-io/integration-domain/compare/viio-sync-api-sdk-v0.2.0...viio-sync-api-sdk-v0.3.0) (2026-09-08)
4
-
5
-
6
- ### Features
7
-
8
- * publish OpenAI organization usage ([#2422](https://github.com/viio-io/integration-domain/issues/2422)) ([91c0410](https://github.com/viio-io/integration-domain/commit/91c04108cd7cc7e25b62738bbd43dbe0557ac234))
9
-
10
-
11
- ### Bug Fixes
12
-
13
- * **sync-api:** let Google employees have no family name ([#2362](https://github.com/viio-io/integration-domain/issues/2362)) ([2a106eb](https://github.com/viio-io/integration-domain/commit/2a106eb8afedf565dfbd45c5d29043fe01a6ef0a))
14
-
15
- ## [0.2.0](https://github.com/viio-io/integration-domain/compare/viio-sync-api-sdk-v0.1.0...viio-sync-api-sdk-v0.2.0) (2026-08-05)
16
-
17
-
18
- ### Features
19
-
20
- * **sync-api:** add Microsoft audit log details ([#2338](https://github.com/viio-io/integration-domain/issues/2338)) ([2eb24b4](https://github.com/viio-io/integration-domain/commit/2eb24b4e03a1d60099ca54cc179a5a48a3e1442d))
21
- * **sync-api:** add optional account type to the Account contract ([#2331](https://github.com/viio-io/integration-domain/issues/2331)) ([4c734c5](https://github.com/viio-io/integration-domain/commit/4c734c5e39c47886978e785bc4fb5ff20898d0ec)), closes [#2328](https://github.com/viio-io/integration-domain/issues/2328)
22
-
23
-
24
- ### Bug Fixes
25
-
26
- * **sync-api-sdk:** repair release publishing ([#2323](https://github.com/viio-io/integration-domain/issues/2323)) ([9510126](https://github.com/viio-io/integration-domain/commit/9510126bf2541a781c8abdc742142c6b81ce7de6))
27
-
28
- ## 0.1.0 (2026-07-31)
29
-
30
-
31
- ### Features
32
-
33
- * **sync-api:** add Python SDK ([#2313](https://github.com/viio-io/integration-domain/issues/2313)) ([dbbfcf5](https://github.com/viio-io/integration-domain/commit/dbbfcf585dc9d99f71fba6e1ef1d3c4e5f57f9f5))
34
-
35
- ## Changelog
@@ -1,62 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # NO CHECKED-IN PROTOBUF GENCODE
4
- # source: viio/sync/v1/anthropic.proto
5
- # Protobuf Python Version: 7.35.1
6
- """Generated protocol buffer code."""
7
- from google.protobuf import descriptor as _descriptor
8
- from google.protobuf import descriptor_pool as _descriptor_pool
9
- from google.protobuf import runtime_version as _runtime_version
10
- from google.protobuf import symbol_database as _symbol_database
11
- from google.protobuf.internal import builder as _builder
12
- _runtime_version.ValidateProtobufRuntimeVersion(
13
- _runtime_version.Domain.PUBLIC,
14
- 7,
15
- 35,
16
- 1,
17
- '',
18
- 'viio/sync/v1/anthropic.proto'
19
- )
20
- # @@protoc_insertion_point(imports)
21
-
22
- _sym_db = _symbol_database.Default()
23
-
24
-
25
- from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
26
-
27
-
28
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cviio/sync/v1/anthropic.proto\x12\x0cviio.sync.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\xa4\x05\n\x12\x41nthropicChatUsage\x12/\n\x0bstarting_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\tending_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\naccount_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x17\n\napi_key_id\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x12service_account_id\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x0cworkspace_id\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x12\n\x05model\x18\x07 \x01(\tH\x04\x88\x01\x01\x12\x19\n\x0cservice_tier\x18\x08 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0e\x63ontext_window\x18\t \x01(\tH\x06\x88\x01\x01\x12\x1a\n\rinference_geo\x18\n \x01(\tH\x07\x88\x01\x01\x12\x1d\n\x15uncached_input_tokens\x18\x0b \x01(\x03\x12\x1f\n\x17\x63\x61\x63he_read_input_tokens\x18\x0c \x01(\x03\x12\x15\n\routput_tokens\x18\r \x01(\x03\x12<\n\x0e\x63\x61\x63he_creation\x18\x0e \x01(\x0b\x32$.viio.sync.v1.AnthropicCacheCreation\x12=\n\x0fserver_tool_use\x18\x0f \x01(\x0b\x32$.viio.sync.v1.AnthropicServerToolUseB\r\n\x0b_account_idB\r\n\x0b_api_key_idB\x15\n\x13_service_account_idB\x0f\n\r_workspace_idB\x08\n\x06_modelB\x0f\n\r_service_tierB\x11\n\x0f_context_windowB\x10\n\x0e_inference_geo\"^\n\x16\x41nthropicCacheCreation\x12!\n\x19\x65phemeral_1h_input_tokens\x18\x01 \x01(\x03\x12!\n\x19\x65phemeral_5m_input_tokens\x18\x02 \x01(\x03\"5\n\x16\x41nthropicServerToolUse\x12\x1b\n\x13web_search_requests\x18\x01 \x01(\x03\"\xdd\x03\n\rAnthropicCost\x12/\n\x0bstarting_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\tending_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06\x61mount\x18\x03 \x01(\t\x12\x10\n\x08\x63urrency\x18\x04 \x01(\t\x12\x19\n\x0cworkspace_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x16\n\tcost_type\x18\x07 \x01(\tH\x02\x88\x01\x01\x12\x17\n\ntoken_type\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x12\n\x05model\x18\t \x01(\tH\x04\x88\x01\x01\x12\x19\n\x0cservice_tier\x18\n \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0e\x63ontext_window\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x1a\n\rinference_geo\x18\x0c \x01(\tH\x07\x88\x01\x01\x42\x0f\n\r_workspace_idB\x0e\n\x0c_descriptionB\x0c\n\n_cost_typeB\r\n\x0b_token_typeB\x08\n\x06_modelB\x0f\n\r_service_tierB\x11\n\x0f_context_windowB\x10\n\x0e_inference_geo\"\x92\x04\n\x18\x41nthropicClaudeCodeUsage\x12(\n\x04\x64\x61te\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x05\x61\x63tor\x18\x02 \x01(\x0b\x32&.viio.sync.v1.AnthropicClaudeCodeActor\x12\x1c\n\x0forganization_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rcustomer_type\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1e\n\x11subscription_type\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rterminal_type\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x42\n\x0c\x63ore_metrics\x18\x07 \x01(\x0b\x32,.viio.sync.v1.AnthropicClaudeCodeCoreMetrics\x12\x42\n\x0ctool_actions\x18\x08 \x01(\x0b\x32,.viio.sync.v1.AnthropicClaudeCodeToolActions\x12I\n\x10model_breakdowns\x18\t \x03(\x0b\x32/.viio.sync.v1.AnthropicClaudeCodeModelBreakdownB\x12\n\x10_organization_idB\x10\n\x0e_customer_typeB\x14\n\x12_subscription_typeB\x10\n\x0e_terminal_type\"\x82\x01\n\x18\x41nthropicClaudeCodeActor\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x1a\n\remail_address\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0c\x61pi_key_name\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_email_addressB\x0f\n\r_api_key_name\"\xc1\x01\n\x1e\x41nthropicClaudeCodeCoreMetrics\x12\x14\n\x0cnum_sessions\x18\x01 \x01(\x03\x12\x43\n\rlines_of_code\x18\x02 \x01(\x0b\x32,.viio.sync.v1.AnthropicClaudeCodeLinesOfCode\x12\x1e\n\x16\x63ommits_by_claude_code\x18\x03 \x01(\x03\x12$\n\x1cpull_requests_by_claude_code\x18\x04 \x01(\x03\"@\n\x1e\x41nthropicClaudeCodeLinesOfCode\x12\r\n\x05\x61\x64\x64\x65\x64\x18\x01 \x01(\x03\x12\x0f\n\x07removed\x18\x02 \x01(\x03\"\xb0\x02\n\x1e\x41nthropicClaudeCodeToolActions\x12>\n\tedit_tool\x18\x01 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\x12\x44\n\x0fmulti_edit_tool\x18\x02 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\x12?\n\nwrite_tool\x18\x03 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\x12G\n\x12notebook_edit_tool\x18\x04 \x01(\x0b\x32+.viio.sync.v1.AnthropicClaudeCodeToolAction\"C\n\x1d\x41nthropicClaudeCodeToolAction\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x01 \x01(\x03\x12\x10\n\x08rejected\x18\x02 \x01(\x03\"\xb3\x01\n!AnthropicClaudeCodeModelBreakdown\x12\r\n\x05model\x18\x01 \x01(\t\x12\x37\n\x06tokens\x18\x02 \x01(\x0b\x32\'.viio.sync.v1.AnthropicClaudeCodeTokens\x12\x46\n\x0e\x65stimated_cost\x18\x03 \x01(\x0b\x32..viio.sync.v1.AnthropicClaudeCodeEstimatedCost\"f\n\x19\x41nthropicClaudeCodeTokens\x12\r\n\x05input\x18\x01 \x01(\x03\x12\x0e\n\x06output\x18\x02 \x01(\x03\x12\x12\n\ncache_read\x18\x03 \x01(\x03\x12\x16\n\x0e\x63\x61\x63he_creation\x18\x04 \x01(\x03\"D\n AnthropicClaudeCodeEstimatedCost\x12\x10\n\x08\x63urrency\x18\x01 \x01(\t\x12\x0e\n\x06\x61mount\x18\x02 \x01(\x03\x42\x1c\xaa\x02\x19Viio.SyncApi.V1.Contractsb\x06proto3')
29
-
30
- _globals = globals()
31
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
32
- _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'viio.sync.v1.anthropic_pb2', _globals)
33
- if not _descriptor._USE_C_DESCRIPTORS:
34
- _globals['DESCRIPTOR']._loaded_options = None
35
- _globals['DESCRIPTOR']._serialized_options = b'\252\002\031Viio.SyncApi.V1.Contracts'
36
- _globals['_ANTHROPICCHATUSAGE']._serialized_start=80
37
- _globals['_ANTHROPICCHATUSAGE']._serialized_end=756
38
- _globals['_ANTHROPICCACHECREATION']._serialized_start=758
39
- _globals['_ANTHROPICCACHECREATION']._serialized_end=852
40
- _globals['_ANTHROPICSERVERTOOLUSE']._serialized_start=854
41
- _globals['_ANTHROPICSERVERTOOLUSE']._serialized_end=907
42
- _globals['_ANTHROPICCOST']._serialized_start=910
43
- _globals['_ANTHROPICCOST']._serialized_end=1387
44
- _globals['_ANTHROPICCLAUDECODEUSAGE']._serialized_start=1390
45
- _globals['_ANTHROPICCLAUDECODEUSAGE']._serialized_end=1920
46
- _globals['_ANTHROPICCLAUDECODEACTOR']._serialized_start=1923
47
- _globals['_ANTHROPICCLAUDECODEACTOR']._serialized_end=2053
48
- _globals['_ANTHROPICCLAUDECODECOREMETRICS']._serialized_start=2056
49
- _globals['_ANTHROPICCLAUDECODECOREMETRICS']._serialized_end=2249
50
- _globals['_ANTHROPICCLAUDECODELINESOFCODE']._serialized_start=2251
51
- _globals['_ANTHROPICCLAUDECODELINESOFCODE']._serialized_end=2315
52
- _globals['_ANTHROPICCLAUDECODETOOLACTIONS']._serialized_start=2318
53
- _globals['_ANTHROPICCLAUDECODETOOLACTIONS']._serialized_end=2622
54
- _globals['_ANTHROPICCLAUDECODETOOLACTION']._serialized_start=2624
55
- _globals['_ANTHROPICCLAUDECODETOOLACTION']._serialized_end=2691
56
- _globals['_ANTHROPICCLAUDECODEMODELBREAKDOWN']._serialized_start=2694
57
- _globals['_ANTHROPICCLAUDECODEMODELBREAKDOWN']._serialized_end=2873
58
- _globals['_ANTHROPICCLAUDECODETOKENS']._serialized_start=2875
59
- _globals['_ANTHROPICCLAUDECODETOKENS']._serialized_end=2977
60
- _globals['_ANTHROPICCLAUDECODEESTIMATEDCOST']._serialized_start=2979
61
- _globals['_ANTHROPICCLAUDECODEESTIMATEDCOST']._serialized_end=3047
62
- # @@protoc_insertion_point(module_scope)
@@ -1,161 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # NO CHECKED-IN PROTOBUF GENCODE
4
- # source: viio/sync/v1/contracts.proto
5
- # Protobuf Python Version: 7.35.1
6
- """Generated protocol buffer code."""
7
- from google.protobuf import descriptor as _descriptor
8
- from google.protobuf import descriptor_pool as _descriptor_pool
9
- from google.protobuf import runtime_version as _runtime_version
10
- from google.protobuf import symbol_database as _symbol_database
11
- from google.protobuf.internal import builder as _builder
12
- _runtime_version.ValidateProtobufRuntimeVersion(
13
- _runtime_version.Domain.PUBLIC,
14
- 7,
15
- 35,
16
- 1,
17
- '',
18
- 'viio/sync/v1/contracts.proto'
19
- )
20
- # @@protoc_insertion_point(imports)
21
-
22
- _sym_db = _symbol_database.Default()
23
-
24
-
25
- from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
26
- from viio_sync_api.v1 import anthropic_pb2 as viio_dot_sync_dot_v1_dot_anthropic__pb2
27
- from viio_sync_api.v1 import bamboo_hr_pb2 as viio_dot_sync_dot_v1_dot_bamboo__hr__pb2
28
- from viio_sync_api.v1 import generic_pb2 as viio_dot_sync_dot_v1_dot_generic__pb2
29
- from viio_sync_api.v1 import google_pb2 as viio_dot_sync_dot_v1_dot_google__pb2
30
- from viio_sync_api.v1 import microsoft_pb2 as viio_dot_sync_dot_v1_dot_microsoft__pb2
31
- from viio_sync_api.v1 import okta_pb2 as viio_dot_sync_dot_v1_dot_okta__pb2
32
- from viio_sync_api.v1 import openai_pb2 as viio_dot_sync_dot_v1_dot_openai__pb2
33
-
34
-
35
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cviio/sync/v1/contracts.proto\x12\x0cviio.sync.v1\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cviio/sync/v1/anthropic.proto\x1a\x1cviio/sync/v1/bamboo_hr.proto\x1a\x1aviio/sync/v1/generic.proto\x1a\x19viio/sync/v1/google.proto\x1a\x1cviio/sync/v1/microsoft.proto\x1a\x17viio/sync/v1/okta.proto\x1a\x19viio/sync/v1/openai.proto\"C\n\x15StartSyncBatchRequest\x12*\n\"direct_integration_installation_id\x18\x01 \x01(\t\"}\n\x16StartSyncBatchResponse\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\x12\x0f\n\x07success\x18\x02 \x01(\x08\x12\x0f\n\x07message\x18\x03 \x01(\t\x12/\n\nerror_code\x18\x04 \x01(\x0e\x32\x1b.viio.sync.v1.SyncErrorCode\"\x87\x05\n\x12SyncRecordsRequest\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\x12.\n\x08\x61\x63\x63ounts\x18\x02 \x01(\x0b\x32\x1c.viio.sync.v1.AccountRecords\x12.\n\x08licenses\x18\x03 \x01(\x0b\x32\x1c.viio.sync.v1.LicenseRecords\x12(\n\x05plans\x18\x04 \x01(\x0b\x32\x19.viio.sync.v1.PlanRecords\x12)\n\x05usage\x18\x05 \x01(\x0b\x32\x1a.viio.sync.v1.UsageRecords\x12\x30\n\temployees\x18\x06 \x01(\x0b\x32\x1d.viio.sync.v1.EmployeeRecords\x12*\n\x06groups\x18\x07 \x01(\x0b\x32\x1a.viio.sync.v1.GroupRecords\x12\x37\n\rgroup_members\x18\x08 \x01(\x0b\x32 .viio.sync.v1.GroupMemberRecords\x12S\n\x1b\x65xternally_discovered_usage\x18\t \x01(\x0b\x32..viio.sync.v1.ExternallyDiscoveredUsageRecords\x12,\n\x07\x64\x65vices\x18\n \x01(\x0b\x32\x1b.viio.sync.v1.DeviceRecords\x12\x31\n\naudit_logs\x18\x0b \x01(\x0b\x32\x1d.viio.sync.v1.AuditLogRecords\x12.\n\x08\x61i_usage\x18\x0c \x01(\x0b\x32\x1c.viio.sync.v1.AiUsageRecords\x12-\n\x08\x61i_costs\x18\r \x01(\x0b\x32\x1b.viio.sync.v1.AiCostRecords\"8\n\x0e\x41\x63\x63ountRecords\x12&\n\x07records\x18\x01 \x03(\x0b\x32\x15.viio.sync.v1.Account\"8\n\x0eLicenseRecords\x12&\n\x07records\x18\x01 \x03(\x0b\x32\x15.viio.sync.v1.License\"2\n\x0bPlanRecords\x12#\n\x07records\x18\x01 \x03(\x0b\x32\x12.viio.sync.v1.Plan\"4\n\x0cUsageRecords\x12$\n\x07records\x18\x01 \x03(\x0b\x32\x13.viio.sync.v1.Usage\":\n\x0f\x45mployeeRecords\x12\'\n\x07records\x18\x01 \x03(\x0b\x32\x16.viio.sync.v1.Employee\"4\n\x0cGroupRecords\x12$\n\x07records\x18\x01 \x03(\x0b\x32\x13.viio.sync.v1.Group\"@\n\x12GroupMemberRecords\x12*\n\x07records\x18\x01 \x03(\x0b\x32\x19.viio.sync.v1.GroupMember\"\\\n ExternallyDiscoveredUsageRecords\x12\x38\n\x07records\x18\x01 \x03(\x0b\x32\'.viio.sync.v1.ExternallyDiscoveredUsage\"6\n\rDeviceRecords\x12%\n\x07records\x18\x01 \x03(\x0b\x32\x14.viio.sync.v1.Device\":\n\x0f\x41uditLogRecords\x12\'\n\x07records\x18\x01 \x03(\x0b\x32\x16.viio.sync.v1.AuditLog\"8\n\x0e\x41iUsageRecords\x12&\n\x07records\x18\x01 \x03(\x0b\x32\x15.viio.sync.v1.AiUsage\"6\n\rAiCostRecords\x12%\n\x07records\x18\x01 \x03(\x0b\x32\x14.viio.sync.v1.AiCost\"7\n\x13SyncRecordsResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\",\n\x18\x43ompleteSyncBatchRequest\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\"=\n\x19\x43ompleteSyncBatchResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\")\n\x15\x41\x62ortSyncBatchRequest\x12\x10\n\x08\x62\x61tch_id\x18\x01 \x01(\t\":\n\x16\x41\x62ortSyncBatchResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"I\n\x07\x41\x63\x63ount\x12\x36\n\x07generic\x18\x01 \x01(\x0b\x32#.viio.sync.v1.GenericAccountDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x8c\x02\n\x15GenericAccountDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\x04name\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05\x65mail\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x08username\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x13\n\x06\x61\x63tive\x18\x05 \x01(\x08H\x03\x88\x01\x01\x12\r\n\x05roles\x18\x06 \x03(\t\x12\x32\n\x07\x64\x65tails\x18\x07 \x01(\x0b\x32\x1c.viio.sync.v1.AccountDetailsH\x04\x88\x01\x01\x12\x11\n\x04type\x18\x08 \x01(\tH\x05\x88\x01\x01\x42\x07\n\x05_nameB\x08\n\x06_emailB\x0b\n\t_usernameB\t\n\x07_activeB\n\n\x08_detailsB\x07\n\x05_type\"V\n\x0e\x41\x63\x63ountDetails\x12:\n\tmicrosoft\x18\x01 \x01(\x0b\x32%.viio.sync.v1.MicrosoftAccountDetailsH\x00\x42\x08\n\x06vendor\"T\n\x17MicrosoftAccountDetails\x12/\n\x05teams\x18\x01 \x01(\x0b\x32\x1b.viio.sync.v1.TeamsMetadataH\x00\x88\x01\x01\x42\x08\n\x06_teams\"\"\n\rTeamsMetadata\x12\x11\n\thas_teams\x18\x01 \x01(\x08\"I\n\x07License\x12\x36\n\x07generic\x18\x01 \x01(\x0b\x32#.viio.sync.v1.GenericLicenseDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xa9\x01\n\x15GenericLicenseDetails\x12\x19\n\x11source_account_id\x18\x01 \x01(\t\x12\x16\n\x0esource_plan_id\x18\x02 \x01(\t\x12\x10\n\x08\x62illable\x18\x03 \x01(\x08\x12 \n\x13\x65xternal_product_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x11\n\tsource_id\x18\x05 \x01(\tB\x16\n\x14_external_product_id\"\x85\x01\n\x0bPlanDetails\x12.\n\x05model\x18\x01 \x01(\x0e\x32\x1f.viio.sync.v1.SubscriptionModel\x12>\n\nseat_based\x18\x02 \x01(\x0b\x32(.viio.sync.v1.SeatBasedSubscriptionModelH\x00\x42\x06\n\x04\x64\x61ta\"t\n\x1aSeatBasedSubscriptionModel\x12\x17\n\npaid_seats\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1b\n\x0e\x63onsumed_seats\x18\x02 \x01(\x05H\x01\x88\x01\x01\x42\r\n\x0b_paid_seatsB\x11\n\x0f_consumed_seats\"C\n\x04Plan\x12\x33\n\x07generic\x18\x01 \x01(\x0b\x32 .viio.sync.v1.GenericPlanDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x9f\x02\n\x12GenericPlanDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1a\n\x12\x65xternal_plan_name\x18\x02 \x01(\t\x12\"\n\x15\x65xternal_product_name\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x44\n\nattributes\x18\x04 \x03(\x0b\x32\x30.viio.sync.v1.GenericPlanDetails.AttributesEntry\x12*\n\x07\x64\x65tails\x18\x05 \x01(\x0b\x32\x19.viio.sync.v1.PlanDetails\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x18\n\x16_external_product_name\"E\n\x05Usage\x12\x34\n\x07generic\x18\x01 \x01(\x0b\x32!.viio.sync.v1.GenericUsageDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xdb\x01\n\x13GenericUsageDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x17\n\x0fsource_actor_id\x18\x02 \x01(\t\x12\"\n\x15\x65xternal_product_name\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0esource_plan_id\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x31\n\rlast_activity\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x18\n\x16_external_product_nameB\x11\n\x0f_source_plan_id\"m\n\x19\x45xternallyDiscoveredUsage\x12H\n\x07generic\x18\x01 \x01(\x0b\x32\x35.viio.sync.v1.GenericExternallyDiscoveredUsageDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xb8\x03\n\'GenericExternallyDiscoveredUsageDetails\x12\x17\n\x0fsource_actor_id\x18\x01 \x01(\t\x12\x18\n\x0b\x61\x63tor_email\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\"\n\x15\x65xternal_product_name\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x36\n\rlast_activity\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03\x88\x01\x01\x12;\n\x12last_activity_from\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x04\x88\x01\x01\x12\x39\n\x10last_activity_to\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x05\x88\x01\x01\x42\x0e\n\x0c_actor_emailB\x18\n\x16_external_product_nameB\t\n\x07_sourceB\x10\n\x0e_last_activityB\x15\n\x13_last_activity_fromB\x13\n\x11_last_activity_to\"\xae\x02\n\x08\x45mployee\x12\x37\n\x07generic\x18\x01 \x01(\x0b\x32$.viio.sync.v1.GenericEmployeeDetailsH\x00\x12;\n\tmicrosoft\x18\x02 \x01(\x0b\x32&.viio.sync.v1.MicrosoftEmployeeDetailsH\x00\x12\x35\n\x06google\x18\x03 \x01(\x0b\x32#.viio.sync.v1.GoogleEmployeeDetailsH\x00\x12\x31\n\x04okta\x18\x04 \x01(\x0b\x32!.viio.sync.v1.OktaEmployeeDetailsH\x00\x12:\n\tbamboo_hr\x18\x05 \x01(\x0b\x32%.viio.sync.v1.BambooHrEmployeeDetailsH\x00\x42\x06\n\x04\x64\x61ta\"E\n\x05Group\x12\x34\n\x07generic\x18\x01 \x01(\x0b\x32!.viio.sync.v1.GenericGroupDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\xfe\x02\n\x13GenericGroupDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x36\n\rdeletion_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12\x36\n\rcreation_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02\x88\x01\x01\x12\x15\n\remail_aliases\x18\x06 \x03(\t\x12\x45\n\nattributes\x18\x07 \x03(\x0b\x32\x31.viio.sync.v1.GenericGroupDetails.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x10\n\x0e_deletion_timeB\x10\n\x0e_creation_time\"Q\n\x0bGroupMember\x12:\n\x07generic\x18\x01 \x01(\x0b\x32\'.viio.sync.v1.GenericGroupMemberDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x9d\x03\n\x19GenericGroupMemberDetails\x12\x10\n\x08group_id\x18\x01 \x01(\t\x12\x11\n\tmember_id\x18\x02 \x01(\t\x12\x36\n\rdeletion_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x36\n\rcreation_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12+\n\x04type\x18\x05 \x01(\x0e\x32\x1d.viio.sync.v1.GroupMemberType\x12\x11\n\x04role\x18\x06 \x01(\tH\x02\x88\x01\x01\x12K\n\nattributes\x18\x07 \x03(\x0b\x32\x37.viio.sync.v1.GenericGroupMemberDetails.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x10\n\x0e_deletion_timeB\x10\n\x0e_creation_timeB\x07\n\x05_role\"7\n\x0b\x44\x65viceOwner\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\x05\x65mail\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_email\"G\n\x06\x44\x65vice\x12\x35\n\x07generic\x18\x01 \x01(\x0b\x32\".viio.sync.v1.GenericDeviceDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x9c\x01\n\x14GenericDeviceDetails\x12\n\n\x02id\x18\x01 \x01(\t\x12-\n\x05owner\x18\x02 \x01(\x0b\x32\x19.viio.sync.v1.DeviceOwnerH\x00\x88\x01\x01\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x15\n\rserial_number\x18\x04 \x01(\t\x12\x11\n\x04uuid\x18\x05 \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_ownerB\x07\n\x05_uuid\"6\n\rAuditLogActor\x12\x0f\n\x02id\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05\x65mail\x18\x02 \x01(\tB\x05\n\x03_id\"\xe4\x01\n\x08\x41uditLog\x12\x37\n\x07generic\x18\x01 \x01(\x0b\x32$.viio.sync.v1.GenericAuditLogDetailsH\x00\x12I\n\x11microsoft_sign_in\x18\x02 \x01(\x0b\x32,.viio.sync.v1.MicrosoftSignInAuditLogDetailsH\x00\x12L\n\x12microsoft_security\x18\x03 \x01(\x0b\x32..viio.sync.v1.MicrosoftSecurityAuditLogDetailsH\x00\x42\x06\n\x04\x64\x61ta\"\x81\x02\n\x16GenericAuditLogDetails\x12(\n\x04\x64\x61te\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10\x61udit_log_source\x18\x02 \x01(\t\x12*\n\x05\x61\x63tor\x18\x03 \x01(\x0b\x32\x1b.viio.sync.v1.AuditLogActor\x12\x18\n\x10\x61pplication_name\x18\x04 \x01(\t\x12\x0e\n\x06source\x18\x05 \x01(\t\x12\x15\n\ractivity_name\x18\x06 \x01(\t\x12\x13\n\x06scopes\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x0e\x65vent_provider\x18\x08 \x01(\tB\t\n\x07_scopes\"\xfb\x01\n\x07\x41iUsage\x12*\n\x08provider\x18\x01 \x01(\x0e\x32\x18.viio.sync.v1.AiProvider\x12@\n\x14\x61nthropic_chat_usage\x18\x02 \x01(\x0b\x32 .viio.sync.v1.AnthropicChatUsageH\x00\x12G\n\x15\x61nthropic_claude_code\x18\x03 \x01(\x0b\x32&.viio.sync.v1.AnthropicClaudeCodeUsageH\x00\x12\x31\n\x0copenai_usage\x18\x04 \x01(\x0b\x32\x19.viio.sync.v1.OpenAiUsageH\x00\x42\x06\n\x04\x64\x61ta\"\xa4\x01\n\x06\x41iCost\x12*\n\x08provider\x18\x01 \x01(\x0e\x32\x18.viio.sync.v1.AiProvider\x12\x35\n\x0e\x61nthropic_cost\x18\x02 \x01(\x0b\x32\x1b.viio.sync.v1.AnthropicCostH\x00\x12/\n\x0bopenai_cost\x18\x03 \x01(\x0b\x32\x18.viio.sync.v1.OpenAiCostH\x00\x42\x06\n\x04\x64\x61ta*v\n\nAiProvider\x12\x1b\n\x17\x41I_PROVIDER_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41I_PROVIDER_ANTHROPIC\x10\x01\x12\x17\n\x13\x41I_PROVIDER_GENERIC\x10\x02\x12\x17\n\x13\x41I_PROVIDER_OPEN_AI\x10\x03*Z\n\x11SubscriptionModel\x12\"\n\x1eSUBSCRIPTION_MODEL_UNSPECIFIED\x10\x00\x12!\n\x1dSUBSCRIPTION_MODEL_SEAT_BASED\x10\x01*m\n\x0fGroupMemberType\x12!\n\x1dGROUP_MEMBER_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16GROUP_MEMBER_TYPE_USER\x10\x01\x12\x1b\n\x17GROUP_MEMBER_TYPE_GROUP\x10\x02*^\n\rSyncErrorCode\x12\x1f\n\x1bSYNC_ERROR_CODE_UNSPECIFIED\x10\x00\x12,\n(SYNC_ERROR_CODE_SYNC_ALREADY_IN_PROGRESS\x10\x01\x32\x83\x03\n\x0bSyncService\x12[\n\x0eStartSyncBatch\x12#.viio.sync.v1.StartSyncBatchRequest\x1a$.viio.sync.v1.StartSyncBatchResponse\x12T\n\x0bSyncRecords\x12 .viio.sync.v1.SyncRecordsRequest\x1a!.viio.sync.v1.SyncRecordsResponse(\x01\x12\x64\n\x11\x43ompleteSyncBatch\x12&.viio.sync.v1.CompleteSyncBatchRequest\x1a\'.viio.sync.v1.CompleteSyncBatchResponse\x12[\n\x0e\x41\x62ortSyncBatch\x12#.viio.sync.v1.AbortSyncBatchRequest\x1a$.viio.sync.v1.AbortSyncBatchResponseB\x1c\xaa\x02\x19Viio.SyncApi.V1.Contractsb\x06proto3')
36
-
37
- _globals = globals()
38
- _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
39
- _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'viio.sync.v1.contracts_pb2', _globals)
40
- if not _descriptor._USE_C_DESCRIPTORS:
41
- _globals['DESCRIPTOR']._loaded_options = None
42
- _globals['DESCRIPTOR']._serialized_options = b'\252\002\031Viio.SyncApi.V1.Contracts'
43
- _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._loaded_options = None
44
- _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._serialized_options = b'8\001'
45
- _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._loaded_options = None
46
- _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._serialized_options = b'8\001'
47
- _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._loaded_options = None
48
- _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._serialized_options = b'8\001'
49
- _globals['_AIPROVIDER']._serialized_start=6897
50
- _globals['_AIPROVIDER']._serialized_end=7015
51
- _globals['_SUBSCRIPTIONMODEL']._serialized_start=7017
52
- _globals['_SUBSCRIPTIONMODEL']._serialized_end=7107
53
- _globals['_GROUPMEMBERTYPE']._serialized_start=7109
54
- _globals['_GROUPMEMBERTYPE']._serialized_end=7218
55
- _globals['_SYNCERRORCODE']._serialized_start=7220
56
- _globals['_SYNCERRORCODE']._serialized_end=7314
57
- _globals['_STARTSYNCBATCHREQUEST']._serialized_start=276
58
- _globals['_STARTSYNCBATCHREQUEST']._serialized_end=343
59
- _globals['_STARTSYNCBATCHRESPONSE']._serialized_start=345
60
- _globals['_STARTSYNCBATCHRESPONSE']._serialized_end=470
61
- _globals['_SYNCRECORDSREQUEST']._serialized_start=473
62
- _globals['_SYNCRECORDSREQUEST']._serialized_end=1120
63
- _globals['_ACCOUNTRECORDS']._serialized_start=1122
64
- _globals['_ACCOUNTRECORDS']._serialized_end=1178
65
- _globals['_LICENSERECORDS']._serialized_start=1180
66
- _globals['_LICENSERECORDS']._serialized_end=1236
67
- _globals['_PLANRECORDS']._serialized_start=1238
68
- _globals['_PLANRECORDS']._serialized_end=1288
69
- _globals['_USAGERECORDS']._serialized_start=1290
70
- _globals['_USAGERECORDS']._serialized_end=1342
71
- _globals['_EMPLOYEERECORDS']._serialized_start=1344
72
- _globals['_EMPLOYEERECORDS']._serialized_end=1402
73
- _globals['_GROUPRECORDS']._serialized_start=1404
74
- _globals['_GROUPRECORDS']._serialized_end=1456
75
- _globals['_GROUPMEMBERRECORDS']._serialized_start=1458
76
- _globals['_GROUPMEMBERRECORDS']._serialized_end=1522
77
- _globals['_EXTERNALLYDISCOVEREDUSAGERECORDS']._serialized_start=1524
78
- _globals['_EXTERNALLYDISCOVEREDUSAGERECORDS']._serialized_end=1616
79
- _globals['_DEVICERECORDS']._serialized_start=1618
80
- _globals['_DEVICERECORDS']._serialized_end=1672
81
- _globals['_AUDITLOGRECORDS']._serialized_start=1674
82
- _globals['_AUDITLOGRECORDS']._serialized_end=1732
83
- _globals['_AIUSAGERECORDS']._serialized_start=1734
84
- _globals['_AIUSAGERECORDS']._serialized_end=1790
85
- _globals['_AICOSTRECORDS']._serialized_start=1792
86
- _globals['_AICOSTRECORDS']._serialized_end=1846
87
- _globals['_SYNCRECORDSRESPONSE']._serialized_start=1848
88
- _globals['_SYNCRECORDSRESPONSE']._serialized_end=1903
89
- _globals['_COMPLETESYNCBATCHREQUEST']._serialized_start=1905
90
- _globals['_COMPLETESYNCBATCHREQUEST']._serialized_end=1949
91
- _globals['_COMPLETESYNCBATCHRESPONSE']._serialized_start=1951
92
- _globals['_COMPLETESYNCBATCHRESPONSE']._serialized_end=2012
93
- _globals['_ABORTSYNCBATCHREQUEST']._serialized_start=2014
94
- _globals['_ABORTSYNCBATCHREQUEST']._serialized_end=2055
95
- _globals['_ABORTSYNCBATCHRESPONSE']._serialized_start=2057
96
- _globals['_ABORTSYNCBATCHRESPONSE']._serialized_end=2115
97
- _globals['_ACCOUNT']._serialized_start=2117
98
- _globals['_ACCOUNT']._serialized_end=2190
99
- _globals['_GENERICACCOUNTDETAILS']._serialized_start=2193
100
- _globals['_GENERICACCOUNTDETAILS']._serialized_end=2461
101
- _globals['_ACCOUNTDETAILS']._serialized_start=2463
102
- _globals['_ACCOUNTDETAILS']._serialized_end=2549
103
- _globals['_MICROSOFTACCOUNTDETAILS']._serialized_start=2551
104
- _globals['_MICROSOFTACCOUNTDETAILS']._serialized_end=2635
105
- _globals['_TEAMSMETADATA']._serialized_start=2637
106
- _globals['_TEAMSMETADATA']._serialized_end=2671
107
- _globals['_LICENSE']._serialized_start=2673
108
- _globals['_LICENSE']._serialized_end=2746
109
- _globals['_GENERICLICENSEDETAILS']._serialized_start=2749
110
- _globals['_GENERICLICENSEDETAILS']._serialized_end=2918
111
- _globals['_PLANDETAILS']._serialized_start=2921
112
- _globals['_PLANDETAILS']._serialized_end=3054
113
- _globals['_SEATBASEDSUBSCRIPTIONMODEL']._serialized_start=3056
114
- _globals['_SEATBASEDSUBSCRIPTIONMODEL']._serialized_end=3172
115
- _globals['_PLAN']._serialized_start=3174
116
- _globals['_PLAN']._serialized_end=3241
117
- _globals['_GENERICPLANDETAILS']._serialized_start=3244
118
- _globals['_GENERICPLANDETAILS']._serialized_end=3531
119
- _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._serialized_start=3456
120
- _globals['_GENERICPLANDETAILS_ATTRIBUTESENTRY']._serialized_end=3505
121
- _globals['_USAGE']._serialized_start=3533
122
- _globals['_USAGE']._serialized_end=3602
123
- _globals['_GENERICUSAGEDETAILS']._serialized_start=3605
124
- _globals['_GENERICUSAGEDETAILS']._serialized_end=3824
125
- _globals['_EXTERNALLYDISCOVEREDUSAGE']._serialized_start=3826
126
- _globals['_EXTERNALLYDISCOVEREDUSAGE']._serialized_end=3935
127
- _globals['_GENERICEXTERNALLYDISCOVEREDUSAGEDETAILS']._serialized_start=3938
128
- _globals['_GENERICEXTERNALLYDISCOVEREDUSAGEDETAILS']._serialized_end=4378
129
- _globals['_EMPLOYEE']._serialized_start=4381
130
- _globals['_EMPLOYEE']._serialized_end=4683
131
- _globals['_GROUP']._serialized_start=4685
132
- _globals['_GROUP']._serialized_end=4754
133
- _globals['_GENERICGROUPDETAILS']._serialized_start=4757
134
- _globals['_GENERICGROUPDETAILS']._serialized_end=5139
135
- _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._serialized_start=3456
136
- _globals['_GENERICGROUPDETAILS_ATTRIBUTESENTRY']._serialized_end=3505
137
- _globals['_GROUPMEMBER']._serialized_start=5141
138
- _globals['_GROUPMEMBER']._serialized_end=5222
139
- _globals['_GENERICGROUPMEMBERDETAILS']._serialized_start=5225
140
- _globals['_GENERICGROUPMEMBERDETAILS']._serialized_end=5638
141
- _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._serialized_start=3456
142
- _globals['_GENERICGROUPMEMBERDETAILS_ATTRIBUTESENTRY']._serialized_end=3505
143
- _globals['_DEVICEOWNER']._serialized_start=5640
144
- _globals['_DEVICEOWNER']._serialized_end=5695
145
- _globals['_DEVICE']._serialized_start=5697
146
- _globals['_DEVICE']._serialized_end=5768
147
- _globals['_GENERICDEVICEDETAILS']._serialized_start=5771
148
- _globals['_GENERICDEVICEDETAILS']._serialized_end=5927
149
- _globals['_AUDITLOGACTOR']._serialized_start=5929
150
- _globals['_AUDITLOGACTOR']._serialized_end=5983
151
- _globals['_AUDITLOG']._serialized_start=5986
152
- _globals['_AUDITLOG']._serialized_end=6214
153
- _globals['_GENERICAUDITLOGDETAILS']._serialized_start=6217
154
- _globals['_GENERICAUDITLOGDETAILS']._serialized_end=6474
155
- _globals['_AIUSAGE']._serialized_start=6477
156
- _globals['_AIUSAGE']._serialized_end=6728
157
- _globals['_AICOST']._serialized_start=6731
158
- _globals['_AICOST']._serialized_end=6895
159
- _globals['_SYNCSERVICE']._serialized_start=7317
160
- _globals['_SYNCSERVICE']._serialized_end=7704
161
- # @@protoc_insertion_point(module_scope)