passkit-ruby-grpc-sdk 1.1.105 → 1.1.162

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 (87) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +21 -0
  3. data/README.md +38 -0
  4. data/lib/ct/scheduler/scheduler_pb.rb +2 -1
  5. data/lib/io/analytics/a_rpc_pb.rb +3 -2
  6. data/lib/io/analytics/a_rpc_services_pb.rb +3 -2
  7. data/lib/io/certificate/certificate_pb.rb +9 -2
  8. data/lib/io/common/attributes_pb.rb +2 -2
  9. data/lib/io/common/batch_update_pb.rb +20 -0
  10. data/lib/io/common/billing_pb.rb +1 -1
  11. data/lib/io/common/common_objects_pb.rb +4 -2
  12. data/lib/io/common/distribution_pb.rb +10 -2
  13. data/lib/io/common/expiry_pb.rb +1 -1
  14. data/lib/io/common/featured_actions_pb.rb +16 -0
  15. data/lib/io/common/filter_pb.rb +2 -1
  16. data/lib/io/common/integration_pb.rb +2 -1
  17. data/lib/io/common/links_pb.rb +1 -1
  18. data/lib/io/common/localization_pb.rb +1 -1
  19. data/lib/io/common/message_pb.rb +4 -3
  20. data/lib/io/common/metrics_pb.rb +2 -2
  21. data/lib/io/common/note_pb.rb +1 -1
  22. data/lib/io/common/operation_pb.rb +1 -1
  23. data/lib/io/common/pagination_pb.rb +2 -1
  24. data/lib/io/common/pass_pb.rb +4 -2
  25. data/lib/io/common/personal_pb.rb +1 -1
  26. data/lib/io/common/project_pb.rb +2 -2
  27. data/lib/io/common/protocols_pb.rb +1 -1
  28. data/lib/io/common/proximity_pb.rb +2 -1
  29. data/lib/io/common/reporting_pb.rb +2 -1
  30. data/lib/io/common/semantics_pb.rb +26 -0
  31. data/lib/io/common/template_pb.rb +6 -2
  32. data/lib/io/common/tracking_pb.rb +1 -1
  33. data/lib/io/common/transaction_pb.rb +2 -1
  34. data/lib/io/common/useragent_pb.rb +1 -1
  35. data/lib/io/core/a_rpc_certificates_pb.rb +3 -2
  36. data/lib/io/core/a_rpc_certificates_services_pb.rb +20 -0
  37. data/lib/io/core/a_rpc_distribution_pb.rb +4 -2
  38. data/lib/io/core/a_rpc_distribution_services_pb.rb +12 -0
  39. data/lib/io/core/a_rpc_images_pb.rb +3 -2
  40. data/lib/io/core/a_rpc_images_services_pb.rb +24 -1
  41. data/lib/io/core/a_rpc_messages_pb.rb +2 -1
  42. data/lib/io/core/a_rpc_messages_services_pb.rb +5 -0
  43. data/lib/io/core/a_rpc_others_pb.rb +3 -2
  44. data/lib/io/core/a_rpc_others_services_pb.rb +50 -1
  45. data/lib/io/core/a_rpc_templates_pb.rb +3 -2
  46. data/lib/io/core/a_rpc_templates_services_pb.rb +42 -0
  47. data/lib/io/event_tickets/a_rpc_pb.rb +3 -2
  48. data/lib/io/event_tickets/a_rpc_services_pb.rb +47 -1
  49. data/lib/io/event_tickets/event_pb.rb +5 -2
  50. data/lib/io/event_tickets/production_pb.rb +4 -2
  51. data/lib/io/event_tickets/ticket_pb.rb +4 -2
  52. data/lib/io/event_tickets/ticket_type_pb.rb +2 -1
  53. data/lib/io/event_tickets/venue_pb.rb +4 -2
  54. data/lib/io/flights/a_rpc_pb.rb +3 -2
  55. data/lib/io/flights/a_rpc_services_pb.rb +23 -22
  56. data/lib/io/flights/airport_pb.rb +4 -2
  57. data/lib/io/flights/barcode_pb.rb +14 -2
  58. data/lib/io/flights/boarding_pass_pb.rb +3 -2
  59. data/lib/io/flights/cabin_codes/cabin_codes_pb.rb +1 -1
  60. data/lib/io/flights/carrier_pb.rb +2 -1
  61. data/lib/io/flights/flight_designator_pb.rb +4 -8
  62. data/lib/io/flights/flight_pb.rb +4 -5
  63. data/lib/io/flights/passenger_pb.rb +3 -2
  64. data/lib/io/image/image_pb.rb +3 -2
  65. data/lib/io/member/a_rpc_pb.rb +4 -2
  66. data/lib/io/member/a_rpc_services_pb.rb +50 -18
  67. data/lib/io/member/event_pb.rb +2 -2
  68. data/lib/io/member/member_events_pb.rb +2 -1
  69. data/lib/io/member/member_pb.rb +3 -2
  70. data/lib/io/member/program_pb.rb +2 -1
  71. data/lib/io/member/tier_pb.rb +2 -1
  72. data/lib/io/raw/a_rpc_pb.rb +3 -2
  73. data/lib/io/raw/a_rpc_services_pb.rb +14 -1
  74. data/lib/io/raw/pass_pb.rb +2 -1
  75. data/lib/io/raw/project_pb.rb +2 -1
  76. data/lib/io/scheduler/a_rpc_pb.rb +3 -2
  77. data/lib/io/scheduler/a_rpc_services_pb.rb +8 -0
  78. data/lib/io/scheduler/scheduler_pb.rb +1 -1
  79. data/lib/io/single_use_coupons/a_rpc_pb.rb +3 -2
  80. data/lib/io/single_use_coupons/a_rpc_services_pb.rb +33 -1
  81. data/lib/io/single_use_coupons/campaign_pb.rb +2 -1
  82. data/lib/io/single_use_coupons/coupon_pb.rb +2 -1
  83. data/lib/io/single_use_coupons/offer_pb.rb +3 -2
  84. data/lib/io/user/user_pb.rb +4 -2
  85. data/lib/protoc-gen-openapiv2/options/annotations_pb.rb +12 -0
  86. data/lib/protoc-gen-openapiv2/options/openapiv2_pb.rb +11 -0
  87. metadata +47 -6
@@ -9,9 +9,9 @@ require 'io/common/protocols_pb'
9
9
  require 'io/common/template_pb'
10
10
 
11
11
 
12
- descriptor_data = "\n\x17io/common/project.proto\x12\x02io\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x19io/common/protocols.proto\x1a\x18io/common/template.proto\"\xc3\x01\n\x07Project\x12\"\n\x08protocol\x18\x01 \x01(\x0e\x32\x10.io.PassProtocol\x12\x0f\n\x07\x63lassId\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x11\n\tshortCode\x18\x04 \x01(\t\x12+\n\x07\x63reated\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06secret\x18\x06 \x01(\t\x12\x0b\n\x03key\x18\x07 \x01(\t\x12\x18\n\x10\x65ncryptedClassId\x18\t \x01(\t\"\\\n\x18ProjectByShortCodeResult\x12\x1c\n\x07project\x18\x01 \x01(\x0b\x32\x0b.io.Project\x12\"\n\x08template\x18\x02 \x01(\x0b\x32\x10.io.PassTemplate\"8\n\x13ProjectStatusFilter\x12!\n\x06status\x18\x01 \x01(\x0e\x32\x11.io.ProjectStatus*\xe4\x01\n\rProjectStatus\x12\x15\n\x11NO_PROJECT_STATUS\x10\x00\x12&\n\"PROJECT_ACTIVE_FOR_OBJECT_CREATION\x10\x01\x12(\n$PROJECT_DISABLED_FOR_OBJECT_CREATION\x10\x02\x12\x11\n\rPROJECT_DRAFT\x10\x04\x12\x15\n\x11PROJECT_PUBLISHED\x10\x08\x12\x13\n\x0fPROJECT_PRIVATE\x10\x10\x12\x16\n\x12PROJECT_OVER_QUOTA\x10 \x12\x13\n\x0fPROJECT_DELETED\x10@BG\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
12
+ descriptor_data = "\n\x17io/common/project.proto\x12\x02io\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x19io/common/protocols.proto\x1a\x18io/common/template.proto\"\xc3\x01\n\x07Project\x12\"\n\x08protocol\x18\x01 \x01(\x0e\x32\x10.io.PassProtocol\x12\x0f\n\x07\x63lassId\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x11\n\tshortCode\x18\x04 \x01(\t\x12+\n\x07\x63reated\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06secret\x18\x06 \x01(\t\x12\x0b\n\x03key\x18\x07 \x01(\t\x12\x18\n\x10\x65ncryptedClassId\x18\t \x01(\t\"\\\n\x18ProjectByShortCodeResult\x12\x1c\n\x07project\x18\x01 \x01(\x0b\x32\x0b.io.Project\x12\"\n\x08template\x18\x02 \x01(\x0b\x32\x10.io.PassTemplate\"8\n\x13ProjectStatusFilter\x12!\n\x06status\x18\x01 \x01(\x0e\x32\x11.io.ProjectStatus*\x9e\x02\n\rProjectStatus\x12\x15\n\x11NO_PROJECT_STATUS\x10\x00\x12&\n\"PROJECT_ACTIVE_FOR_OBJECT_CREATION\x10\x01\x12(\n$PROJECT_DISABLED_FOR_OBJECT_CREATION\x10\x02\x12\x11\n\rPROJECT_DRAFT\x10\x04\x12\x15\n\x11PROJECT_PUBLISHED\x10\x08\x12\x13\n\x0fPROJECT_PRIVATE\x10\x10\x12\x16\n\x12PROJECT_OVER_QUOTA\x10 \x12\x13\n\x0fPROJECT_DELETED\x10@\x12\x1a\n\x15PROJECT_EMAIL_WARNING\x10\x80\x01\x12\x1c\n\x17PROJECT_EMAIL_SUSPENDED\x10\x80\x02\x42G\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
13
13
 
14
- pool = Google::Protobuf::DescriptorPool.generated_pool
14
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
15
15
  pool.add_serialized_file(descriptor_data)
16
16
 
17
17
  module Io
@@ -7,7 +7,7 @@ require 'google/protobuf'
7
7
 
8
8
  descriptor_data = "\n\x19io/common/protocols.proto\x12\x02io*\xa0\x01\n\x0cPassProtocol\x12\x1c\n\x18PASS_PROTOCOL_DO_NOT_USE\x10\x00\x12\x10\n\x0cRAW_PROTOCOL\x10\x01\x12\x0f\n\x0bV1_PROTOCOL\x10\x02\x12\x13\n\x0f\x46LIGHT_PROTOCOL\x10\x03\x12\x0e\n\nMEMBERSHIP\x10\x64\x12\x15\n\x11SINGLE_USE_COUPON\x10\x65\x12\x13\n\x0f\x45VENT_TICKETING\x10\x66*\x8e\x02\n\x14ProtocolCommonEvents\x12%\n!PROTOCOL_COMMON_EVENTS_DO_NOT_USE\x10\x00\x12\x18\n\x14\x45VENT_OBJECT_CREATED\x10\x01\x12\x18\n\x14\x45VENT_OBJECT_UPDATED\x10\x02\x12\x18\n\x14\x45VENT_OBJECT_EXPIRED\x10\x03\x12\x18\n\x14\x45VENT_OBJECT_DELETED\x10\x04\x12\x15\n\x11\x45VENT_PASS_ISSUED\x10\x05\x12\x18\n\x14\x45VENT_PASS_INSTALLED\x10\x06\x12\x1a\n\x16\x45VENT_PASS_UNINSTALLED\x10\x07\x12\x1a\n\x16\x45VENT_PASS_INVALIDATED\x10\x08\x42G\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
9
9
 
10
- pool = Google::Protobuf::DescriptorPool.generated_pool
10
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
11
11
  pool.add_serialized_file(descriptor_data)
12
12
 
13
13
  module Io
@@ -3,13 +3,14 @@
3
3
  # source: io/common/proximity.proto
4
4
 
5
5
  require 'google/protobuf'
6
+ require 'protoc-gen-openapiv2/options/annotations_pb'
6
7
 
7
8
  require 'io/common/localization_pb'
8
9
 
9
10
 
10
11
  descriptor_data = "\n\x19io/common/proximity.proto\x12\x02io\x1a\x1cio/common/localization.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\"\xa7\x03\n\x06\x42\x65\x61\x63on\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04uuid\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x1b\n\x05major\x18\x04 \x01(\rB\x0c\x92\x41\tY\x00\x00\x00\x00\xe0\xff\xef@\x12\x1b\n\x05minor\x18\x05 \x01(\rB\x0c\x92\x41\tY\x00\x00\x00\x00\xe0\xff\xef@\x12\x19\n\x11lockScreenMessage\x18\x06 \x01(\t\x12\x37\n\x1alocalizedLockScreenMessage\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\x12\x10\n\x08position\x18\x08 \x01(\r:\xd4\x01\x92\x41\xd0\x01\n\xcd\x01*\x06\x42\x65\x61\x63on2\xa7\x01\x41 beacon record enables the pass to push a message to the lock screen when the user is in close proximity with the beacon. Beacons are currently only supported by iOS.\xd2\x01\x04uuid\xd2\x01\x11lockScreenMessage\"\x94\x03\n\x0bGPSLocation\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0b\n\x03lat\x18\x03 \x01(\x01\x12\x0b\n\x03lon\x18\x04 \x01(\x01\x12\x0b\n\x03\x61lt\x18\x05 \x01(\x05\x12\x19\n\x11lockScreenMessage\x18\x06 \x01(\t\x12\x37\n\x1alocalizedLockScreenMessage\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\x12\x10\n\x08position\x18\x08 \x01(\r:\xdd\x01\x92\x41\xd9\x01\n\xd6\x01*\x0cGPS Location2\xa4\x01\x41 location record enables the pass to be pushed to the lock screen when the user is in near the location. For iOS users, a customized message can also be displayed.\xd2\x01\x03lat\xd2\x01\x04long\xd2\x01\x11lockScreenMessage\"!\n\x0cRelevantDate\x12\x11\n\ttimestamp\x18\x01 \x01(\rBG\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
11
12
 
12
- pool = Google::Protobuf::DescriptorPool.generated_pool
13
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
13
14
  pool.add_serialized_file(descriptor_data)
14
15
 
15
16
  module Io
@@ -3,6 +3,7 @@
3
3
  # source: io/common/reporting.proto
4
4
 
5
5
  require 'google/protobuf'
6
+ require 'protoc-gen-openapiv2/options/annotations_pb'
6
7
 
7
8
  require 'io/common/protocols_pb'
8
9
  require 'io/common/common_objects_pb'
@@ -10,7 +11,7 @@ require 'io/common/common_objects_pb'
10
11
 
11
12
  descriptor_data = "\n\x19io/common/reporting.proto\x12\x02io\x1a\x19io/common/protocols.proto\x1a\x1eio/common/common_objects.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\"\xdf\x06\n\x11\x41nalyticsResponse\x12\x1a\n\x06period\x18\x01 \x01(\x0e\x32\n.io.Period\x12\x0f\n\x07\x63reated\x18\x02 \x01(\r\x12\x11\n\tinstalled\x18\x03 \x01(\r\x12\x0f\n\x07\x64\x65leted\x18\x04 \x01(\r\x12\x13\n\x0binvalidated\x18\x05 \x01(\r\x12,\n\x0f\x64\x65viceBreakdown\x18\x06 \x01(\x0b\x32\x13.io.DeviceBreakdown\x12I\n\x12utmSourceBreakdown\x18\x07 \x03(\x0b\x32-.io.AnalyticsResponse.UtmSourceBreakdownEntry\x12!\n\x04\x64\x61ta\x18\x08 \x03(\x0b\x32\x13.io.ChartDataPoints\x12I\n\x12utmMediumBreakdown\x18\t \x03(\x0b\x32-.io.AnalyticsResponse.UtmMediumBreakdownEntry\x12\x45\n\x10utmNameBreakdown\x18\n \x03(\x0b\x32+.io.AnalyticsResponse.UtmNameBreakdownEntry\x12\x45\n\x10utmTermBreakdown\x18\x0b \x03(\x0b\x32+.io.AnalyticsResponse.UtmTermBreakdownEntry\x12K\n\x13utmContentBreakdown\x18\x0c \x03(\x0b\x32..io.AnalyticsResponse.UtmContentBreakdownEntry\x1a\x39\n\x17UtmSourceBreakdownEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\x1a\x39\n\x17UtmMediumBreakdownEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\x1a\x37\n\x15UtmNameBreakdownEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\x1a\x37\n\x15UtmTermBreakdownEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\x1a:\n\x18UtmContentBreakdownEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\"N\n\x0f\x44\x65viceBreakdown\x12\x13\n\x0b\x61ppleWallet\x18\x01 \x01(\r\x12\x11\n\tgooglePay\x18\x02 \x01(\r\x12\x13\n\x0botherWallet\x18\x03 \x01(\r\"\x8a\x01\n\x0f\x43hartDataPoints\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07\x63reated\x18\x02 \x01(\r\x12\x11\n\tinstalled\x18\x03 \x01(\r\x12\x0f\n\x07updated\x18\x04 \x01(\r\x12\x0f\n\x07\x64\x65leted\x18\x05 \x01(\r\x12\x13\n\x0binvalidated\x18\x06 \x01(\r\x12\x0e\n\x06\x63ustom\x18\x07 \x01(\r\"\xa4\x03\n\x10\x41nalyticsRequest\x12\"\n\x08protocol\x18\x01 \x01(\x0e\x32\x10.io.PassProtocol\x12\x0f\n\x07\x63lassId\x18\x02 \x01(\t\x12\x1a\n\x06period\x18\x03 \x01(\x0e\x32\n.io.Period\x12\x11\n\tstartDate\x18\x04 \x01(\t\x12\x0f\n\x07\x65ndDate\x18\x05 \x01(\t\x12\x10\n\x08timezone\x18\x06 \x01(\t\x12+\n\x06\x63oupon\x18\x0f \x01(\x0b\x32\x19.io.CouponAnalyticsFilterH\x00\x12+\n\x06\x66light\x18\x10 \x01(\x0b\x32\x19.io.FlightAnalyticsFilterH\x00\x12\x35\n\x0b\x65ventTicket\x18\x11 \x01(\x0b\x32\x1e.io.EventTicketAnalyticsFilterH\x00:n\x92\x41k\ni*\x11\x41nalytics Request2?Retrieves pass created, installed, deleted, invalidated counts.\xd2\x01\x08protocol\xd2\x01\x07\x63lassIdB\x08\n\x06\x66ilter\"(\n\x15\x43ouponAnalyticsFilter\x12\x0f\n\x07offerId\x18\x01 \x01(\t\"}\n\x15\x46lightAnalyticsFilter\x12\x14\n\x0c\x66lightNumber\x18\x01 \x01(\t\x12\x1f\n\rdepartureDate\x18\x02 \x01(\x0b\x32\x08.io.Date\x12\x15\n\rboardingPoint\x18\x03 \x01(\t\x12\x16\n\x0e\x64\x65planingPoint\x18\x04 \x01(\t\"}\n\x1a\x45ventTicketAnalyticsFilter\x12\x14\n\x0cticketTypeId\x18\x01 \x01(\t\x12\x15\n\rticketTypeUid\x18\x02 \x01(\t\x12\x0f\n\x07venueId\x18\x03 \x01(\t\x12\x10\n\x08venueUid\x18\x04 \x01(\t\x12\x0f\n\x07\x65ventId\x18\x05 \x01(\t*&\n\x06Period\x12\x07\n\x03\x44\x41Y\x10\x00\x12\t\n\x05MONTH\x10\x01\x12\x08\n\x04YEAR\x10\x02\x42G\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
12
13
 
13
- pool = Google::Protobuf::DescriptorPool.generated_pool
14
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
14
15
  pool.add_serialized_file(descriptor_data)
15
16
 
16
17
  module Io
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: io/common/semantics.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/protobuf/timestamp_pb'
8
+ require 'io/common/localization_pb'
9
+
10
+
11
+ descriptor_data = "\n\x19io/common/semantics.proto\x12\x02io\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cio/common/localization.proto\">\n\x16SemanticCurrencyAmount\x12\x0e\n\x06\x61mount\x18\x01 \x01(\x02\x12\x14\n\x0c\x63urrencyCode\x18\x02 \x01(\x05\"7\n\x10SemanticLocation\x12\x10\n\x08latitude\x18\x01 \x01(\x01\x12\x11\n\tlongitude\x18\x02 \x01(\x01\"\xa9\x01\n\x12SemanticPersonName\x12\x12\n\nfamilyName\x18\x01 \x01(\t\x12\x11\n\tgivenName\x18\x02 \x01(\t\x12\x12\n\nmiddleName\x18\x03 \x01(\t\x12\x12\n\nnamePrefix\x18\x04 \x01(\t\x12\x12\n\nnameSuffix\x18\x05 \x01(\t\x12\x10\n\x08nickname\x18\x06 \x01(\t\x12\x1e\n\x16phoneticRepresentation\x18\x07 \x01(\t\"\xcb\x01\n\x0cSemanticSeat\x12\x17\n\x0fseatDescription\x18\x01 \x01(\t\x12\x16\n\x0eseatIdentifier\x18\x02 \x01(\t\x12\x12\n\nseatNumber\x18\x03 \x01(\t\x12\x0f\n\x07seatRow\x18\x04 \x01(\t\x12\x13\n\x0bseatSection\x18\x05 \x01(\t\x12\x10\n\x08seatType\x18\x06 \x01(\t\x12\x18\n\x10seatSectionColor\x18\x07 \x01(\t\x12\x11\n\tseatLevel\x18\x08 \x01(\t\x12\x11\n\tseatAisle\x18\t \x01(\t\"5\n\x13SemanticWifiNetwork\x12\x10\n\x08password\x18\x01 \x01(\t\x12\x0c\n\x04ssid\x18\x02 \x01(\t\"r\n\x15SemanticEventDateInfo\x12(\n\x04\x64\x61te\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1c\n\x14ignoreTimeComponents\x18\x02 \x01(\x08\x12\x11\n\ttime_zone\x18\x03 \x01(\t\"\xb6\x0e\n\x11\x45ventSemanticTags\x12\x11\n\tartistIds\x18\x01 \x03(\t\x12\x1c\n\x14\x61wayTeamAbbreviation\x18\x02 \x01(\t\x12:\n\x1dlocalizedAwayTeamAbbreviation\x18\x03 \x01(\x0b\x32\x13.io.LocalizedString\x12\x18\n\x10\x61wayTeamLocation\x18\x04 \x01(\t\x12\x36\n\x19localizedAwayTeamLocation\x18\x05 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x61wayTeamName\x18\x06 \x01(\t\x12\x32\n\x15localizedAwayTeamName\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\x12\x30\n\x0c\x65ventEndDate\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\teventName\x18\t \x01(\t\x12/\n\x12localizedEventName\x18\n \x01(\x0b\x32\x13.io.LocalizedString\x12\x32\n\x0e\x65ventStartDate\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\r\n\x05genre\x18\x0c \x01(\t\x12+\n\x0elocalizedGenre\x18\r \x01(\x0b\x32\x13.io.LocalizedString\x12\x1c\n\x14homeTeamAbbreviation\x18\x0e \x01(\t\x12:\n\x1dlocalizedHomeTeamAbbreviation\x18\x0f \x01(\x0b\x32\x13.io.LocalizedString\x12\x18\n\x10homeTeamLocation\x18\x10 \x01(\t\x12\x36\n\x19localizedHomeTeamLocation\x18\x11 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0chomeTeamName\x18\x12 \x01(\t\x12\x32\n\x15localizedHomeTeamName\x18\x13 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1a\n\x12leagueAbbreviation\x18\x14 \x01(\t\x12\x38\n\x1blocalizedLeagueAbbreviation\x18\x15 \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nleagueName\x18\x16 \x01(\t\x12\x30\n\x13localizedLeagueName\x18\x17 \x01(\x0b\x32\x13.io.LocalizedString\x12\x16\n\x0eperformerNames\x18\x18 \x03(\t\x12\x18\n\x10silenceRequested\x18\x19 \x01(\x08\x12\x11\n\tsportName\x18\x1a \x01(\t\x12/\n\x12localizedSportName\x18\x1b \x01(\x0b\x32\x13.io.LocalizedString\x12+\n\rvenueLocation\x18\x1c \x01(\x0b\x32\x14.io.SemanticLocation\x12\x18\n\x10venuePhoneNumber\x18\x1d \x01(\t\x12\x11\n\tvenueRoom\x18\x1e \x01(\t\x12/\n\x12localizedVenueRoom\x18\x1f \x01(\x0b\x32\x13.io.LocalizedString\x12+\n\nwifiAccess\x18 \x03(\x0b\x32\x17.io.SemanticWifiNetwork\x12\x17\n\x0fvenueRegionName\x18! \x01(\t\x12\x35\n\x18localizedVenueRegionName\x18\" \x01(\x0b\x32\x13.io.LocalizedString\x12\x19\n\x11tailgatingAllowed\x18# \x01(\x08\x12\x1b\n\x13\x65ntranceDescription\x18$ \x01(\t\x12\x39\n\x1clocalizedEntranceDescription\x18% \x01(\x0b\x32\x13.io.LocalizedString\x12\x36\n\x12venueGatesOpenDate\x18& \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14venueFanZoneOpenDate\x18\' \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12<\n\x18venueParkingLotsOpenDate\x18( \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12:\n\x16venueBoxOfficeOpenDate\x18) \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\rvenueOpenDate\x18* \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x0evenueCloseDate\x18+ \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x13\n\x0bplaylistIds\x18, \x03(\t\x12\x10\n\x08\x61lbumIds\x18- \x03(\t\x12\x35\n\x12\x65ventStartDateInfo\x18. \x01(\x0b\x32\x19.io.SemanticEventDateInfo\"\xe3-\n\x0cSemanticTags\x12\x16\n\x0e\x61\x64missionLevel\x18\x01 \x01(\t\x12\x34\n\x17localizedAdmissionLevel\x18\x02 \x01(\x0b\x32\x13.io.LocalizedString\x12\"\n\x1a\x61\x64missionLevelAbbreviation\x18\x03 \x01(\t\x12@\n#localizedAdmissionLevelAbbreviation\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString\x12\"\n\x1a\x61\x64\x64itionalTicketAttributes\x18\x05 \x01(\t\x12@\n#localizedAdditionalTicketAttributes\x18\x06 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0b\x61irlineCode\x18\x07 \x01(\t\x12\x31\n\x14localizedAirlineCode\x18\x08 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x61ttendeeName\x18\t \x01(\t\x12\x32\n\x15localizedAttendeeName\x18\n \x01(\x0b\x32\x13.io.LocalizedString\x12\x11\n\tartistIds\x18\x0b \x03(\t\x12\x1c\n\x14\x61wayTeamAbbreviation\x18\x0c \x01(\t\x12:\n\x1dlocalizedAwayTeamAbbreviation\x18\r \x01(\x0b\x32\x13.io.LocalizedString\x12\x18\n\x10\x61wayTeamLocation\x18\x0e \x01(\t\x12\x36\n\x19localizedAwayTeamLocation\x18\x0f \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x61wayTeamName\x18\x10 \x01(\t\x12\x32\n\x15localizedAwayTeamName\x18\x11 \x01(\x0b\x32\x13.io.LocalizedString\x12+\n\x07\x62\x61lance\x18\x12 \x01(\x0b\x32\x1a.io.SemanticCurrencyAmount\x12\x15\n\rboardingGroup\x18\x13 \x01(\t\x12\x33\n\x16localizedBoardingGroup\x18\x14 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1e\n\x16\x62oardingSequenceNumber\x18\x15 \x01(\t\x12\x11\n\tcarNumber\x18\x16 \x01(\t\x12/\n\x12localizedCarNumber\x18\x17 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1a\n\x12\x63onfirmationNumber\x18\x18 \x01(\t\x12\x38\n\x1blocalizedConfirmationNumber\x18\x19 \x01(\x0b\x32\x13.io.LocalizedString\x12\x36\n\x12\x63urrentArrivalDate\x18\x1a \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x13\x63urrentBoardingDate\x18\x1b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14\x63urrentDepartureDate\x18\x1c \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1c\n\x14\x64\x65partureAirportCode\x18\x1d \x01(\t\x12:\n\x1dlocalizedDepartureAirportCode\x18\x1e \x01(\x0b\x32\x13.io.LocalizedString\x12\x1c\n\x14\x64\x65partureAirportName\x18\x1f \x01(\t\x12:\n\x1dlocalizedDepartureAirportName\x18 \x01(\x0b\x32\x13.io.LocalizedString\x12\x15\n\rdepartureGate\x18! \x01(\t\x12\x33\n\x16localizedDepartureGate\x18\" \x01(\x0b\x32\x13.io.LocalizedString\x12\x19\n\x11\x64\x65partureLocation\x18# \x01(\t\x12\x37\n\x1alocalizedDepartureLocation\x18$ \x01(\x0b\x32\x13.io.LocalizedString\x12$\n\x1c\x64\x65partureLocationDescription\x18% \x01(\t\x12\x42\n%localizedDepartureLocationDescription\x18& \x01(\x0b\x32\x13.io.LocalizedString\x12\x19\n\x11\x64\x65parturePlatform\x18\' \x01(\t\x12\x37\n\x1alocalizedDeparturePlatform\x18( \x01(\x0b\x32\x13.io.LocalizedString\x12\x1c\n\x14\x64\x65partureStationName\x18) \x01(\t\x12:\n\x1dlocalizedDepartureStationName\x18* \x01(\x0b\x32\x13.io.LocalizedString\x12\x19\n\x11\x64\x65partureTerminal\x18+ \x01(\t\x12\x37\n\x1alocalizedDepartureTerminal\x18, \x01(\x0b\x32\x13.io.LocalizedString\x12\x1e\n\x16\x64\x65stinationAirportCode\x18- \x01(\t\x12<\n\x1flocalizedDestinationAirportCode\x18. \x01(\x0b\x32\x13.io.LocalizedString\x12\x1e\n\x16\x64\x65stinationAirportName\x18/ \x01(\t\x12<\n\x1flocalizedDestinationAirportName\x18\x30 \x01(\x0b\x32\x13.io.LocalizedString\x12\x17\n\x0f\x64\x65stinationGate\x18\x31 \x01(\t\x12\x35\n\x18localizedDestinationGate\x18\x32 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1b\n\x13\x64\x65stinationLocation\x18\x33 \x01(\t\x12\x39\n\x1clocalizedDestinationLocation\x18\x34 \x01(\x0b\x32\x13.io.LocalizedString\x12&\n\x1e\x64\x65stinationLocationDescription\x18\x35 \x01(\t\x12\x44\n\'localizedDestinationLocationDescription\x18\x36 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1b\n\x13\x64\x65stinationPlatform\x18\x37 \x01(\t\x12\x39\n\x1clocalizedDestinationPlatform\x18\x38 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1e\n\x16\x64\x65stinationStationName\x18\x39 \x01(\t\x12<\n\x1flocalizedDestinationStationName\x18: \x01(\x0b\x32\x13.io.LocalizedString\x12\x1b\n\x13\x64\x65stinationTerminal\x18; \x01(\t\x12\x39\n\x1clocalizedDestinationTerminal\x18< \x01(\x0b\x32\x13.io.LocalizedString\x12\x10\n\x08\x64uration\x18= \x01(\x04\x12\x30\n\x0c\x65ventEndDate\x18> \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\teventName\x18? \x01(\t\x12/\n\x12localizedEventName\x18@ \x01(\x0b\x32\x13.io.LocalizedString\x12\x32\n\x0e\x65ventStartDate\x18\x41 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x12\x65ventStartDateInfo\x18\x42 \x01(\x0b\x32\x19.io.SemanticEventDateInfo\x12 \n\teventType\x18\x43 \x01(\x0e\x32\r.io.EventType\x12\x12\n\nflightCode\x18\x44 \x01(\t\x12\x30\n\x13localizedFlightCode\x18\x45 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x66lightNumber\x18\x46 \x01(\r\x12\r\n\x05genre\x18G \x01(\t\x12+\n\x0elocalizedGenre\x18H \x01(\x0b\x32\x13.io.LocalizedString\x12\x1c\n\x14homeTeamAbbreviation\x18I \x01(\t\x12:\n\x1dlocalizedHomeTeamAbbreviation\x18J \x01(\x0b\x32\x13.io.LocalizedString\x12\x18\n\x10homeTeamLocation\x18K \x01(\t\x12\x36\n\x19localizedHomeTeamLocation\x18L \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0chomeTeamName\x18M \x01(\t\x12\x32\n\x15localizedHomeTeamName\x18N \x01(\x0b\x32\x13.io.LocalizedString\x12\x1a\n\x12leagueAbbreviation\x18O \x01(\t\x12\x38\n\x1blocalizedLeagueAbbreviation\x18P \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nleagueName\x18Q \x01(\t\x12\x30\n\x13localizedLeagueName\x18R \x01(\x0b\x32\x13.io.LocalizedString\x12\x1d\n\x15membershipProgramName\x18S \x01(\t\x12;\n\x1elocalizedMembershipProgramName\x18T \x01(\x0b\x32\x13.io.LocalizedString\x12\x1f\n\x17membershipProgramNumber\x18U \x01(\t\x12\x37\n\x13originalArrivalDate\x18V \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x38\n\x14originalBoardingDate\x18W \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x39\n\x15originalDepartureDate\x18X \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\rpassengerName\x18Y \x01(\x0b\x32\x16.io.SemanticPersonName\x12\x16\n\x0eperformerNames\x18Z \x03(\t\x12\x16\n\x0epriorityStatus\x18[ \x01(\t\x12\x34\n\x17localizedPriorityStatus\x18\\ \x01(\x0b\x32\x13.io.LocalizedString\x12\x10\n\x08\x61lbumIds\x18] \x03(\t\x12\x13\n\x0bplaylistIds\x18^ \x03(\t\x12\x1f\n\x05seats\x18_ \x03(\x0b\x32\x10.io.SemanticSeat\x12\x19\n\x11securityScreening\x18` \x01(\t\x12\x37\n\x1alocalizedSecurityScreening\x18\x61 \x01(\x0b\x32\x13.io.LocalizedString\x12\x18\n\x10silenceRequested\x18\x62 \x01(\x08\x12\x11\n\tsportName\x18\x63 \x01(\t\x12/\n\x12localizedSportName\x18\x64 \x01(\x0b\x32\x13.io.LocalizedString\x12.\n\ntotalPrice\x18\x65 \x01(\x0b\x32\x1a.io.SemanticCurrencyAmount\x12\x17\n\x0ftransitProvider\x18\x66 \x01(\t\x12\x35\n\x18localizedTransitProvider\x18g \x01(\x0b\x32\x13.io.LocalizedString\x12\x15\n\rtransitStatus\x18h \x01(\t\x12\x33\n\x16localizedTransitStatus\x18i \x01(\x0b\x32\x13.io.LocalizedString\x12\x1b\n\x13transitStatusReason\x18j \x01(\t\x12\x39\n\x1clocalizedTransitStatusReason\x18k \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0bvehicleName\x18l \x01(\t\x12\x31\n\x14localizedVehicleName\x18m \x01(\x0b\x32\x13.io.LocalizedString\x12\x15\n\rvehicleNumber\x18n \x01(\t\x12\x33\n\x16localizedVehicleNumber\x18o \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0bvehicleType\x18p \x01(\t\x12\x31\n\x14localizedVehicleType\x18q \x01(\x0b\x32\x13.io.LocalizedString\x12:\n\x16venueBoxOfficeOpenDate\x18r \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x0evenueCloseDate\x18s \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x36\n\x12venueDoorsOpenDate\x18t \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x15\n\rvenueEntrance\x18u \x01(\t\x12\x33\n\x16localizedVenueEntrance\x18v \x01(\x0b\x32\x13.io.LocalizedString\x12+\n\rvenueLocation\x18w \x01(\x0b\x32\x14.io.SemanticLocation\x12\x11\n\tvenueName\x18x \x01(\t\x12/\n\x12localizedVenueName\x18y \x01(\x0b\x32\x13.io.LocalizedString\x12\x19\n\x11venuePhone_number\x18z \x01(\t\x12\x36\n\x19localizedVenuePhoneNumber\x18{ \x01(\x0b\x32\x13.io.LocalizedString\x12\x17\n\x0fvenueRegionName\x18| \x01(\t\x12\x35\n\x18localizedVenueRegionName\x18} \x01(\x0b\x32\x13.io.LocalizedString\x12\x11\n\tvenueRoom\x18~ \x01(\t\x12/\n\x12localizedVenueRoom\x18\x7f \x01(\x0b\x32\x13.io.LocalizedString\x12,\n\nwifiAccess\x18\x80\x01 \x03(\x0b\x32\x17.io.SemanticWifiNetwork\x12\x39\n\x14venueFanZoneOpenDate\x18\x81\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x12venueGatesOpenDate\x18\x82\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12=\n\x18venueParkingLotsOpenDate\x18\x83\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1a\n\x11venueEntranceDoor\x18\x84\x01 \x01(\t\x12\x38\n\x1alocalizedVenueEntranceDoor\x18\x85\x01 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1a\n\x11venueEntranceGate\x18\x86\x01 \x01(\t\x12\x38\n\x1alocalizedVenueEntranceGate\x18\x87\x01 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1c\n\x13venueEntrancePortal\x18\x88\x01 \x01(\t\x12:\n\x1clocalizedVenueEntrancePortal\x18\x89\x01 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1c\n\x13\x65ntranceDescription\x18\x8a\x01 \x01(\t\x12:\n\x1clocalizedEntranceDescription\x18\x8b\x01 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1a\n\x11tailgatingAllowed\x18\x8c\x01 \x01(\x08*\xf6\x01\n\tEventType\x12\x13\n\x0f\x45VENT_TYPE_NONE\x10\x00\x12\x16\n\x12\x45VENT_TYPE_GENERIC\x10\x01\x12\x14\n\x10\x45VENT_TYPE_MOVIE\x10\x02\x12\x19\n\x15\x45VENT_TYPE_CONFERENCE\x10\x03\x12\x19\n\x15\x45VENT_TYPE_CONVENTION\x10\x04\x12\x17\n\x13\x45VENT_TYPE_WORKSHOP\x10\x05\x12\x1f\n\x1b\x45VENT_TYPE_SOCIAL_GATHERING\x10\x06\x12\x15\n\x11\x45VENT_TYPE_SPORTS\x10\x07\x12\x1f\n\x1b\x45VENT_TYPE_LIVE_PERFORMANCE\x10\x08\x42G\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
12
+
13
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
14
+ pool.add_serialized_file(descriptor_data)
15
+
16
+ module Io
17
+ SemanticCurrencyAmount = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SemanticCurrencyAmount").msgclass
18
+ SemanticLocation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SemanticLocation").msgclass
19
+ SemanticPersonName = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SemanticPersonName").msgclass
20
+ SemanticSeat = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SemanticSeat").msgclass
21
+ SemanticWifiNetwork = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SemanticWifiNetwork").msgclass
22
+ SemanticEventDateInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SemanticEventDateInfo").msgclass
23
+ EventSemanticTags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.EventSemanticTags").msgclass
24
+ SemanticTags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SemanticTags").msgclass
25
+ EventType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.EventType").enummodule
26
+ end
@@ -3,21 +3,23 @@
3
3
  # source: io/common/template.proto
4
4
 
5
5
  require 'google/protobuf'
6
+ require 'protoc-gen-openapiv2/options/annotations_pb'
6
7
 
7
8
  require 'io/common/common_objects_pb'
8
9
  require 'io/common/localization_pb'
9
10
  require 'io/common/protocols_pb'
10
11
  require 'io/common/proximity_pb'
11
12
  require 'io/common/links_pb'
13
+ require 'io/common/featured_actions_pb'
12
14
  require 'io/common/tracking_pb'
13
15
  require 'io/image/image_pb'
14
16
  require 'google/protobuf/timestamp_pb'
15
17
  require 'io/common/expiry_pb'
16
18
 
17
19
 
18
- descriptor_data = "\n\x18io/common/template.proto\x12\x02io\x1a\x1eio/common/common_objects.proto\x1a\x1cio/common/localization.proto\x1a\x19io/common/protocols.proto\x1a\x19io/common/proximity.proto\x1a\x15io/common/links.proto\x1a\x18io/common/tracking.proto\x1a\x14io/image/image.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x16io/common/expiry.proto\"w\n\x0cSelectOption\x12\x14\n\x0clistPriority\x18\x01 \x01(\r\x12\x11\n\ttextLabel\x18\x02 \x01(\t\x12/\n\x12localizedTextLabel\x18\x03 \x01(\x0b\x32\x13.io.LocalizedString\x12\r\n\x05value\x18\x04 \x01(\t\"X\n\x0eTOPTParameters\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x14\n\x0cmilliseconds\x18\x02 \x01(\r\x12\x13\n\x0bvalueString\x18\x03 \x01(\t\x12\x0e\n\x06\x64igits\x18\x04 \x01(\r\"\xf3\x01\n\x07\x42\x61rcode\x12\x0f\n\x07payload\x18\x01 \x01(\t\x12\x1f\n\x06\x66ormat\x18\x02 \x01(\x0e\x32\x0f.io.BarcodeType\x12\x0f\n\x07\x61ltText\x18\x03 \x01(\t\x12-\n\x10localizedAltText\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString\x12\x17\n\x0fmessageEncoding\x18\x05 \x01(\t\x12\x18\n\x10suppressSecurity\x18\x06 \x01(\x08\x12\x17\n\x0frotatingBarcode\x18\x07 \x01(\x08\x12*\n\x0etotpParameters\x18\x08 \x01(\x0b\x32\x12.io.TOPTParameters\"\xa9\x07\n\x0cPassTemplate\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\"\n\x08protocol\x18\x03 \x01(\x0e\x32\x10.io.PassProtocol\x12\x10\n\x08revision\x18\x04 \x01(\r\x12)\n\x0f\x64\x65\x66\x61ultLanguage\x18\x05 \x01(\x0e\x32\x10.io.LanguageCode\x12\x18\n\x10organizationName\x18\x06 \x01(\t\x12\x36\n\x19localizedOrganizationName\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0b\x64\x65scription\x18\x08 \x01(\t\x12\x31\n\x14localizedDescription\x18\t \x01(\x0b\x32\x13.io.LocalizedString\x12\x16\n\x04\x64\x61ta\x18\n \x01(\x0b\x32\x08.io.Data\x12 \n\x08imageIds\x18\x0b \x01(\x0b\x32\x0c.io.ImageIdsH\x00\x12\x1f\n\x06images\x18\x0c \x01(\x0b\x32\r.io.ImageDataH\x00\x12\x1a\n\x06\x63olors\x18\r \x01(\x0b\x32\n.io.Colors\x12\x1c\n\x07\x62\x61rcode\x18\x0e \x01(\x0b\x32\x0b.io.Barcode\x12\x1b\n\nnfcEnabled\x18\x0f \x01(\x0b\x32\x07.io.NFC\x12\x1c\n\x07sharing\x18\x10 \x01(\x0b\x32\x0b.io.Sharing\x12\x34\n\x13\x61ppleWalletSettings\x18\x11 \x01(\x0b\x32\x17.io.AppleWalletSettings\x12\x30\n\x11googlePaySettings\x18\x12 \x01(\x0b\x32\x15.io.GooglePaySettings\x12*\n\tlocations\x18\x13 \x03(\x0b\x32\x0f.io.GPSLocationB\x06\x92\x41\x03\xa0\x01\n\x12#\n\x07\x62\x65\x61\x63ons\x18\x14 \x03(\x0b\x32\n.io.BeaconB\x06\x92\x41\x03\xa0\x01\n\x12\x17\n\x05links\x18\x15 \x03(\x0b\x32\x08.io.Link\x12\x10\n\x08timezone\x18\x16 \x01(\t\x12*\n\x0e\x65xpirySettings\x18\x17 \x01(\x0b\x32\x12.io.ExpirySettings\x12\x34\n\x13landingPageSettings\x18\x18 \x01(\x0b\x32\x17.io.LandingPageSettings:_\x92\x41\\\nZ*\x0bPass Design29Design record for the Apple Wallet and Google Pay passes.\xd2\x01\x0f\x64\x65\x66\x61ultLanguageB\r\n\x0bImageAssets\"\xd1\x02\n\x13\x41ppleWalletSettings\x12#\n\x08passType\x18\x01 \x01(\x0e\x32\x11.io.ApplePassType\x12\x10\n\x08userInfo\x18\x02 \x01(\t\x12\x14\n\x0c\x61ppLaunchUrl\x18\x03 \x01(\t\x12\"\n\x1a\x61ssociatedStoreIdentifiers\x18\x04 \x03(\r\x12\x13\n\x0bmaxDistance\x18\x05 \x01(\r\x12\x19\n\x11\x61ppStoreCountries\x18\x06 \x03(\t\x12$\n\x0btransitType\x18\x07 \x01(\x0e\x32\x0f.io.TransitType\x12\x1a\n\x12groupingIdentifier\x18\x08 \x01(\t\x12:\n\x16personalizationDetails\x18\t \x01(\x0b\x32\x1a.io.PersonalizationDetails\x12\x1b\n\x13\x61ppStoreIdentifiers\x18\n \x03(\x04\"\x89\x01\n\x16PersonalizationDetails\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12>\n\x1brequiredPersonalizationData\x18\x02 \x03(\x0e\x32\x19.io.PersonalizedDataField\x12\x1a\n\x12termsAndConditions\x18\x03 \x01(\t\"\x87\x02\n\x11GooglePaySettings\x12\'\n\x08passType\x18\x01 \x01(\x0e\x32\x15.io.GooglePayPassType\x12$\n\nandroidApp\x18\x02 \x01(\x0b\x32\x10.io.GooglePayApp\x12 \n\x06iosApp\x18\x03 \x01(\x0b\x32\x10.io.GooglePayApp\x12 \n\x06webApp\x18\x04 \x01(\x0b\x32\x10.io.GooglePayApp\x12\x19\n\x11\x63lassTemplateInfo\x18\x05 \x01(\t\x12\x17\n\x0f\x62\x61\x63kgroundColor\x18\x06 \x01(\t\x12+\n\x11languageOverrides\x18\x07 \x03(\x0e\x32\x10.io.LanguageCode\"\xf6\x01\n\x0cGooglePayApp\x12\x14\n\x03url\x18\x01 \x01(\x0b\x32\x07.io.Url\x12\r\n\x05title\x18\x02 \x01(\t\x12+\n\x0elocalizedTitle\x18\x03 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x31\n\x14localizedDescription\x18\x05 \x01(\x0b\x32\x13.io.LocalizedString\x12\x16\n\x0eurlDescription\x18\x06 \x01(\t\x12\x34\n\x17localizedUrlDescription\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\"m\n\x04\x44\x61ta\x12!\n\ndataFields\x18\x01 \x03(\x0b\x32\r.io.DataField\x12\x42\n\x1a\x64\x61taCollectionPageSettings\x18\x02 \x01(\x0b\x32\x1e.io.DataCollectionPageSettings\"\xe4\x02\n\x13LandingPageSettings\x12\x35\n\x1blandingLocalizationOverride\x18\x01 \x03(\x0e\x32\x10.io.LanguageCode\x12\x31\n\x1dpreferThirdPartyAndroidWallet\x18\x02 \x01(\x0e\x32\n.io.Toggle\x12:\n\x16preferredAndroidWallet\x18\x03 \x01(\x0e\x32\x1a.io.SupportedAndroidWallet\x12S\n\x16localizedTextOverrides\x18\x04 \x03(\x0b\x32\x33.io.LandingPageSettings.LocalizedTextOverridesEntry\x1aR\n\x1bLocalizedTextOverridesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\"\n\x05value\x18\x02 \x01(\x0b\x32\x13.io.LocalizedString:\x02\x38\x01\"\xdc\x05\n\x1a\x44\x61taCollectionPageSettings\x12\r\n\x05title\x18\x01 \x01(\t\x12+\n\x0elocalizedTitle\x18\x02 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x31\n\x14localizedDescription\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString\x12\x18\n\x10submitButtonText\x18\x05 \x01(\t\x12\x36\n\x19localizedSubmitButtonText\x18\x06 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0bloadingText\x18\x07 \x01(\t\x12\x31\n\x14localizedLoadingText\x18\x08 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0cthankYouText\x18\t \x01(\t\x12\x32\n\x15localizedThankYouText\x18\n \x01(\x0b\x32\x13.io.LocalizedString\x12\x1b\n\x13pageBackgroundColor\x18\x0b \x01(\t\x12\x39\n\x1clocalizedPageBackgroundColor\x18\x0c \x01(\x0b\x32\x13.io.LocalizedString\x12.\n\x10trackingSettings\x18\r \x01(\x0b\x32\x14.io.TrackingSettings\x12\x1d\n\x15submitButtonTextColor\x18\x0e \x01(\t\x12#\n\x1bsubmitButtonBackgroundColor\x18\x0f \x01(\t\x12\x12\n\nfooterText\x18\x10 \x01(\t\x12\x30\n\x13localizedFooterText\x18\x11 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x63ssOverrides\x18\x12 \x01(\t\x12.\n\x10passwordSettings\x18\x13 \x01(\x0b\x32\x14.io.PasswordSettings\"\xca\x03\n\x10PasswordSettings\x12&\n\x0cpasswordType\x18\x01 \x01(\x0e\x32\x10.io.PasswordType\x12\x10\n\x08password\x18\x02 \x01(\t\x12\x16\n\x0einputLabelText\x18\x03 \x01(\t\x12\x34\n\x17localizedInputLabelText\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString\x12\x11\n\terrorText\x18\x05 \x01(\t\x12/\n\x12localizedErrorText\x18\x06 \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nheaderText\x18\x07 \x01(\t\x12\x30\n\x13localizedHeaderText\x18\x08 \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nbuttonText\x18\t \x01(\t\x12\x30\n\x13localizedButtonText\x18\n \x01(\x0b\x32\x13.io.LocalizedString\x12\x11\n\ttitleText\x18\x0b \x01(\t\x12/\n\x12localizedTitleText\x18\x0c \x01(\x0b\x32\x13.io.LocalizedString\x12\x1a\n\x12\x61utoLogoutOnSubmit\x18\r \x01(\x08\"\xf3\x01\n\x14PassTemplateResponse\x12\"\n\x08template\x18\x01 \x01(\x0b\x32\x10.io.PassTemplate\x12\x0c\n\x04Name\x18\x02 \x01(\t\x12\x15\n\rownerUsername\x18\x03 \x01(\t\x12\"\n\x08protocol\x18\x04 \x01(\x0e\x32\x10.io.PassProtocol\x12\x10\n\x08revision\x18\x05 \x01(\r\x12-\n\tcreatedAt\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\tupdatedAt\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\\\n\x06\x43olors\x12\x17\n\x0f\x62\x61\x63kgroundColor\x18\x01 \x01(\t\x12\x12\n\nlabelColor\x18\x02 \x01(\t\x12\x11\n\ttextColor\x18\x03 \x01(\t\x12\x12\n\nstripColor\x18\x04 \x01(\t\".\n\x0f\x43opyObjectInput\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07newName\x18\x02 \x01(\t\"S\n\x03NFC\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x15\n\rcertificateId\x18\x02 \x01(\t\x12\x0f\n\x07payload\x18\x03 \x01(\t\x12\x13\n\x0biCloudBound\x18\x04 \x01(\x08\"\xef\x04\n\tDataField\x12\x12\n\nuniqueName\x18\x01 \x01(\t\x12\x12\n\ntemplateId\x18\x02 \x01(\t\x12 \n\tfieldType\x18\x03 \x01(\x0e\x32\r.io.FieldType\x12\x12\n\nisRequired\x18\x04 \x01(\x08\x12\r\n\x05label\x18\x05 \x01(\t\x12+\n\x0elocalizedLabel\x18\x06 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1e\n\x08\x64\x61taType\x18\x07 \x01(\x0e\x32\x0c.io.DataType\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x08 \x01(\t\x12\x32\n\x15localizedDefaultValue\x18\t \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nvalidation\x18\n \x01(\t\x12\x17\n\x0fuserCanSetValue\x18\x0b \x01(\x08\x12\x14\n\x0c\x63urrencyCode\x18\x0c \x01(\t\x12H\n\x1d\x61ppleWalletFieldRenderOptions\x18\r \x01(\x0b\x32!.io.AppleWalletFieldRenderOptions\x12N\n dataCollectionFieldRenderOptions\x18\x0e \x01(\x0b\x32$.io.DataCollectionFieldRenderOptions\x12\x1c\n\x05usage\x18\x0f \x03(\x0e\x32\r.io.UsageType\x12\x44\n\x1bgooglePayFieldRenderOptions\x18\x10 \x01(\x0b\x32\x1f.io.GooglePayFieldRenderOptions\x12\x1d\n\x15\x64\x65\x66\x61ultTelCountryCode\x18\x11 \x01(\t\"\x98\x03\n\x1d\x41ppleWalletFieldRenderOptions\x12(\n\rtextAlignment\x18\x02 \x01(\x0e\x32\x11.io.TextAlignment\x12.\n\x10positionSettings\x18\x03 \x01(\x0b\x32\x14.io.PositionSettings\x12\x15\n\rchangeMessage\x18\x04 \x01(\t\x12\x33\n\x16localizedChangeMessage\x18\x05 \x01(\x0b\x32\x13.io.LocalizedString\x12$\n\tdateStyle\x18\x06 \x01(\x0e\x32\x11.io.DateTimeStyle\x12$\n\ttimeStyle\x18\x07 \x01(\x0e\x32\x11.io.DateTimeStyle\x12$\n\x0bnumberStyle\x18\x08 \x01(\x0e\x32\x0f.io.NumberStyle\x12/\n\x15suppressLinkDetection\x18\t \x03(\x0e\x32\x10.io.LinkDetector\x12\x16\n\x0eignoreTimezone\x18\n \x01(\x08\x12\x16\n\x0eisRelativeDate\x18\x0b \x01(\x08\"h\n\x1bGooglePayFieldRenderOptions\x12-\n\x11googlePayPosition\x18\x01 \x01(\x0e\x32\x12.io.GooglePayField\x12\x1a\n\x12textModulePriority\x18\x02 \x01(\r\"G\n\x10PositionSettings\x12!\n\x07section\x18\x01 \x01(\x0e\x32\x10.io.FieldSection\x12\x10\n\x08priority\x18\x02 \x01(\r\"\x9f\x03\n DataCollectionFieldRenderOptions\x12\x10\n\x08helpText\x18\x01 \x01(\t\x12.\n\x11localizedHelpText\x18\x02 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x64isplayOrder\x18\x03 \x01(\x05\x12\x13\n\x0bplaceholder\x18\x05 \x01(\t\x12\'\n\rselectOptions\x18\x06 \x03(\x0b\x32\x10.io.SelectOption\x12\x31\n\x14localizedPlaceholder\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x61utocomplete\x18\x08 \x01(\x08\x12\x36\n\x14\x61\x64\x64ressRenderOptions\x18\t \x01(\x0b\x32\x18.io.AddressRenderOptions\x12 \n\x18localizedYearPlaceholder\x18\n \x01(\t\x12!\n\x19localizedMonthPlaceholder\x18\x0b \x01(\t\x12\x1f\n\x17localizedDayPlaceholder\x18\x0c \x01(\t\"\xa2\x06\n\x14\x41\x64\x64ressRenderOptions\x12\x15\n\raddress1Label\x18\x01 \x01(\t\x12\x15\n\raddress2Label\x18\x02 \x01(\t\x12\x11\n\tcityLabel\x18\x03 \x01(\t\x12\x14\n\x0c\x63ountryLabel\x18\x04 \x01(\t\x12\x10\n\x08zipLabel\x18\x05 \x01(\t\x12\x1b\n\x13\x61\x64\x64ress1Placeholder\x18\x06 \x01(\t\x12\x1b\n\x13\x61\x64\x64ress2Placeholder\x18\x07 \x01(\t\x12\x17\n\x0f\x63ityPlaceholder\x18\x08 \x01(\t\x12\x1a\n\x12\x63ountryPlaceholder\x18\t \x01(\t\x12\x16\n\x0ezipPlaceholder\x18\n \x01(\t\x12\x33\n\x16localizedAddress1Label\x18\x0b \x01(\x0b\x32\x13.io.LocalizedString\x12\x33\n\x16localizedAddress2Label\x18\x0c \x01(\x0b\x32\x13.io.LocalizedString\x12/\n\x12localizedCityLabel\x18\r \x01(\x0b\x32\x13.io.LocalizedString\x12\x32\n\x15localizedCountryLabel\x18\x0e \x01(\x0b\x32\x13.io.LocalizedString\x12.\n\x11localizedZipLabel\x18\x0f \x01(\x0b\x32\x13.io.LocalizedString\x12\x39\n\x1clocalizedAddress1Placeholder\x18\x10 \x01(\x0b\x32\x13.io.LocalizedString\x12\x39\n\x1clocalizedAddress2Placeholder\x18\x11 \x01(\x0b\x32\x13.io.LocalizedString\x12\x35\n\x18localizedCityPlaceholder\x18\x12 \x01(\x0b\x32\x13.io.LocalizedString\x12\x38\n\x1blocalizedCountryPlaceholder\x18\x13 \x01(\x0b\x32\x13.io.LocalizedString\x12\x34\n\x17localizedZipPlaceholder\x18\x14 \x01(\x0b\x32\x13.io.LocalizedString\"\xb7\x01\n\x07Sharing\x12\x17\n\x0fprohibitSharing\x18\x01 \x01(\x08\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x31\n\x14localizedDescription\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString:>\x92\x41;\n9*\x07Sharing2.Controls the sharing settings for the program.\"N\n\x16\x44\x65\x66\x61ultTemplateRequest\x12\"\n\x08protocol\x18\x01 \x01(\x0e\x32\x10.io.PassProtocol\x12\x10\n\x08revision\x18\x02 \x01(\r*v\n\rApplePassType\x12\x17\n\x13\x41PPLE_NOT_SUPPORTED\x10\x00\x12\x11\n\rBOARDING_PASS\x10\x01\x12\n\n\x06\x43OUPON\x10\x02\x12\x10\n\x0c\x45VENT_TICKET\x10\x03\x12\x0b\n\x07GENERIC\x10\x04\x12\x0e\n\nSTORE_CARD\x10\x05*w\n\x11GooglePayPassType\x12\x1c\n\x18GOOGLE_PAY_NOT_SUPPORTED\x10\x00\x12\t\n\x05\x45VENT\x10\x01\x12\n\n\x06\x46LIGHT\x10\x02\x12\x08\n\x04GIFT\x10\x03\x12\x0b\n\x07LOYALTY\x10\x04\x12\t\n\x05OFFER\x10\x05\x12\x0b\n\x07TRANSIT\x10\x06*`\n\x0b\x42\x61rcodeType\x12\x1b\n\x17\x42\x41RCODE_TYPE_DO_NOT_USE\x10\x00\x12\x06\n\x02QR\x10\x01\x12\t\n\x05\x41ZTEC\x10\x02\x12\n\n\x06PDF417\x10\x03\x12\x0b\n\x07\x43ODE128\x10\x04\x12\x08\n\x04NONE\x10\x05*q\n\tFieldType\x12\x13\n\x0f\x46IELD_TYPE_NONE\x10\x00\x12\x08\n\x04META\x10\x01\x12\x07\n\x03PII\x10\x02\x12\x14\n\x10UNIVERSAL_FIELDS\x10\x03\x12\x13\n\x0fPROTOCOL_FIELDS\x10\x04\x12\x11\n\rCUSTOM_FIELDS\x10\x05*\xbe\x01\n\x0eStandardFields\x12\x1e\n\x1aSTANDARD_FIELDS_DO_NOT_USE\x10\x00\x12\x15\n\x11STANDARD_MESSAGES\x10\x01\x12\x12\n\x0eSTANDARD_LEGAL\x10\x02\x12\x18\n\x14STANDARD_EXPIRY_DATE\x10\x03\x12\x19\n\x15STANDARD_USEFUL_LINKS\x10\x04\x12\x14\n\x10STANDARD_OPT_OUT\x10\x05\x12\x16\n\x12STANDARD_LOCATIONS\x10\x06*\\\n\rTextAlignment\x12\x1d\n\x19TEXT_ALIGNMENT_DO_NOT_USE\x10\x00\x12\x08\n\x04LEFT\x10\x01\x12\n\n\x06\x43\x45NTER\x10\x02\x12\t\n\x05RIGHT\x10\x03\x12\x0b\n\x07NATURAL\x10\x04*\x9a\x01\n\rDateTimeStyle\x12\x1e\n\x1a\x44\x41TE_TIME_STYLE_DO_NOT_USE\x10\x00\x12\x19\n\x15\x44\x41TE_TIME_STYLE_SHORT\x10\x01\x12\x1a\n\x16\x44\x41TE_TIME_STYLE_MEDIUM\x10\x02\x12\x18\n\x14\x44\x41TE_TIME_STYLE_LONG\x10\x03\x12\x18\n\x14\x44\x41TE_TIME_STYLE_FULL\x10\x04*\x8f\x01\n\x0cLinkDetector\x12\x1c\n\x18LINK_DETECTOR_DO_NOT_USE\x10\x00\x12\x19\n\x15LINK_DETECTOR_ADDRESS\x10\x01\x12\x16\n\x12LINK_DETECTOR_DATE\x10\x02\x12\x15\n\x11LINK_DETECTOR_URL\x10\x03\x12\x17\n\x13LINK_DETECTOR_PHONE\x10\x04*\x93\x01\n\x0bNumberStyle\x12\x1b\n\x17NUMBER_STYLE_DO_NOT_USE\x10\x00\x12\x18\n\x14NUMBER_STYLE_DECIMAL\x10\x01\x12\x18\n\x14NUMBER_STYLE_PERCENT\x10\x02\x12\x1b\n\x17NUMBER_STYLE_SCIENTIFIC\x10\x03\x12\x16\n\x12NUMBER_STYLE_SPELL\x10\x04*\xb6\x01\n\x0bTransitType\x12\x1b\n\x17TRANSIT_TYPE_DO_NOT_USE\x10\x00\x12\x14\n\x10TRANSIT_TYPE_AIR\x10\x01\x12\x15\n\x11TRANSIT_TYPE_BOAT\x10\x02\x12\x14\n\x10TRANSIT_TYPE_BUS\x10\x03\x12\x18\n\x14TRANSIT_TYPE_GENERIC\x10\x04\x12\x16\n\x12TRANSIT_TYPE_TRAIN\x10\x05\x12\x15\n\x11TRANSIT_TYPE_TRAM\x10\x06*\x88\x02\n\x08\x44\x61taType\x12\x12\n\x0e\x44\x41TA_TYPE_NONE\x10\x00\x12\x08\n\x04TEXT\x10\x01\x12\r\n\tTEXT_LONG\x10\x02\x12\x11\n\rDATE_YYYYMMDD\x10\x03\x12\x0f\n\x0b\x44\x41TE_YYYYMM\x10\x04\x12\r\n\tDATE_MMDD\x10\x05\x12\x08\n\x04TIME\x10\x06\x12\r\n\tDATE_TIME\x10\x07\x12\x07\n\x03INT\x10\x08\x12\n\n\x06NUMBER\x10\t\x12\t\n\x05\x45MAIL\x10\n\x12\x07\n\x03URL\x10\x0b\x12\x07\n\x03TEL\x10\x0c\x12\x0b\n\x07\x41\x44\x44RESS\x10\r\x12\t\n\x05IMAGE\x10\x0f\x12\x0c\n\x08\x43URRENCY\x10\x10\x12\x0b\n\x07\x42OOLEAN\x10\x11\x12\x0b\n\x07OPTIONS\x10\x12\x12\x0b\n\x07\x44\x41TE_MM\x10\x13\"\x04\x08\x0e\x10\x0e*\xfe\x01\n\tDataStyle\x12\x0c\n\x08NO_STYLE\x10\x00\x12\x0e\n\nDATE_SHORT\x10\x01\x12\x0f\n\x0b\x44\x41TE_MEDIUM\x10\x02\x12\r\n\tDATE_LONG\x10\x03\x12\r\n\tDATE_FULL\x10\x04\x12\x0e\n\nTIME_SHORT\x10\x05\x12\x0f\n\x0bTIME_MEDIUM\x10\x06\x12\r\n\tTIME_LONG\x10\x07\x12\r\n\tTIME_FULL\x10\x08\x12\x13\n\x0f\x44\x41TE_TIME_SHORT\x10\t\x12\x14\n\x10\x44\x41TE_TIME_MEDIUM\x10\n\x12\x12\n\x0e\x44\x41TE_TIME_LONG\x10\x0b\x12\x12\n\x0e\x44\x41TE_TIME_FULL\x10\x0c\x12\x12\n\x0eNUMBER_DECIMAL\x10\r*\x90\x01\n\x0c\x46ieldSection\x12\x1c\n\x18\x46IELD_SECTION_DO_NOT_USE\x10\x00\x12\x0f\n\x0b\x42\x41\x43K_FIELDS\x10\x01\x12\x12\n\x0ePRIMARY_FIELDS\x10\x02\x12\x14\n\x10SECONDARY_FIELDS\x10\x03\x12\x14\n\x10\x41UXILIARY_FIELDS\x10\x04\x12\x11\n\rHEADER_FIELDS\x10\x05*\x8e\x19\n\x0eGooglePayField\x12\x1f\n\x1bGOOGLE_PAY_FIELD_DO_NOT_USE\x10\x00\x12$\n GOOGLE_PAY_BOARDING_AIRLINE_NAME\x10\x01\x12$\n GOOGLE_PAY_BOARDING_AIRLINE_CODE\x10\x02\x12\x1e\n\x1aGOOGLE_PAY_BOARDING_ORIGIN\x10\x03\x12#\n\x1fGOOGLE_PAY_BOARDING_DESTINATION\x10\x04\x12\'\n#GOOGLE_PAY_BOARDING_ORIGIN_TERMINAL\x10\x05\x12#\n\x1fGOOGLE_PAY_BOARDING_ORIGIN_GATE\x10\x06\x12%\n!GOOGLE_PAY_BOARDING_BOARDING_TIME\x10\x07\x12&\n\"GOOGLE_PAY_BOARDING_PASSENGER_NAME\x10\x08\x12\"\n\x1eGOOGLE_PAY_BOARDING_ZONE_GROUP\x10\t\x12\x1c\n\x18GOOGLE_PAY_BOARDING_SEAT\x10\n\x12)\n%GOOGLE_PAY_BOARDING_BOARDING_POSITION\x10\x0b\x12)\n%GOOGLE_PAY_BOARDING_BOARDING_SEQUENCE\x10\x0c\x12%\n!GOOGLE_PAY_BOARDING_BOARDING_DOOR\x10\r\x12%\n!GOOGLE_PAY_BOARDING_FLIGHT_NUMBER\x10\x0e\x12+\n\'GOOGLE_PAY_BOARDING_CONFIRMATION_NUMBER\x10\x0f\x12%\n!GOOGLE_PAY_BOARDING_TICKET_NUMBER\x10\x10\x12-\n)GOOGLE_PAY_BOARDING_FREQUENT_FLYER_NUMBER\x10\x11\x12#\n\x1fGOOGLE_PAY_BOARDING_GATE_CLOSES\x10\x12\x12&\n\"GOOGLE_PAY_BOARDING_DEPARTURE_TIME\x10\x13\x12$\n GOOGLE_PAY_BOARDING_ARRIVAL_TIME\x10\x14\x12(\n$GOOGLE_PAY_BOARDING_ARRIVAL_TERMINAL\x10\x15\x12$\n GOOGLE_PAY_BOARDING_ARRIVAL_GATE\x10\x16\x12\x19\n\x15GOOGLE_PAY_EVENT_NAME\x10\x64\x12\x1f\n\x1bGOOGLE_PAY_EVENT_VENUE_NAME\x10\x65\x12\"\n\x1eGOOGLE_PAY_EVENT_VENUE_ADDRESS\x10\x66\x12\x19\n\x15GOOGLE_PAY_EVENT_GATE\x10g\x12\x1c\n\x18GOOGLE_PAY_EVENT_SECTION\x10h\x12\x18\n\x14GOOGLE_PAY_EVENT_ROW\x10i\x12\x19\n\x15GOOGLE_PAY_EVENT_SEAT\x10j\x12\"\n\x1eGOOGLE_PAY_EVENT_TICKET_HOLDER\x10k\x12\x1f\n\x1bGOOGLE_PAY_EVENT_DOORS_OPEN\x10l\x12\x1a\n\x16GOOGLE_PAY_EVENT_START\x10m\x12\x18\n\x14GOOGLE_PAY_EVENT_END\x10n\x12 \n\x1cGOOGLE_PAY_EVENT_TICKET_TYPE\x10o\x12\"\n\x1eGOOGLE_PAY_EVENT_TICKET_NUMBER\x10p\x12(\n$GOOGLE_PAY_EVENT_CONFIRMATION_NUMBER\x10q\x12\x1f\n\x1bGOOGLE_PAY_EVENT_FACE_VALUE\x10r\x12\x1f\n\x1bGOOGLE_PAY_EVENT_FINE_PRINT\x10s\x12\"\n\x1dGOOGLE_PAY_GIFT_MERCHANT_NAME\x10\xc8\x01\x12\x1c\n\x17GOOGLE_PAY_GIFT_BALANCE\x10\xc9\x01\x12 \n\x1bGOOGLE_PAY_GIFT_CARD_NUMBER\x10\xca\x01\x12(\n#GOOGLE_PAY_GIFT_BALANCE_UPDATE_TIME\x10\xcb\x01\x12\x18\n\x13GOOGLE_PAY_GIFT_PIN\x10\xcc\x01\x12!\n\x1cGOOGLE_PAY_GIFT_EVENT_NUMBER\x10\xcd\x01\x12$\n\x1fGOOGLE_PAY_LOYALTY_PROGRAM_NAME\x10\xac\x02\x12\x1e\n\x19GOOGLE_PAY_LOYALTY_POINTS\x10\xad\x02\x12(\n#GOOGLE_PAY_LOYALTY_SECONDARY_POINTS\x10\xae\x02\x12$\n\x1fGOOGLE_PAY_LOYALTY_ACCOUNT_NAME\x10\xaf\x02\x12\"\n\x1dGOOGLE_PAY_LOYALTY_ACCOUNT_ID\x10\xb0\x02\x12$\n\x1fGOOGLE_PAY_LOYALTY_REWARDS_TIER\x10\xb1\x02\x12.\n)GOOGLE_PAY_LOYALTY_SECONDARY_REWARDS_TIER\x10\xb2\x02\x12\x1b\n\x16GOOGLE_PAY_OFFER_TITLE\x10\x90\x03\x12\x1e\n\x19GOOGLE_PAY_OFFER_PROVIDER\x10\x91\x03\x12\x1d\n\x18GOOGLE_PAY_OFFER_DETAILS\x10\x92\x03\x12 \n\x1bGOOGLE_PAY_OFFER_FINE_PRINT\x10\x93\x03\x12!\n\x1cGOOGLE_PAY_OFFER_SHORT_TITLE\x10\x94\x03\x12#\n\x1eGOOGLE_PAY_TRANSIT_ISSUER_NAME\x10\xf4\x03\x12!\n\x1cGOOGLE_PAY_TRANSIT_DEPARTURE\x10\xf5\x03\x12&\n!GOOGLE_PAY_TRANSIT_DEPARTURE_TIME\x10\xf6\x03\x12\"\n\x1dGOOGLE_PAY_TRANSIT_VALID_FROM\x10\xf7\x03\x12#\n\x1eGOOGLE_PAY_TRANSIT_VALID_UNTIL\x10\xf8\x03\x12\x1f\n\x1aGOOGLE_PAY_TRANSIT_ARRIVAL\x10\xf9\x03\x12\'\n\"GOOGLE_PAY_TRANSIT_PASSENGER_NAMES\x10\xfa\x03\x12 \n\x1bGOOGLE_PAY_TRANSIT_CARRIAGE\x10\xfb\x03\x12\x1d\n\x18GOOGLE_PAY_TRANSIT_COACH\x10\xfc\x03\x12\x1c\n\x17GOOGLE_PAY_TRANSIT_SEAT\x10\xfd\x03\x12%\n GOOGLE_PAY_TRANSIT_TICKET_NUMBER\x10\xfe\x03\x12%\n GOOGLE_PAY_TRANSIT_TICKET_STATUS\x10\xff\x03\x12!\n\x1cGOOGLE_PAY_TRANSIT_FARE_NAME\x10\x80\x04\x12 \n\x1bGOOGLE_PAY_TRANSIT_PLATFORM\x10\x81\x04\x12\x1c\n\x17GOOGLE_PAY_TRANSIT_ZONE\x10\x82\x04\x12\"\n\x1dGOOGLE_PAY_TRANSIT_FARE_CLASS\x10\x83\x04\x12+\n&GOOGLE_PAY_TRANSIT_CONCESSION_CATEGORY\x10\x84\x04\x12*\n%GOOGLE_PAY_TRANSIT_ROUTE_RESTRICTIONS\x10\x85\x04\x12\x31\n,GOOGLE_PAY_TRANSIT_ROUTE_RESTRICTION_DETAILS\x10\x86\x04\x12)\n$GOOGLE_PAY_TRANSIT_TIME_RESTRICTIONS\x10\x87\x04\x12*\n%GOOGLE_PAY_TRANSIT_OTHER_RESTRICTIONS\x10\x88\x04\x12&\n!GOOGLE_PAY_TRANSIT_RECEIPT_NUMBER\x10\x89\x04\x12%\n GOOGLE_PAY_TRANSIT_PURCHASE_DATE\x10\x8a\x04\x12\"\n\x1dGOOGLE_PAY_TRANSIT_ACCOUNT_ID\x10\x8b\x04\x12)\n$GOOGLE_PAY_TRANSIT_CONFIRMATION_CODE\x10\x8c\x04\x12\"\n\x1dGOOGLE_PAY_TRANSIT_FACE_VALUE\x10\x8d\x04\x12&\n!GOOGLE_PAY_TRANSIT_PURCHASE_PRICE\x10\x8e\x04\x12(\n#GOOGLE_PAY_TRANSIT_DISCOUNT_MESSAGE\x10\x8f\x04\x12\x1b\n\x16GOOGLE_PAY_TEXT_MODULE\x10\xe8\x07\x12\x1b\n\x16GOOGLE_PAY_ISSUER_NAME\x10\xe9\x07\x12\"\n\x1dGOOGLE_PAY_STATIC_TEXT_MODULE\x10\xea\x07*l\n\x0cPasswordType\x12\x1c\n\x18PASSWORD_TYPE_DO_NOT_USE\x10\x00\x12\x1d\n\x19PASSWORD_TYPE_NO_PASSWORD\x10\x01\x12\x1f\n\x1bPASSWORD_TYPE_PASSWORD_ONLY\x10\x02*w\n\x16SupportedAndroidWallet\x12\x1d\n\x19\x41NDROID_WALLET_DO_NOT_USE\x10\x00\x12\x1d\n\x19\x41NDROID_WALLET_PASSWALLET\x10\x01\x12\x1f\n\x1b\x41NDROID_WALLET_WALLETPASSES\x10\x02*\xa3\x01\n\x15PersonalizedDataField\x12\x1a\n\x16PERSONALIZE_DO_NOT_USE\x10\x00\x12\x14\n\x10PERSONALIZE_NAME\x10\x01\x12\x1d\n\x19PERSONALIZE_EMAIL_ADDRESS\x10\x02\x12\x1c\n\x18PERSONALIZE_PHONE_NUMBER\x10\x04\x12\x1b\n\x17PERSONALIZE_POSTAL_CODE\x10\x08\x42G\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
20
+ descriptor_data = "\n\x18io/common/template.proto\x12\x02io\x1a\x1eio/common/common_objects.proto\x1a\x1cio/common/localization.proto\x1a\x19io/common/protocols.proto\x1a\x19io/common/proximity.proto\x1a\x15io/common/links.proto\x1a io/common/featured_actions.proto\x1a\x18io/common/tracking.proto\x1a\x14io/image/image.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x16io/common/expiry.proto\"w\n\x0cSelectOption\x12\x14\n\x0clistPriority\x18\x01 \x01(\r\x12\x11\n\ttextLabel\x18\x02 \x01(\t\x12/\n\x12localizedTextLabel\x18\x03 \x01(\x0b\x32\x13.io.LocalizedString\x12\r\n\x05value\x18\x04 \x01(\t\"X\n\x0eTOPTParameters\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x14\n\x0cmilliseconds\x18\x02 \x01(\r\x12\x13\n\x0bvalueString\x18\x03 \x01(\t\x12\x0e\n\x06\x64igits\x18\x04 \x01(\r\"\xf3\x01\n\x07\x42\x61rcode\x12\x0f\n\x07payload\x18\x01 \x01(\t\x12\x1f\n\x06\x66ormat\x18\x02 \x01(\x0e\x32\x0f.io.BarcodeType\x12\x0f\n\x07\x61ltText\x18\x03 \x01(\t\x12-\n\x10localizedAltText\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString\x12\x17\n\x0fmessageEncoding\x18\x05 \x01(\t\x12\x18\n\x10suppressSecurity\x18\x06 \x01(\x08\x12\x17\n\x0frotatingBarcode\x18\x07 \x01(\x08\x12*\n\x0etotpParameters\x18\x08 \x01(\x0b\x32\x12.io.TOPTParameters\"\xac\x07\n\x0cPassTemplate\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\"\n\x08protocol\x18\x03 \x01(\x0e\x32\x10.io.PassProtocol\x12\x10\n\x08revision\x18\x04 \x01(\r\x12)\n\x0f\x64\x65\x66\x61ultLanguage\x18\x05 \x01(\x0e\x32\x10.io.LanguageCode\x12\x18\n\x10organizationName\x18\x06 \x01(\t\x12\x36\n\x19localizedOrganizationName\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0b\x64\x65scription\x18\x08 \x01(\t\x12\x31\n\x14localizedDescription\x18\t \x01(\x0b\x32\x13.io.LocalizedString\x12\x16\n\x04\x64\x61ta\x18\n \x01(\x0b\x32\x08.io.Data\x12 \n\x08imageIds\x18\x0b \x01(\x0b\x32\x0c.io.ImageIdsH\x00\x12\x1f\n\x06images\x18\x0c \x01(\x0b\x32\r.io.ImageDataH\x00\x12\x1a\n\x06\x63olors\x18\r \x01(\x0b\x32\n.io.Colors\x12\x1c\n\x07\x62\x61rcode\x18\x0e \x01(\x0b\x32\x0b.io.Barcode\x12\x1b\n\nnfcEnabled\x18\x0f \x01(\x0b\x32\x07.io.NFC\x12\x1c\n\x07sharing\x18\x10 \x01(\x0b\x32\x0b.io.Sharing\x12\x34\n\x13\x61ppleWalletSettings\x18\x11 \x01(\x0b\x32\x17.io.AppleWalletSettings\x12\x30\n\x11googlePaySettings\x18\x12 \x01(\x0b\x32\x15.io.GooglePaySettings\x12*\n\tlocations\x18\x13 \x03(\x0b\x32\x0f.io.GPSLocationB\x06\x92\x41\x03\xa0\x01\n\x12#\n\x07\x62\x65\x61\x63ons\x18\x14 \x03(\x0b\x32\n.io.BeaconB\x06\x92\x41\x03\xa0\x01\n\x12\x17\n\x05links\x18\x15 \x03(\x0b\x32\x08.io.Link\x12\x10\n\x08timezone\x18\x16 \x01(\t\x12*\n\x0e\x65xpirySettings\x18\x17 \x01(\x0b\x32\x12.io.ExpirySettings\x12\x34\n\x13landingPageSettings\x18\x18 \x01(\x0b\x32\x17.io.LandingPageSettings:b\x92\x41_\n]*\x0bPass Design2<Design record for the Apple Wallet and Google Wallet passes.\xd2\x01\x0f\x64\x65\x66\x61ultLanguageB\r\n\x0bImageAssets\"\x88\x05\n\x13\x41ppleWalletSettings\x12#\n\x08passType\x18\x01 \x01(\x0e\x32\x11.io.ApplePassType\x12\x10\n\x08userInfo\x18\x02 \x01(\t\x12\x14\n\x0c\x61ppLaunchUrl\x18\x03 \x01(\t\x12\"\n\x1a\x61ssociatedStoreIdentifiers\x18\x04 \x03(\r\x12\x13\n\x0bmaxDistance\x18\x05 \x01(\r\x12\x19\n\x11\x61ppStoreCountries\x18\x06 \x03(\t\x12$\n\x0btransitType\x18\x07 \x01(\x0e\x32\x0f.io.TransitType\x12\x1a\n\x12groupingIdentifier\x18\x08 \x01(\t\x12:\n\x16personalizationDetails\x18\t \x01(\x0b\x32\x1a.io.PersonalizationDetails\x12\x1b\n\x13\x61ppStoreIdentifiers\x18\n \x03(\x04\x12\x1c\n\x14semanticBoardingPass\x18\x10 \x01(\x08\x12\x1e\n\x16\x61llowLiveFlightUpdates\x18\x11 \x01(\x08\x12\x1e\n\x16\x64isplayGateClosingTime\x18\x12 \x01(\x08\x12\x19\n\x11posterTicketStyle\x18\x0b \x01(\x08\x12\x1a\n\x12posterGenericStyle\x18\x13 \x01(\x08\x12\x1f\n\x17suppressHeaderDarkening\x18\x0c \x01(\x08\x12\x1a\n\x12useAutomaticColors\x18\r \x01(\x08\x12\x10\n\x08logoText\x18\x0e \x01(\t\x12\x1c\n\x14ignoreTimeComponents\x18\x0f \x01(\x08\x12\x33\n\x0f\x66\x65\x61turedActions\x18\x14 \x03(\x0b\x32\x12.io.FeaturedActionB\x06\x92\x41\x03\xa0\x01\x02\"\x89\x01\n\x16PersonalizationDetails\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12>\n\x1brequiredPersonalizationData\x18\x02 \x03(\x0e\x32\x19.io.PersonalizedDataField\x12\x1a\n\x12termsAndConditions\x18\x03 \x01(\t\"\xe2\x02\n\x11GooglePaySettings\x12\'\n\x08passType\x18\x01 \x01(\x0e\x32\x15.io.GooglePayPassType\x12$\n\nandroidApp\x18\x02 \x01(\x0b\x32\x10.io.GooglePayApp\x12 \n\x06iosApp\x18\x03 \x01(\x0b\x32\x10.io.GooglePayApp\x12 \n\x06webApp\x18\x04 \x01(\x0b\x32\x10.io.GooglePayApp\x12\x19\n\x11\x63lassTemplateInfo\x18\x05 \x01(\t\x12\x17\n\x0f\x62\x61\x63kgroundColor\x18\x06 \x01(\t\x12+\n\x11languageOverrides\x18\x07 \x03(\x0e\x32\x10.io.LanguageCode\x12\x38\n\x15screenshotEligibility\x18\x08 \x01(\x0e\x32\x19.io.ScreenshotEligibility\x12\x1f\n\x17\x45nableMerchantLocations\x18\t \x01(\x08\"\xf6\x01\n\x0cGooglePayApp\x12\x14\n\x03url\x18\x01 \x01(\x0b\x32\x07.io.Url\x12\r\n\x05title\x18\x02 \x01(\t\x12+\n\x0elocalizedTitle\x18\x03 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x31\n\x14localizedDescription\x18\x05 \x01(\x0b\x32\x13.io.LocalizedString\x12\x16\n\x0eurlDescription\x18\x06 \x01(\t\x12\x34\n\x17localizedUrlDescription\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\"m\n\x04\x44\x61ta\x12!\n\ndataFields\x18\x01 \x03(\x0b\x32\r.io.DataField\x12\x42\n\x1a\x64\x61taCollectionPageSettings\x18\x02 \x01(\x0b\x32\x1e.io.DataCollectionPageSettings\"\xe4\x02\n\x13LandingPageSettings\x12\x35\n\x1blandingLocalizationOverride\x18\x01 \x03(\x0e\x32\x10.io.LanguageCode\x12\x31\n\x1dpreferThirdPartyAndroidWallet\x18\x02 \x01(\x0e\x32\n.io.Toggle\x12:\n\x16preferredAndroidWallet\x18\x03 \x01(\x0e\x32\x1a.io.SupportedAndroidWallet\x12S\n\x16localizedTextOverrides\x18\x04 \x03(\x0b\x32\x33.io.LandingPageSettings.LocalizedTextOverridesEntry\x1aR\n\x1bLocalizedTextOverridesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\"\n\x05value\x18\x02 \x01(\x0b\x32\x13.io.LocalizedString:\x02\x38\x01\"\xdc\x05\n\x1a\x44\x61taCollectionPageSettings\x12\r\n\x05title\x18\x01 \x01(\t\x12+\n\x0elocalizedTitle\x18\x02 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x31\n\x14localizedDescription\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString\x12\x18\n\x10submitButtonText\x18\x05 \x01(\t\x12\x36\n\x19localizedSubmitButtonText\x18\x06 \x01(\x0b\x32\x13.io.LocalizedString\x12\x13\n\x0bloadingText\x18\x07 \x01(\t\x12\x31\n\x14localizedLoadingText\x18\x08 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0cthankYouText\x18\t \x01(\t\x12\x32\n\x15localizedThankYouText\x18\n \x01(\x0b\x32\x13.io.LocalizedString\x12\x1b\n\x13pageBackgroundColor\x18\x0b \x01(\t\x12\x39\n\x1clocalizedPageBackgroundColor\x18\x0c \x01(\x0b\x32\x13.io.LocalizedString\x12.\n\x10trackingSettings\x18\r \x01(\x0b\x32\x14.io.TrackingSettings\x12\x1d\n\x15submitButtonTextColor\x18\x0e \x01(\t\x12#\n\x1bsubmitButtonBackgroundColor\x18\x0f \x01(\t\x12\x12\n\nfooterText\x18\x10 \x01(\t\x12\x30\n\x13localizedFooterText\x18\x11 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x63ssOverrides\x18\x12 \x01(\t\x12.\n\x10passwordSettings\x18\x13 \x01(\x0b\x32\x14.io.PasswordSettings\"\xca\x03\n\x10PasswordSettings\x12&\n\x0cpasswordType\x18\x01 \x01(\x0e\x32\x10.io.PasswordType\x12\x10\n\x08password\x18\x02 \x01(\t\x12\x16\n\x0einputLabelText\x18\x03 \x01(\t\x12\x34\n\x17localizedInputLabelText\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString\x12\x11\n\terrorText\x18\x05 \x01(\t\x12/\n\x12localizedErrorText\x18\x06 \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nheaderText\x18\x07 \x01(\t\x12\x30\n\x13localizedHeaderText\x18\x08 \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nbuttonText\x18\t \x01(\t\x12\x30\n\x13localizedButtonText\x18\n \x01(\x0b\x32\x13.io.LocalizedString\x12\x11\n\ttitleText\x18\x0b \x01(\t\x12/\n\x12localizedTitleText\x18\x0c \x01(\x0b\x32\x13.io.LocalizedString\x12\x1a\n\x12\x61utoLogoutOnSubmit\x18\r \x01(\x08\"\xf3\x01\n\x14PassTemplateResponse\x12\"\n\x08template\x18\x01 \x01(\x0b\x32\x10.io.PassTemplate\x12\x0c\n\x04Name\x18\x02 \x01(\t\x12\x15\n\rownerUsername\x18\x03 \x01(\t\x12\"\n\x08protocol\x18\x04 \x01(\x0e\x32\x10.io.PassProtocol\x12\x10\n\x08revision\x18\x05 \x01(\r\x12-\n\tcreatedAt\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12-\n\tupdatedAt\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x94\x01\n\x06\x43olors\x12\x17\n\x0f\x62\x61\x63kgroundColor\x18\x01 \x01(\t\x12\x12\n\nlabelColor\x18\x02 \x01(\t\x12\x11\n\ttextColor\x18\x03 \x01(\t\x12\x12\n\nstripColor\x18\x04 \x01(\t\x12\x17\n\x0f\x66oregroundColor\x18\x05 \x01(\t\x12\x1d\n\x15\x66ooterBackgroundColor\x18\x06 \x01(\t\".\n\x0f\x43opyObjectInput\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0f\n\x07newName\x18\x02 \x01(\t\"y\n\x03NFC\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x15\n\rcertificateId\x18\x02 \x01(\t\x12\x0f\n\x07payload\x18\x03 \x01(\t\x12\x13\n\x0biCloudBound\x18\x04 \x01(\x08\x12$\n\x0b\x62indingInfo\x18\x05 \x01(\x0b\x32\x0f.io.BindingInfo\"<\n\x0b\x42indingInfo\x12\x17\n\x0f\x64isplayableName\x18\x01 \x01(\t\x12\x14\n\x0clearnMoreUrl\x18\x02 \x01(\t\"\xef\x04\n\tDataField\x12\x12\n\nuniqueName\x18\x01 \x01(\t\x12\x12\n\ntemplateId\x18\x02 \x01(\t\x12 \n\tfieldType\x18\x03 \x01(\x0e\x32\r.io.FieldType\x12\x12\n\nisRequired\x18\x04 \x01(\x08\x12\r\n\x05label\x18\x05 \x01(\t\x12+\n\x0elocalizedLabel\x18\x06 \x01(\x0b\x32\x13.io.LocalizedString\x12\x1e\n\x08\x64\x61taType\x18\x07 \x01(\x0e\x32\x0c.io.DataType\x12\x14\n\x0c\x64\x65\x66\x61ultValue\x18\x08 \x01(\t\x12\x32\n\x15localizedDefaultValue\x18\t \x01(\x0b\x32\x13.io.LocalizedString\x12\x12\n\nvalidation\x18\n \x01(\t\x12\x17\n\x0fuserCanSetValue\x18\x0b \x01(\x08\x12\x14\n\x0c\x63urrencyCode\x18\x0c \x01(\t\x12H\n\x1d\x61ppleWalletFieldRenderOptions\x18\r \x01(\x0b\x32!.io.AppleWalletFieldRenderOptions\x12N\n dataCollectionFieldRenderOptions\x18\x0e \x01(\x0b\x32$.io.DataCollectionFieldRenderOptions\x12\x1c\n\x05usage\x18\x0f \x03(\x0e\x32\r.io.UsageType\x12\x44\n\x1bgooglePayFieldRenderOptions\x18\x10 \x01(\x0b\x32\x1f.io.GooglePayFieldRenderOptions\x12\x1d\n\x15\x64\x65\x66\x61ultTelCountryCode\x18\x11 \x01(\t\"\x98\x03\n\x1d\x41ppleWalletFieldRenderOptions\x12(\n\rtextAlignment\x18\x02 \x01(\x0e\x32\x11.io.TextAlignment\x12.\n\x10positionSettings\x18\x03 \x01(\x0b\x32\x14.io.PositionSettings\x12\x15\n\rchangeMessage\x18\x04 \x01(\t\x12\x33\n\x16localizedChangeMessage\x18\x05 \x01(\x0b\x32\x13.io.LocalizedString\x12$\n\tdateStyle\x18\x06 \x01(\x0e\x32\x11.io.DateTimeStyle\x12$\n\ttimeStyle\x18\x07 \x01(\x0e\x32\x11.io.DateTimeStyle\x12$\n\x0bnumberStyle\x18\x08 \x01(\x0e\x32\x0f.io.NumberStyle\x12/\n\x15suppressLinkDetection\x18\t \x03(\x0e\x32\x10.io.LinkDetector\x12\x16\n\x0eignoreTimezone\x18\n \x01(\x08\x12\x16\n\x0eisRelativeDate\x18\x0b \x01(\x08\"h\n\x1bGooglePayFieldRenderOptions\x12-\n\x11googlePayPosition\x18\x01 \x01(\x0e\x32\x12.io.GooglePayField\x12\x1a\n\x12textModulePriority\x18\x02 \x01(\r\"G\n\x10PositionSettings\x12!\n\x07section\x18\x01 \x01(\x0e\x32\x10.io.FieldSection\x12\x10\n\x08priority\x18\x02 \x01(\r\"\xc9\x03\n DataCollectionFieldRenderOptions\x12\x10\n\x08helpText\x18\x01 \x01(\t\x12.\n\x11localizedHelpText\x18\x02 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x64isplayOrder\x18\x03 \x01(\x05\x12\x13\n\x0bplaceholder\x18\x05 \x01(\t\x12\'\n\rselectOptions\x18\x06 \x03(\x0b\x32\x10.io.SelectOption\x12\x31\n\x14localizedPlaceholder\x18\x07 \x01(\x0b\x32\x13.io.LocalizedString\x12\x14\n\x0c\x61utocomplete\x18\x08 \x01(\x08\x12\x36\n\x14\x61\x64\x64ressRenderOptions\x18\t \x01(\x0b\x32\x18.io.AddressRenderOptions\x12 \n\x18localizedYearPlaceholder\x18\n \x01(\t\x12!\n\x19localizedMonthPlaceholder\x18\x0b \x01(\t\x12\x1f\n\x17localizedDayPlaceholder\x18\x0c \x01(\t\x12(\n\x12\x63ollectionDataType\x18\r \x01(\x0e\x32\x0c.io.DataType\"\xa2\x06\n\x14\x41\x64\x64ressRenderOptions\x12\x15\n\raddress1Label\x18\x01 \x01(\t\x12\x15\n\raddress2Label\x18\x02 \x01(\t\x12\x11\n\tcityLabel\x18\x03 \x01(\t\x12\x14\n\x0c\x63ountryLabel\x18\x04 \x01(\t\x12\x10\n\x08zipLabel\x18\x05 \x01(\t\x12\x1b\n\x13\x61\x64\x64ress1Placeholder\x18\x06 \x01(\t\x12\x1b\n\x13\x61\x64\x64ress2Placeholder\x18\x07 \x01(\t\x12\x17\n\x0f\x63ityPlaceholder\x18\x08 \x01(\t\x12\x1a\n\x12\x63ountryPlaceholder\x18\t \x01(\t\x12\x16\n\x0ezipPlaceholder\x18\n \x01(\t\x12\x33\n\x16localizedAddress1Label\x18\x0b \x01(\x0b\x32\x13.io.LocalizedString\x12\x33\n\x16localizedAddress2Label\x18\x0c \x01(\x0b\x32\x13.io.LocalizedString\x12/\n\x12localizedCityLabel\x18\r \x01(\x0b\x32\x13.io.LocalizedString\x12\x32\n\x15localizedCountryLabel\x18\x0e \x01(\x0b\x32\x13.io.LocalizedString\x12.\n\x11localizedZipLabel\x18\x0f \x01(\x0b\x32\x13.io.LocalizedString\x12\x39\n\x1clocalizedAddress1Placeholder\x18\x10 \x01(\x0b\x32\x13.io.LocalizedString\x12\x39\n\x1clocalizedAddress2Placeholder\x18\x11 \x01(\x0b\x32\x13.io.LocalizedString\x12\x35\n\x18localizedCityPlaceholder\x18\x12 \x01(\x0b\x32\x13.io.LocalizedString\x12\x38\n\x1blocalizedCountryPlaceholder\x18\x13 \x01(\x0b\x32\x13.io.LocalizedString\x12\x34\n\x17localizedZipPlaceholder\x18\x14 \x01(\x0b\x32\x13.io.LocalizedString\"\xb7\x01\n\x07Sharing\x12\x17\n\x0fprohibitSharing\x18\x01 \x01(\x08\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x31\n\x14localizedDescription\x18\x04 \x01(\x0b\x32\x13.io.LocalizedString:>\x92\x41;\n9*\x07Sharing2.Controls the sharing settings for the program.\"N\n\x16\x44\x65\x66\x61ultTemplateRequest\x12\"\n\x08protocol\x18\x01 \x01(\x0e\x32\x10.io.PassProtocol\x12\x10\n\x08revision\x18\x02 \x01(\r*v\n\rApplePassType\x12\x17\n\x13\x41PPLE_NOT_SUPPORTED\x10\x00\x12\x11\n\rBOARDING_PASS\x10\x01\x12\n\n\x06\x43OUPON\x10\x02\x12\x10\n\x0c\x45VENT_TICKET\x10\x03\x12\x0b\n\x07GENERIC\x10\x04\x12\x0e\n\nSTORE_CARD\x10\x05*w\n\x11GooglePayPassType\x12\x1c\n\x18GOOGLE_PAY_NOT_SUPPORTED\x10\x00\x12\t\n\x05\x45VENT\x10\x01\x12\n\n\x06\x46LIGHT\x10\x02\x12\x08\n\x04GIFT\x10\x03\x12\x0b\n\x07LOYALTY\x10\x04\x12\t\n\x05OFFER\x10\x05\x12\x0b\n\x07TRANSIT\x10\x06*\x8d\x01\n\x0b\x42\x61rcodeType\x12\x1b\n\x17\x42\x41RCODE_TYPE_DO_NOT_USE\x10\x00\x12\x06\n\x02QR\x10\x01\x12\t\n\x05\x41ZTEC\x10\x02\x12\n\n\x06PDF417\x10\x03\x12\x0b\n\x07\x43ODE128\x10\x04\x12\t\n\x05\x45\x41N13\x10\x06\x12\x0b\n\x07\x43ODABAR\x10\x07\x12\n\n\x06\x43ODE39\x10\x08\x12\x07\n\x03ITF\x10\t\x12\x08\n\x04NONE\x10\x05*q\n\tFieldType\x12\x13\n\x0f\x46IELD_TYPE_NONE\x10\x00\x12\x08\n\x04META\x10\x01\x12\x07\n\x03PII\x10\x02\x12\x14\n\x10UNIVERSAL_FIELDS\x10\x03\x12\x13\n\x0fPROTOCOL_FIELDS\x10\x04\x12\x11\n\rCUSTOM_FIELDS\x10\x05*\xbe\x01\n\x0eStandardFields\x12\x1e\n\x1aSTANDARD_FIELDS_DO_NOT_USE\x10\x00\x12\x15\n\x11STANDARD_MESSAGES\x10\x01\x12\x12\n\x0eSTANDARD_LEGAL\x10\x02\x12\x18\n\x14STANDARD_EXPIRY_DATE\x10\x03\x12\x19\n\x15STANDARD_USEFUL_LINKS\x10\x04\x12\x14\n\x10STANDARD_OPT_OUT\x10\x05\x12\x16\n\x12STANDARD_LOCATIONS\x10\x06*\\\n\rTextAlignment\x12\x1d\n\x19TEXT_ALIGNMENT_DO_NOT_USE\x10\x00\x12\x08\n\x04LEFT\x10\x01\x12\n\n\x06\x43\x45NTER\x10\x02\x12\t\n\x05RIGHT\x10\x03\x12\x0b\n\x07NATURAL\x10\x04*\x9a\x01\n\rDateTimeStyle\x12\x1e\n\x1a\x44\x41TE_TIME_STYLE_DO_NOT_USE\x10\x00\x12\x19\n\x15\x44\x41TE_TIME_STYLE_SHORT\x10\x01\x12\x1a\n\x16\x44\x41TE_TIME_STYLE_MEDIUM\x10\x02\x12\x18\n\x14\x44\x41TE_TIME_STYLE_LONG\x10\x03\x12\x18\n\x14\x44\x41TE_TIME_STYLE_FULL\x10\x04*\x8f\x01\n\x0cLinkDetector\x12\x1c\n\x18LINK_DETECTOR_DO_NOT_USE\x10\x00\x12\x19\n\x15LINK_DETECTOR_ADDRESS\x10\x01\x12\x16\n\x12LINK_DETECTOR_DATE\x10\x02\x12\x15\n\x11LINK_DETECTOR_URL\x10\x03\x12\x17\n\x13LINK_DETECTOR_PHONE\x10\x04*\x93\x01\n\x0bNumberStyle\x12\x1b\n\x17NUMBER_STYLE_DO_NOT_USE\x10\x00\x12\x18\n\x14NUMBER_STYLE_DECIMAL\x10\x01\x12\x18\n\x14NUMBER_STYLE_PERCENT\x10\x02\x12\x1b\n\x17NUMBER_STYLE_SCIENTIFIC\x10\x03\x12\x16\n\x12NUMBER_STYLE_SPELL\x10\x04*\xb6\x01\n\x0bTransitType\x12\x1b\n\x17TRANSIT_TYPE_DO_NOT_USE\x10\x00\x12\x14\n\x10TRANSIT_TYPE_AIR\x10\x01\x12\x15\n\x11TRANSIT_TYPE_BOAT\x10\x02\x12\x14\n\x10TRANSIT_TYPE_BUS\x10\x03\x12\x18\n\x14TRANSIT_TYPE_GENERIC\x10\x04\x12\x16\n\x12TRANSIT_TYPE_TRAIN\x10\x05\x12\x15\n\x11TRANSIT_TYPE_TRAM\x10\x06*\x88\x02\n\x08\x44\x61taType\x12\x12\n\x0e\x44\x41TA_TYPE_NONE\x10\x00\x12\x08\n\x04TEXT\x10\x01\x12\r\n\tTEXT_LONG\x10\x02\x12\x11\n\rDATE_YYYYMMDD\x10\x03\x12\x0f\n\x0b\x44\x41TE_YYYYMM\x10\x04\x12\r\n\tDATE_MMDD\x10\x05\x12\x08\n\x04TIME\x10\x06\x12\r\n\tDATE_TIME\x10\x07\x12\x07\n\x03INT\x10\x08\x12\n\n\x06NUMBER\x10\t\x12\t\n\x05\x45MAIL\x10\n\x12\x07\n\x03URL\x10\x0b\x12\x07\n\x03TEL\x10\x0c\x12\x0b\n\x07\x41\x44\x44RESS\x10\r\x12\t\n\x05IMAGE\x10\x0f\x12\x0c\n\x08\x43URRENCY\x10\x10\x12\x0b\n\x07\x42OOLEAN\x10\x11\x12\x0b\n\x07OPTIONS\x10\x12\x12\x0b\n\x07\x44\x41TE_MM\x10\x13\"\x04\x08\x0e\x10\x0e*\xfe\x01\n\tDataStyle\x12\x0c\n\x08NO_STYLE\x10\x00\x12\x0e\n\nDATE_SHORT\x10\x01\x12\x0f\n\x0b\x44\x41TE_MEDIUM\x10\x02\x12\r\n\tDATE_LONG\x10\x03\x12\r\n\tDATE_FULL\x10\x04\x12\x0e\n\nTIME_SHORT\x10\x05\x12\x0f\n\x0bTIME_MEDIUM\x10\x06\x12\r\n\tTIME_LONG\x10\x07\x12\r\n\tTIME_FULL\x10\x08\x12\x13\n\x0f\x44\x41TE_TIME_SHORT\x10\t\x12\x14\n\x10\x44\x41TE_TIME_MEDIUM\x10\n\x12\x12\n\x0e\x44\x41TE_TIME_LONG\x10\x0b\x12\x12\n\x0e\x44\x41TE_TIME_FULL\x10\x0c\x12\x12\n\x0eNUMBER_DECIMAL\x10\r*\xba\x01\n\x0c\x46ieldSection\x12\x1c\n\x18\x46IELD_SECTION_DO_NOT_USE\x10\x00\x12\x0f\n\x0b\x42\x41\x43K_FIELDS\x10\x01\x12\x12\n\x0ePRIMARY_FIELDS\x10\x02\x12\x14\n\x10SECONDARY_FIELDS\x10\x03\x12\x14\n\x10\x41UXILIARY_FIELDS\x10\x04\x12\x11\n\rHEADER_FIELDS\x10\x05\x12\x15\n\x11\x41\x44\x44ITIONAL_FIELDS\x10\x06\x12\x11\n\rFOOTER_FIELDS\x10\x07*\x8e\x19\n\x0eGooglePayField\x12\x1f\n\x1bGOOGLE_PAY_FIELD_DO_NOT_USE\x10\x00\x12$\n GOOGLE_PAY_BOARDING_AIRLINE_NAME\x10\x01\x12$\n GOOGLE_PAY_BOARDING_AIRLINE_CODE\x10\x02\x12\x1e\n\x1aGOOGLE_PAY_BOARDING_ORIGIN\x10\x03\x12#\n\x1fGOOGLE_PAY_BOARDING_DESTINATION\x10\x04\x12\'\n#GOOGLE_PAY_BOARDING_ORIGIN_TERMINAL\x10\x05\x12#\n\x1fGOOGLE_PAY_BOARDING_ORIGIN_GATE\x10\x06\x12%\n!GOOGLE_PAY_BOARDING_BOARDING_TIME\x10\x07\x12&\n\"GOOGLE_PAY_BOARDING_PASSENGER_NAME\x10\x08\x12\"\n\x1eGOOGLE_PAY_BOARDING_ZONE_GROUP\x10\t\x12\x1c\n\x18GOOGLE_PAY_BOARDING_SEAT\x10\n\x12)\n%GOOGLE_PAY_BOARDING_BOARDING_POSITION\x10\x0b\x12)\n%GOOGLE_PAY_BOARDING_BOARDING_SEQUENCE\x10\x0c\x12%\n!GOOGLE_PAY_BOARDING_BOARDING_DOOR\x10\r\x12%\n!GOOGLE_PAY_BOARDING_FLIGHT_NUMBER\x10\x0e\x12+\n\'GOOGLE_PAY_BOARDING_CONFIRMATION_NUMBER\x10\x0f\x12%\n!GOOGLE_PAY_BOARDING_TICKET_NUMBER\x10\x10\x12-\n)GOOGLE_PAY_BOARDING_FREQUENT_FLYER_NUMBER\x10\x11\x12#\n\x1fGOOGLE_PAY_BOARDING_GATE_CLOSES\x10\x12\x12&\n\"GOOGLE_PAY_BOARDING_DEPARTURE_TIME\x10\x13\x12$\n GOOGLE_PAY_BOARDING_ARRIVAL_TIME\x10\x14\x12(\n$GOOGLE_PAY_BOARDING_ARRIVAL_TERMINAL\x10\x15\x12$\n GOOGLE_PAY_BOARDING_ARRIVAL_GATE\x10\x16\x12\x19\n\x15GOOGLE_PAY_EVENT_NAME\x10\x64\x12\x1f\n\x1bGOOGLE_PAY_EVENT_VENUE_NAME\x10\x65\x12\"\n\x1eGOOGLE_PAY_EVENT_VENUE_ADDRESS\x10\x66\x12\x19\n\x15GOOGLE_PAY_EVENT_GATE\x10g\x12\x1c\n\x18GOOGLE_PAY_EVENT_SECTION\x10h\x12\x18\n\x14GOOGLE_PAY_EVENT_ROW\x10i\x12\x19\n\x15GOOGLE_PAY_EVENT_SEAT\x10j\x12\"\n\x1eGOOGLE_PAY_EVENT_TICKET_HOLDER\x10k\x12\x1f\n\x1bGOOGLE_PAY_EVENT_DOORS_OPEN\x10l\x12\x1a\n\x16GOOGLE_PAY_EVENT_START\x10m\x12\x18\n\x14GOOGLE_PAY_EVENT_END\x10n\x12 \n\x1cGOOGLE_PAY_EVENT_TICKET_TYPE\x10o\x12\"\n\x1eGOOGLE_PAY_EVENT_TICKET_NUMBER\x10p\x12(\n$GOOGLE_PAY_EVENT_CONFIRMATION_NUMBER\x10q\x12\x1f\n\x1bGOOGLE_PAY_EVENT_FACE_VALUE\x10r\x12\x1f\n\x1bGOOGLE_PAY_EVENT_FINE_PRINT\x10s\x12\"\n\x1dGOOGLE_PAY_GIFT_MERCHANT_NAME\x10\xc8\x01\x12\x1c\n\x17GOOGLE_PAY_GIFT_BALANCE\x10\xc9\x01\x12 \n\x1bGOOGLE_PAY_GIFT_CARD_NUMBER\x10\xca\x01\x12(\n#GOOGLE_PAY_GIFT_BALANCE_UPDATE_TIME\x10\xcb\x01\x12\x18\n\x13GOOGLE_PAY_GIFT_PIN\x10\xcc\x01\x12!\n\x1cGOOGLE_PAY_GIFT_EVENT_NUMBER\x10\xcd\x01\x12$\n\x1fGOOGLE_PAY_LOYALTY_PROGRAM_NAME\x10\xac\x02\x12\x1e\n\x19GOOGLE_PAY_LOYALTY_POINTS\x10\xad\x02\x12(\n#GOOGLE_PAY_LOYALTY_SECONDARY_POINTS\x10\xae\x02\x12$\n\x1fGOOGLE_PAY_LOYALTY_ACCOUNT_NAME\x10\xaf\x02\x12\"\n\x1dGOOGLE_PAY_LOYALTY_ACCOUNT_ID\x10\xb0\x02\x12$\n\x1fGOOGLE_PAY_LOYALTY_REWARDS_TIER\x10\xb1\x02\x12.\n)GOOGLE_PAY_LOYALTY_SECONDARY_REWARDS_TIER\x10\xb2\x02\x12\x1b\n\x16GOOGLE_PAY_OFFER_TITLE\x10\x90\x03\x12\x1e\n\x19GOOGLE_PAY_OFFER_PROVIDER\x10\x91\x03\x12\x1d\n\x18GOOGLE_PAY_OFFER_DETAILS\x10\x92\x03\x12 \n\x1bGOOGLE_PAY_OFFER_FINE_PRINT\x10\x93\x03\x12!\n\x1cGOOGLE_PAY_OFFER_SHORT_TITLE\x10\x94\x03\x12#\n\x1eGOOGLE_PAY_TRANSIT_ISSUER_NAME\x10\xf4\x03\x12!\n\x1cGOOGLE_PAY_TRANSIT_DEPARTURE\x10\xf5\x03\x12&\n!GOOGLE_PAY_TRANSIT_DEPARTURE_TIME\x10\xf6\x03\x12\"\n\x1dGOOGLE_PAY_TRANSIT_VALID_FROM\x10\xf7\x03\x12#\n\x1eGOOGLE_PAY_TRANSIT_VALID_UNTIL\x10\xf8\x03\x12\x1f\n\x1aGOOGLE_PAY_TRANSIT_ARRIVAL\x10\xf9\x03\x12\'\n\"GOOGLE_PAY_TRANSIT_PASSENGER_NAMES\x10\xfa\x03\x12 \n\x1bGOOGLE_PAY_TRANSIT_CARRIAGE\x10\xfb\x03\x12\x1d\n\x18GOOGLE_PAY_TRANSIT_COACH\x10\xfc\x03\x12\x1c\n\x17GOOGLE_PAY_TRANSIT_SEAT\x10\xfd\x03\x12%\n GOOGLE_PAY_TRANSIT_TICKET_NUMBER\x10\xfe\x03\x12%\n GOOGLE_PAY_TRANSIT_TICKET_STATUS\x10\xff\x03\x12!\n\x1cGOOGLE_PAY_TRANSIT_FARE_NAME\x10\x80\x04\x12 \n\x1bGOOGLE_PAY_TRANSIT_PLATFORM\x10\x81\x04\x12\x1c\n\x17GOOGLE_PAY_TRANSIT_ZONE\x10\x82\x04\x12\"\n\x1dGOOGLE_PAY_TRANSIT_FARE_CLASS\x10\x83\x04\x12+\n&GOOGLE_PAY_TRANSIT_CONCESSION_CATEGORY\x10\x84\x04\x12*\n%GOOGLE_PAY_TRANSIT_ROUTE_RESTRICTIONS\x10\x85\x04\x12\x31\n,GOOGLE_PAY_TRANSIT_ROUTE_RESTRICTION_DETAILS\x10\x86\x04\x12)\n$GOOGLE_PAY_TRANSIT_TIME_RESTRICTIONS\x10\x87\x04\x12*\n%GOOGLE_PAY_TRANSIT_OTHER_RESTRICTIONS\x10\x88\x04\x12&\n!GOOGLE_PAY_TRANSIT_RECEIPT_NUMBER\x10\x89\x04\x12%\n GOOGLE_PAY_TRANSIT_PURCHASE_DATE\x10\x8a\x04\x12\"\n\x1dGOOGLE_PAY_TRANSIT_ACCOUNT_ID\x10\x8b\x04\x12)\n$GOOGLE_PAY_TRANSIT_CONFIRMATION_CODE\x10\x8c\x04\x12\"\n\x1dGOOGLE_PAY_TRANSIT_FACE_VALUE\x10\x8d\x04\x12&\n!GOOGLE_PAY_TRANSIT_PURCHASE_PRICE\x10\x8e\x04\x12(\n#GOOGLE_PAY_TRANSIT_DISCOUNT_MESSAGE\x10\x8f\x04\x12\x1b\n\x16GOOGLE_PAY_TEXT_MODULE\x10\xe8\x07\x12\x1b\n\x16GOOGLE_PAY_ISSUER_NAME\x10\xe9\x07\x12\"\n\x1dGOOGLE_PAY_STATIC_TEXT_MODULE\x10\xea\x07*l\n\x0cPasswordType\x12\x1c\n\x18PASSWORD_TYPE_DO_NOT_USE\x10\x00\x12\x1d\n\x19PASSWORD_TYPE_NO_PASSWORD\x10\x01\x12\x1f\n\x1bPASSWORD_TYPE_PASSWORD_ONLY\x10\x02*w\n\x16SupportedAndroidWallet\x12\x1d\n\x19\x41NDROID_WALLET_DO_NOT_USE\x10\x00\x12\x1d\n\x19\x41NDROID_WALLET_PASSWALLET\x10\x01\x12\x1f\n\x1b\x41NDROID_WALLET_WALLETPASSES\x10\x02*\xa3\x01\n\x15PersonalizedDataField\x12\x1a\n\x16PERSONALIZE_DO_NOT_USE\x10\x00\x12\x14\n\x10PERSONALIZE_NAME\x10\x01\x12\x1d\n\x19PERSONALIZE_EMAIL_ADDRESS\x10\x02\x12\x1c\n\x18PERSONALIZE_PHONE_NUMBER\x10\x04\x12\x1b\n\x17PERSONALIZE_POSTAL_CODE\x10\x08*]\n\x15ScreenshotEligibility\x12&\n\"SCREENSHOT_ELIGIBILITY_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x45LIGIBLE\x10\x01\x12\x0e\n\nINELIGIBLE\x10\x02\x42G\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
19
21
 
20
- pool = Google::Protobuf::DescriptorPool.generated_pool
22
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
21
23
  pool.add_serialized_file(descriptor_data)
22
24
 
23
25
  module Io
@@ -37,6 +39,7 @@ module Io
37
39
  Colors = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.Colors").msgclass
38
40
  CopyObjectInput = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.CopyObjectInput").msgclass
39
41
  NFC = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.NFC").msgclass
42
+ BindingInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.BindingInfo").msgclass
40
43
  DataField = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.DataField").msgclass
41
44
  AppleWalletFieldRenderOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.AppleWalletFieldRenderOptions").msgclass
42
45
  GooglePayFieldRenderOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.GooglePayFieldRenderOptions").msgclass
@@ -62,4 +65,5 @@ module Io
62
65
  PasswordType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.PasswordType").enummodule
63
66
  SupportedAndroidWallet = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.SupportedAndroidWallet").enummodule
64
67
  PersonalizedDataField = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.PersonalizedDataField").enummodule
68
+ ScreenshotEligibility = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("io.ScreenshotEligibility").enummodule
65
69
  end
@@ -7,7 +7,7 @@ require 'google/protobuf'
7
7
 
8
8
  descriptor_data = "\n\x18io/common/tracking.proto\x12\x02io\"\x90\x03\n\x15\x46\x61\x63\x65\x62ookPixelSettings\x12\x0f\n\x07pixelId\x18\x01 \x01(\t\x12;\n dataCollectionPageStandardEvents\x18\x02 \x03(\x0b\x32\x11.io.StandardEvent\x12\x37\n\x1e\x64\x61taCollectionPageCustomEvents\x18\x03 \x03(\x0b\x32\x0f.io.CustomEvent\x12\x31\n\x16passPageStandardEvents\x18\x04 \x03(\x0b\x32\x11.io.StandardEvent\x12-\n\x14passPageCustomEvents\x18\x05 \x03(\x0b\x32\x0f.io.CustomEvent\x12H\n-customerInitiatedRedemptionPageStandardEvents\x18\x06 \x03(\x0b\x32\x11.io.StandardEvent\x12\x44\n+customerInitiatedRedemptionPageCustomEvents\x18\x07 \x03(\x0b\x32\x0f.io.CustomEvent\"R\n\rStandardEvent\x12\'\n\x05\x65vent\x18\x01 \x01(\x0e\x32\x18.io.FbPixelStandardEvent\x12\x12\n\nproperties\x18\x03 \x01(\tJ\x04\x08\x02\x10\x03\"6\n\x0b\x43ustomEvent\x12\r\n\x05\x65vent\x18\x01 \x01(\t\x12\x12\n\nproperties\x18\x03 \x01(\tJ\x04\x08\x02\x10\x03\"\xa0\x02\n\x17GoogleAnalyticsSettings\x12\x13\n\x0btrackingIds\x18\x01 \x03(\t\x12L\n\x18\x64\x61taCollectionPageEvents\x18\x02 \x03(\x0e\x32*.io.GoogleAnalyticsDataCollectionPageEvent\x12\x44\n\x14passRenderPageEvents\x18\x03 \x03(\x0e\x32&.io.GoogleAnalyticsPassRenderPageEvent\x12\\\n\x1b\x63ustomerInitiatedRedemption\x18\x04 \x03(\x0e\x32\x37.io.GoogleAnalyticsCustomerInitiatedRedemptionPageEvent\"\x8a\x01\n\x10TrackingSettings\x12\x38\n\x15\x66\x61\x63\x65\x62ookPixelSettings\x18\x01 \x01(\x0b\x32\x19.io.FacebookPixelSettings\x12<\n\x17googleAnalyticsSettings\x18\x02 \x01(\x0b\x32\x1b.io.GoogleAnalyticsSettings*\xfe\x02\n\x14\x46\x62PixelStandardEvent\x12!\n\x1d\x46\x42P_STANDARD_EVENT_DO_NOT_USE\x10\x00\x12 \n\x1c\x46\x42P_STANDARD_EVENT_PAGE_VIEW\x10\x01\x12,\n(FBP_STANDARD_EVENT_COMPLETE_REGISTRATION\x10\x02\x12\x1b\n\x17\x46\x42P_STANDARD_EVENT_LEAD\x10\x03\x12\x1f\n\x1b\x46\x42P_STANDARD_EVENT_PURCHASE\x10\x04\x12\x1f\n\x1b\x46\x42P_STANDARD_EVENT_SCHEDULE\x10\x05\x12\"\n\x1e\x46\x42P_STANDARD_EVENT_START_TRIAL\x10\x06\x12)\n%FBP_STANDARD_EVENT_SUBMIT_APPLICATION\x10\x07\x12 \n\x1c\x46\x42P_STANDARD_EVENT_SUBSCRIBE\x10\x08\x12#\n\x1f\x46\x42P_STANDARD_EVENT_VIEW_CONTENT\x10\t*|\n&GoogleAnalyticsDataCollectionPageEvent\x12\x1a\n\x16GA_DC_EVENT_DO_NOT_USE\x10\x00\x12\x19\n\x15GA_DC_EVENT_PAGE_VIEW\x10\x01\x12\x1b\n\x17GA_DC_EVENT_SUBMIT_FORM\x10\x02*\x82\x02\n\"GoogleAnalyticsPassRenderPageEvent\x12\x1a\n\x16GA_PP_EVENT_DO_NOT_USE\x10\x00\x12\x19\n\x15GA_PP_EVENT_PAGE_VIEW\x10\x01\x12)\n%GA_PP_EVENT_ADD_TO_APPLE_WALLET_CLICK\x10\x02\x12/\n+GA_PP_EVENT_VIEW_PASS_IN_APPLE_WALLET_CLICK\x10\x03\x12(\n$GA_PP_EVENT_SAVE_TO_GOOGLE_PAY_CLICK\x10\x04\x12\x1f\n\x1bGA_PP_EVENT_CHANGE_LANGUAGE\x10\x05*\x8a\x01\n3GoogleAnalyticsCustomerInitiatedRedemptionPageEvent\x12\x1c\n\x18GA_CIRP_EVENT_DO_NOT_USE\x10\x00\x12\x1b\n\x17GA_CIRP_EVENT_PAGE_VIEW\x10\x01\x12\x18\n\x14GA_CIRP_EVENT_REDEEM\x10\x02\x42G\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
9
9
 
10
- pool = Google::Protobuf::DescriptorPool.generated_pool
10
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
11
11
  pool.add_serialized_file(descriptor_data)
12
12
 
13
13
  module Io
@@ -3,6 +3,7 @@
3
3
  # source: io/common/transaction.proto
4
4
 
5
5
  require 'google/protobuf'
6
+ require 'protoc-gen-openapiv2/options/annotations_pb'
6
7
 
7
8
  require 'io/common/common_objects_pb'
8
9
  require 'io/common/proximity_pb'
@@ -10,7 +11,7 @@ require 'io/common/proximity_pb'
10
11
 
11
12
  descriptor_data = "\n\x1bio/common/transaction.proto\x12\x02io\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1eio/common/common_objects.proto\x1a\x19io/common/proximity.proto\"\x94\x04\n\x0bTransaction\x12\x13\n\x0breferenceId\x18\x01 \x01(\t\x12\x12\n\ntotalPrice\x18\x02 \x01(\x02\x12!\n\norderItems\x18\x03 \x03(\x0b\x32\r.io.OrderItem\x12\x10\n\x08\x64iscount\x18\x04 \x01(\x02\x12\'\n\rdiscountItems\x18\x05 \x03(\x0b\x32\x10.io.DiscountItem\x12\x15\n\rserviceCharge\x18\x06 \x01(\x02\x12\x10\n\x08totalTax\x18\x07 \x01(\x02\x12\x12\n\nfinalPrice\x18\x08 \x01(\x02\x12\x1a\n\x12roundingDifference\x18\t \x01(\x02\x12\x12\n\nisRefunded\x18\n \x01(\x08\x12\x1b\n\ttimestamp\x18\x0b \x01(\x0b\x32\x08.io.Date\x12\x10\n\x08\x63urrency\x18\x0c \x01(\t\x12!\n\x08location\x18\r \x01(\x0b\x32\x0f.io.GPSLocation\x12\x19\n\x11transactionSource\x18\x0e \x01(\t:\xa3\x01\x92\x41\x9f\x01\n\x9c\x01*\x0bTransaction2mTransaction information for member programs that want to show latest transactions on back of the member card.\xd2\x01\ttimestamp\xd2\x01\x06\x61mount\xd2\x01\x08\x63urrency\"a\n\x0c\x44iscountItem\x12\x14\n\x0c\x64iscountCode\x18\x01 \x01(\t\x12\x13\n\x0bvoucherCode\x18\x02 \x01(\t\x12\x0e\n\x06\x61mount\x18\x04 \x01(\x02\x12\x10\n\x08itemName\x18\x05 \x01(\tJ\x04\x08\x03\x10\x04\"Y\n\tOrderItem\x12\x0e\n\x06\x61mount\x18\x01 \x01(\x02\x12\x0b\n\x03tax\x18\x02 \x01(\x02\x12\x10\n\x08itemName\x18\x03 \x01(\t\x12\x10\n\x08quantity\x18\x04 \x01(\x05\x12\x0b\n\x03sku\x18\x05 \x01(\tBG\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
12
13
 
13
- pool = Google::Protobuf::DescriptorPool.generated_pool
14
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
14
15
  pool.add_serialized_file(descriptor_data)
15
16
 
16
17
  module Io
@@ -7,7 +7,7 @@ require 'google/protobuf'
7
7
 
8
8
  descriptor_data = "\n\x19io/common/useragent.proto\x12\x02io\"\xd9\x01\n\tUserAgent\x12\x0b\n\x03raw\x18\x01 \x01(\t\x12\x10\n\x08platform\x18\x02 \x01(\t\x12\n\n\x02os\x18\x03 \x01(\t\x12\x11\n\tosVersion\x18\x04 \x01(\t\x12\x0e\n\x06\x65ngine\x18\x05 \x01(\t\x12\x15\n\rengineVersion\x18\x06 \x01(\t\x12\x0f\n\x07\x62rowser\x18\x07 \x01(\t\x12\x16\n\x0e\x62rowserVersion\x18\x08 \x01(\t\x12\x14\n\x0clocalization\x18\t \x01(\t\x12\x0e\n\x06mobile\x18\n \x01(\x08\x12\x18\n\x10walletCompatible\x18\x0b \x01(\x08\x42U\n\x10\x63om.passkit.grpcB\x0c\x42rowserAgentZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpcb\x06proto3"
9
9
 
10
- pool = Google::Protobuf::DescriptorPool.generated_pool
10
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
11
11
  pool.add_serialized_file(descriptor_data)
12
12
 
13
13
  module Io
@@ -3,6 +3,7 @@
3
3
  # source: io/core/a_rpc_certificates.proto
4
4
 
5
5
  require 'google/protobuf'
6
+ require 'protoc-gen-openapiv2/options/annotations_pb'
6
7
 
7
8
  require 'google/api/annotations_pb'
8
9
  require 'google/protobuf/empty_pb'
@@ -12,9 +13,9 @@ require 'io/common/pagination_pb'
12
13
  require 'io/common/filter_pb'
13
14
 
14
15
 
15
- descriptor_data = "\n io/core/a_rpc_certificates.proto\x12\x02io\x1a\x1cgoogle/api/annotations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1eio/common/common_objects.proto\x1a io/certificate/certificate.proto\x1a\x1aio/common/pagination.proto\x1a\x16io/common/filter.proto\x1a.protoc-gen-openapiv2/options/annotations.proto2\xe8\x0e\n\x0c\x43\x65rtificates\x12\xdc\x01\n\x17getAppleCertificateData\x12\x16.io.PassTypeIdentifier\x1a\x13.io.CertificateData\"\x93\x01\x92\x41o\x12\x1aGet Apple pass certificate\x1aQGets the certificate data for certificate with Pass Type Identifier {passTypeId}.\x82\xd3\xe4\x93\x02\x1b\x12\x19/certificate/{passTypeId}\x12\xd5\x01\n\x1cgetCertificateSigningRequest\x12\x16.google.protobuf.Empty\x1a\x1d.io.CertificateSigningRequest\"~\x92\x41K\x12%Get CSR (Certificate Signing Request)\x1a\"Gets a CSR for the logged in user.\x82\xd3\xe4\x93\x02*\x12(/certificate/certificate_signing_request\x12\xa2\x01\n\x13\x61\x64\x64\x41ppleCertificate\x12\r.io.FileBytes\x1a\x13.io.CertificateData\"g\x92\x41;\x12\x15\x41\x64\x64 Apple certificate\x1a\"Uploads an Apple pass certificate.\x82\xd3\xe4\x93\x02#\"\x1e/certificate/apple_certificate:\x01*\x12\xbb\x01\n\x16updateAppleCertificate\x12\r.io.FileBytes\x1a\x13.io.CertificateData\"}\x92\x41Q\x12\x18Update Apple certificate\x1a\x35Updates or renews an existing Apple pass certificate.\x82\xd3\xe4\x93\x02#\x1a\x1e/certificate/apple_certificate:\x01*\x12\xbb\x01\n\x1flistAppleCertificatesDeprecated\x12\x0e.io.Pagination\x1a\x13.io.CertificateData\"q\x92\x41Y\x12)List Apple pass certificates [DEPRECATED]\x1a,Retrieves a users certificates [DEPRECATED].\x82\xd3\xe4\x93\x02\x0f\x12\r/certificates0\x01\x12\xa1\x01\n\x15listAppleCertificates\x12\x0b.io.Filters\x1a\x13.io.CertificateData\"d\x92\x41>\x12\x1cList Apple pass certificates\x1a\x1eRetrieves a users certificates\x82\xd3\xe4\x93\x02\x1d\"\x18/certificates/apple/list:\x01*0\x01\x12\xe0\x01\n countAppleCertificatesDeprecated\x12\x0e.io.Pagination\x1a\t.io.Count\"\xa0\x01\x92\x41\x81\x01\x12*Count Apple pass certificates [DEPRECATED]\x1aSRetrieves the total count of pass certificates for the logged in user [DEPRECATED].\x82\xd3\xe4\x93\x02\x15\x12\x13/certificates/count\x12\xc1\x01\n\x16\x63ountAppleCertificates\x12\x0b.io.Filters\x1a\t.io.Count\"\x8e\x01\x92\x41g\x12\x1d\x43ount Apple pass certificates\x1a\x46Retrieves the total count of pass certificates for the logged in user.\x82\xd3\xe4\x93\x02\x1e\"\x19/certificates/apple/count:\x01*\x12\xb4\x02\n\x19sendNFCSigningCredentials\x12 .io.NFCSigningCredentialsRequest\x1a\x16.google.protobuf.Empty\"\xdc\x01\x92\x41\xab\x01\x12\x1cSend NFC signing credentials\x1a\x8a\x01Sends the NFC signing credentials for a certificate to the registered email address of the user. Only works with NFC enabled certificates.\x82\xd3\xe4\x93\x02\'\"\"/certificates/nfc/credentials/send:\x01*B\xd8\x06\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpc\x92\x41\x8d\x06\x12\xda\x01\n\x18PassKit Certificates API\x12\x43\x41PI for managing Apple Wallet Pass Type Identifiers & Certificates.\x1a\x38https://passkit.com/legal/terms-of-subscription-service/\"?\n\x0fPassKit Support\x12\x17https://docs.passkit.io\x1a\x13support@passkit.com*\x01\x02\x32\x10\x61pplication/json:\x10\x61pplication/jsonR9\n\x03\x32\x30\x30\x12\x32\n(Returned when the request is successful.\x12\x06\n\x04\x9a\x02\x01\x07R4\n\x03\x34\x30\x30\x12-\n+Returned when wrong user input is provided.R0\n\x03\x34\x30\x31\x12)\n\'Returned when the user is unauthorized.RP\n\x03\x34\x30\x33\x12I\nGReturned when the user does not have permission to access the resource.R;\n\x03\x34\x30\x34\x12\x34\n*Returned when the resource does not exist.\x12\x06\n\x04\x9a\x02\x01\x07R<\n\x03\x35\x30\x30\x12\x35\n+Returned when there is an unexpected error.\x12\x06\n\x04\x9a\x02\x01\x07RW\n\x03\x35\x30\x33\x12P\nNServer is unavailable. Back off for 250ms and repeat request until successful.Z>\n<\n\napiKeyAuth\x12.\x08\x02\x12\x19JWT Authentication token.\x1a\rAuthorization \x02\x62\x06proto3"
16
+ descriptor_data = "\n io/core/a_rpc_certificates.proto\x12\x02io\x1a\x1cgoogle/api/annotations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1eio/common/common_objects.proto\x1a io/certificate/certificate.proto\x1a\x1aio/common/pagination.proto\x1a\x16io/common/filter.proto\x1a.protoc-gen-openapiv2/options/annotations.proto2\xab \n\x0c\x43\x65rtificates\x12\xdc\x01\n\x17getAppleCertificateData\x12\x16.io.PassTypeIdentifier\x1a\x13.io.CertificateData\"\x93\x01\x92\x41o\x12\x1aGet Apple pass certificate\x1aQGets the certificate data for certificate with Pass Type Identifier {passTypeId}.\x82\xd3\xe4\x93\x02\x1b\x12\x19/certificate/{passTypeId}\x12\xd5\x01\n\x1cgetCertificateSigningRequest\x12\x16.google.protobuf.Empty\x1a\x1d.io.CertificateSigningRequest\"~\x92\x41K\x12%Get CSR (Certificate Signing Request)\x1a\"Gets a CSR for the logged in user.\x82\xd3\xe4\x93\x02*\x12(/certificate/certificate_signing_request\x12\xa2\x01\n\x13\x61\x64\x64\x41ppleCertificate\x12\r.io.FileBytes\x1a\x13.io.CertificateData\"g\x92\x41;\x12\x15\x41\x64\x64 Apple certificate\x1a\"Uploads an Apple pass certificate.\x82\xd3\xe4\x93\x02#\"\x1e/certificate/apple_certificate:\x01*\x12\xbb\x01\n\x16updateAppleCertificate\x12\r.io.FileBytes\x1a\x13.io.CertificateData\"}\x92\x41Q\x12\x18Update Apple certificate\x1a\x35Updates or renews an existing Apple pass certificate.\x82\xd3\xe4\x93\x02#\x1a\x1e/certificate/apple_certificate:\x01*\x12\xbb\x01\n\x1flistAppleCertificatesDeprecated\x12\x0e.io.Pagination\x1a\x13.io.CertificateData\"q\x92\x41Y\x12)List Apple pass certificates [DEPRECATED]\x1a,Retrieves a users certificates [DEPRECATED].\x82\xd3\xe4\x93\x02\x0f\x12\r/certificates0\x01\x12\xa1\x01\n\x15listAppleCertificates\x12\x0b.io.Filters\x1a\x13.io.CertificateData\"d\x92\x41>\x12\x1cList Apple pass certificates\x1a\x1eRetrieves a users certificates\x82\xd3\xe4\x93\x02\x1d\"\x18/certificates/apple/list:\x01*0\x01\x12\xe0\x01\n countAppleCertificatesDeprecated\x12\x0e.io.Pagination\x1a\t.io.Count\"\xa0\x01\x92\x41\x81\x01\x12*Count Apple pass certificates [DEPRECATED]\x1aSRetrieves the total count of pass certificates for the logged in user [DEPRECATED].\x82\xd3\xe4\x93\x02\x15\x12\x13/certificates/count\x12\xc1\x01\n\x16\x63ountAppleCertificates\x12\x0b.io.Filters\x1a\t.io.Count\"\x8e\x01\x92\x41g\x12\x1d\x43ount Apple pass certificates\x1a\x46Retrieves the total count of pass certificates for the logged in user.\x82\xd3\xe4\x93\x02\x1e\"\x19/certificates/apple/count:\x01*\x12\xca\x03\n&createAppleCertificateRenewalAuthority\x12\x31.io.CreateAppleCertificateRenewalAuthorityRequest\x1a$.io.AppleCertificateRenewalAuthority\"\xc6\x02\x92\x41\x87\x02\x12*Create Apple Certificate Renewal Authority\x1aqCreates an Apple certificate renewal authority that can be used to automatically renew Apple Wallet certificates.J0\n\x03\x34\x30\x30\x12)\n\'There is a problem with the input data.J4\n\x03\x34\x30\x33\x12-\n+Returned when the user lacks authorization.\x82\xd3\xe4\x93\x02\x35\"0/certificate/apple_certificate_renewal_authority:\x01*\x12\x96\x03\n#getAppleCertificateRenewalAuthority\x12..io.GetAppleCertificateRenewalAuthorityRequest\x1a$.io.AppleCertificateRenewalAuthority\"\x98\x02\x92\x41\xd1\x01\x12\'Get Apple Certificate Renewal Authority\x1aPRetrieves the Apple certificate renewal authority identified by the supplied ID.J4\n\x03\x34\x30\x33\x12-\n+Returned when the user lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02=\x12;/certificate/apple_certificate_renewal_authority/{apiKeyId}\x12\xde\x03\n&updateAppleCertificateRenewalAuthority\x12\x31.io.UpdateAppleCertificateRenewalAuthorityRequest\x1a$.io.AppleCertificateRenewalAuthority\"\xda\x02\x92\x41\x9b\x02\x12*Update Apple Certificate Renewal Authority\x1a\x65Updates the Apple team ID and cross-account usage setting for an Apple certificate renewal authority.J0\n\x03\x34\x30\x30\x12)\n\'There is a problem with the input data.J4\n\x03\x34\x30\x33\x12-\n+Returned when the user lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02\x35\x1a\x30/certificate/apple_certificate_renewal_authority:\x01*\x12\xc8\x03\n&deleteAppleCertificateRenewalAuthority\x12..io.GetAppleCertificateRenewalAuthorityRequest\x1a\x32.io.DeleteAppleCertificateRenewalAuthorityResponse\"\xb9\x02\x92\x41\xf2\x01\x12*Delete Apple Certificate Renewal Authority\x1anDeletes an Apple certificate renewal authority so it can no longer be used to renew Apple Wallet certificates.J4\n\x03\x34\x30\x33\x12-\n+Returned when the user lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02=*;/certificate/apple_certificate_renewal_authority/{apiKeyId}\x12\xae\x03\n&listAppleCertificateRenewalAuthorities\x12\x31.io.ListAppleCertificateRenewalAuthoritiesRequest\x1a$.io.AppleCertificateRenewalAuthority\"\xa8\x02\x92\x41\xe2\x01\x12*List Apple Certificate Renewal Authorities\x1a~Lists Apple certificate renewal authorities available to the authenticated user, optionally filtered by the supplied criteria.J4\n\x03\x34\x30\x33\x12-\n+Returned when the user lacks authorization.\x82\xd3\xe4\x93\x02<\"7/certificate/apple_certificate_renewal_authorities/list:\x01*0\x01\x12\xb4\x02\n\x19sendNFCSigningCredentials\x12 .io.NFCSigningCredentialsRequest\x1a\x16.google.protobuf.Empty\"\xdc\x01\x92\x41\xab\x01\x12\x1cSend NFC signing credentials\x1a\x8a\x01Sends the NFC signing credentials for a certificate to the registered email address of the user. Only works with NFC enabled certificates.\x82\xd3\xe4\x93\x02\'\"\"/certificates/nfc/credentials/send:\x01*B\xc1\x06\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpc\x92\x41\xf6\x05\x12\xc3\x01\n\x18PassKit Certificates API\x12\x43\x41PI for managing Apple Wallet Pass Type Identifiers & Certificates.\x1a https://passkit.com/legal/terms/\"@\n\x0fPassKit Support\x12\x18https://help.passkit.com\x1a\x13support@passkit.com*\x01\x02\x32\x10\x61pplication/json:\x10\x61pplication/jsonR9\n\x03\x32\x30\x30\x12\x32\n(Returned when the request is successful.\x12\x06\n\x04\x9a\x02\x01\x07R4\n\x03\x34\x30\x30\x12-\n+Returned when wrong user input is provided.R0\n\x03\x34\x30\x31\x12)\n\'Returned when the user is unauthorized.RP\n\x03\x34\x30\x33\x12I\nGReturned when the user does not have permission to access the resource.R;\n\x03\x34\x30\x34\x12\x34\n*Returned when the resource does not exist.\x12\x06\n\x04\x9a\x02\x01\x07R<\n\x03\x35\x30\x30\x12\x35\n+Returned when there is an unexpected error.\x12\x06\n\x04\x9a\x02\x01\x07RW\n\x03\x35\x30\x33\x12P\nNServer is unavailable. Back off for 250ms and repeat request until successful.Z>\n<\n\napiKeyAuth\x12.\x08\x02\x12\x19JWT Authentication token.\x1a\rAuthorization \x02\x62\x06proto3"
16
17
 
17
- pool = Google::Protobuf::DescriptorPool.generated_pool
18
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
18
19
  pool.add_serialized_file(descriptor_data)
19
20
 
20
21
  module Io
@@ -6,6 +6,7 @@ require 'io/core/a_rpc_certificates_pb'
6
6
 
7
7
  module Io
8
8
  module Certificates
9
+ # Manage your Apple Wallet Pass Type Identifiers & Certificates
9
10
  class Service
10
11
 
11
12
  include ::GRPC::GenericService
@@ -14,14 +15,33 @@ module Io
14
15
  self.unmarshal_class_method = :decode
15
16
  self.service_name = 'io.Certificates'
16
17
 
18
+ # Retrieves the Apple pass certificate data for the provided Pass Type Identifier. Required Fields: passTypeId.
17
19
  rpc :getAppleCertificateData, ::Io::PassTypeIdentifier, ::Io::CertificateData
20
+ # Retrieves a Certificate Signing Request (CSR) for the logged-in user. This is used to generate a new certificate on the Apple Developer portal.
18
21
  rpc :getCertificateSigningRequest, ::Google::Protobuf::Empty, ::Io::CertificateSigningRequest
22
+ # Uploads a new Apple certificate for use with Wallet passes. Required Field: fileBytes.
19
23
  rpc :addAppleCertificate, ::Io::FileBytes, ::Io::CertificateData
24
+ # Updates or renews an existing Apple certificate by uploading a new one. Required Fields: fileBytes.
20
25
  rpc :updateAppleCertificate, ::Io::FileBytes, ::Io::CertificateData
26
+ # [DEPRECATED] Returns a paginated list of Apple pass certificates for the current user. Required Fields: pagination fields.
21
27
  rpc :listAppleCertificatesDeprecated, ::Io::Pagination, stream(::Io::CertificateData)
28
+ # Returns a filtered list of Apple pass certificates for the current user. Required Fields: Filters.
22
29
  rpc :listAppleCertificates, ::Io::Filters, stream(::Io::CertificateData)
30
+ # [DEPRECATED] Returns the count of Apple certificates for the current user based on pagination criteria. Required fields: pagination fields.
23
31
  rpc :countAppleCertificatesDeprecated, ::Io::Pagination, ::Io::Count
32
+ # Returns the count of Apple certificates for the current user using filter criteria. Required Fields: Filters (can be empty, but must be present)
24
33
  rpc :countAppleCertificates, ::Io::Filters, ::Io::Count
34
+ # Creates an Apple certificate renewal authority for the authenticated user.
35
+ rpc :createAppleCertificateRenewalAuthority, ::Io::CreateAppleCertificateRenewalAuthorityRequest, ::Io::AppleCertificateRenewalAuthority
36
+ # Retrieves an Apple certificate renewal authority by ID.
37
+ rpc :getAppleCertificateRenewalAuthority, ::Io::GetAppleCertificateRenewalAuthorityRequest, ::Io::AppleCertificateRenewalAuthority
38
+ # Updates an Apple certificate renewal authority.
39
+ rpc :updateAppleCertificateRenewalAuthority, ::Io::UpdateAppleCertificateRenewalAuthorityRequest, ::Io::AppleCertificateRenewalAuthority
40
+ # Deletes an Apple certificate renewal authority.
41
+ rpc :deleteAppleCertificateRenewalAuthority, ::Io::GetAppleCertificateRenewalAuthorityRequest, ::Io::DeleteAppleCertificateRenewalAuthorityResponse
42
+ # Lists Apple certificate renewal authorities visible to the authenticated user.
43
+ rpc :listAppleCertificateRenewalAuthorities, ::Io::ListAppleCertificateRenewalAuthoritiesRequest, stream(::Io::AppleCertificateRenewalAuthority)
44
+ # Sends NFC signing credentials for an NFC-enabled Apple certificate to the user's registered email address. Required Fields: certificateId, user email must be associated with the cert.
25
45
  rpc :sendNFCSigningCredentials, ::Io::NFCSigningCredentialsRequest, ::Google::Protobuf::Empty
26
46
  end
27
47
 
@@ -3,16 +3,18 @@
3
3
  # source: io/core/a_rpc_distribution.proto
4
4
 
5
5
  require 'google/protobuf'
6
+ require 'protoc-gen-openapiv2/options/annotations_pb'
6
7
 
7
8
  require 'google/api/annotations_pb'
8
9
  require 'google/protobuf/empty_pb'
9
10
  require 'io/common/common_objects_pb'
10
11
  require 'io/common/distribution_pb'
12
+ require 'io/common/message_pb'
11
13
 
12
14
 
13
- descriptor_data = "\n io/core/a_rpc_distribution.proto\x12\x02io\x1a\x1cgoogle/api/annotations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1eio/common/common_objects.proto\x1a\x1cio/common/distribution.proto2\xa2\r\n\x0c\x44istribution\x12\xaf\x01\n\x10sendWelcomeEmail\x12\x1c.io.EmailDistributionRequest\x1a\x16.google.protobuf.Empty\"e\x92\x41\x44\x12\x12Send Welcome Email\x1a.Sends a welcome email to an individual record.\x82\xd3\xe4\x93\x02\x18\"\x13/distribution/email:\x01*\x12\xdd\x01\n\x10getSmartPassLink\x12\x18.io.SmartPassLinkRequest\x1a\x07.io.Url\"\xa5\x01\x92\x41|\x12\x12Get SmartPass Link\x1a\x66Get SmartPass returns encrypted SmartPass link based on a pass payload for a member, coupon or ticket.\x82\xd3\xe4\x93\x02 \"\x1b/distribution/smartpasslink:\x01*\x12\xc5\x02\n\x1bgetDataCollectionPageFields\x12\x14.io.ClassObjectInput\x1a\x18.io.DataCollectionFields\"\xf5\x01\x92\x41\xd5\x01\x12\x1fGet Data Collection Page Fields\x1anRetrieves a list of fields used on the data collection page. ClassId is required only for the Member protocol.J\"\n\x03\x34\x30\x33\x12\x1b\n\x19User lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02\x16\x12\x14/distribution/fields\x12\x98\x02\n\x12uploadSmartPassCsv\x12\x1d.io.SmartPassCsvUploadRequest\x1a\x16.google.protobuf.Empty\"\xca\x01\x92\x41\xa4\x01\x12\x14Upload SmartPass Csv\x1a\x8b\x01Upload SmartPass Csv sends a projects short code and file bytes to be processed. Processed file will be sent to the users registered email.\x82\xd3\xe4\x93\x02\x1c\"\x17/distribution/smartpass:\x01*\x12\xdf\x01\n\x11importProtocolCsv\x12\x19.io.ImportProtocolRequest\x1a\x16.google.protobuf.Empty\"\x96\x01\x92\x41p\x12\x13Import Protocol Csv\x1aYImport protocol csv takes a formatted CSV and creates billable protocol specific records.\x82\xd3\xe4\x93\x02\x1d\"\x18/distribution/csv-import:\x01*\x12\xba\x03\n\x0fvalidateBarcode\x12\x0b.io.Payload\x1a\x0b.io.Payload\"\x8c\x03\x92\x41\xe0\x02\x12\x10Validate Barcode\x1a\xb8\x01Validate a TOTP barcode. Send the full barcode format {{payload}}||{{key}||{{timestamp}}||{{totp}}. If TOTP is valid and recent, the barcode payload without TOTP data will be returned.JL\n\x03\x34\x30\x30\x12\x45\nCBarcode payload provided was not in a format recognized by PassKit.JC\n\x03\x34\x30\x31\x12<\n:The barcode TOTP was not valid and should not be accepted.\x82\xd3\xe4\x93\x02\"\"\x1d/distribution/validateBarcode:\x01*B\x81\x07\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpc\x92\x41\xb6\x06\x12\xf1\x01\n\x18PassKit Distribution API\x12ZAPI for generating SmartPass links and distribution of your passes via different channels.\x1a\x38https://passkit.com/legal/terms-of-subscription-service/\"?\n\x0fPassKit Support\x12\x17https://docs.passkit.io\x1a\x13support@passkit.com*\x01\x02\x32\x10\x61pplication/json:\x10\x61pplication/jsonR9\n\x03\x32\x30\x30\x12\x32\n(Returned when the request is successful.\x12\x06\n\x04\x9a\x02\x01\x07R4\n\x03\x34\x30\x30\x12-\n+Returned when wrong user input is provided.R0\n\x03\x34\x30\x31\x12)\n\'Returned when the user is unauthorized.RP\n\x03\x34\x30\x33\x12I\nGReturned when the user does not have permission to access the resource.R;\n\x03\x34\x30\x34\x12\x34\n*Returned when the resource does not exist.\x12\x06\n\x04\x9a\x02\x01\x07R<\n\x03\x35\x30\x30\x12\x35\n+Returned when there is an unexpected error.\x12\x06\n\x04\x9a\x02\x01\x07RW\n\x03\x35\x30\x33\x12P\nNServer is unavailable. Back off for 250ms and repeat request until successful.Z>\n<\n\napiKeyAuth\x12.\x08\x02\x12\x19JWT Authentication token.\x1a\rAuthorization \x02\x62\x10\n\x0e\n\napiKeyAuth\x12\x00\x62\x06proto3"
15
+ descriptor_data = "\n io/core/a_rpc_distribution.proto\x12\x02io\x1a\x1cgoogle/api/annotations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1eio/common/common_objects.proto\x1a\x1cio/common/distribution.proto\x1a\x17io/common/message.proto2\xf7\x14\n\x0c\x44istribution\x12\xaf\x01\n\x10sendWelcomeEmail\x12\x1c.io.EmailDistributionRequest\x1a\x16.google.protobuf.Empty\"e\x92\x41\x44\x12\x12Send Welcome Email\x1a.Sends a welcome email to an individual record.\x82\xd3\xe4\x93\x02\x18\"\x13/distribution/email:\x01*\x12\xdd\x01\n\x10getSmartPassLink\x12\x18.io.SmartPassLinkRequest\x1a\x07.io.Url\"\xa5\x01\x92\x41|\x12\x12Get SmartPass Link\x1a\x66Get SmartPass returns encrypted SmartPass link based on a pass payload for a member, coupon or ticket.\x82\xd3\xe4\x93\x02 \"\x1b/distribution/smartpasslink:\x01*\x12\xc5\x02\n\x1bgetDataCollectionPageFields\x12\x14.io.ClassObjectInput\x1a\x18.io.DataCollectionFields\"\xf5\x01\x92\x41\xd5\x01\x12\x1fGet Data Collection Page Fields\x1anRetrieves a list of fields used on the data collection page. ClassId is required only for the Member protocol.J\"\n\x03\x34\x30\x33\x12\x1b\n\x19User lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02\x16\x12\x14/distribution/fields\x12\x98\x02\n\x12uploadSmartPassCsv\x12\x1d.io.SmartPassCsvUploadRequest\x1a\x16.google.protobuf.Empty\"\xca\x01\x92\x41\xa4\x01\x12\x14Upload SmartPass Csv\x1a\x8b\x01Upload SmartPass Csv sends a projects short code and file bytes to be processed. Processed file will be sent to the users registered email.\x82\xd3\xe4\x93\x02\x1c\"\x17/distribution/smartpass:\x01*\x12\xdf\x01\n\x11importProtocolCsv\x12\x19.io.ImportProtocolRequest\x1a\x16.google.protobuf.Empty\"\x96\x01\x92\x41p\x12\x13Import Protocol Csv\x1aYImport protocol csv takes a formatted CSV and creates billable protocol specific records.\x82\xd3\xe4\x93\x02\x1d\"\x18/distribution/csv-import:\x01*\x12\xba\x03\n\x0fvalidateBarcode\x12\x0b.io.Payload\x1a\x0b.io.Payload\"\x8c\x03\x92\x41\xe0\x02\x12\x10Validate Barcode\x1a\xb8\x01Validate a TOTP barcode. Send the full barcode format {{payload}}||{{key}||{{timestamp}}||{{totp}}. If TOTP is valid and recent, the barcode payload without TOTP data will be returned.JL\n\x03\x34\x30\x30\x12\x45\nCBarcode payload provided was not in a format recognized by PassKit.JC\n\x03\x34\x30\x31\x12<\n:The barcode TOTP was not valid and should not be accepted.\x82\xd3\xe4\x93\x02\"\"\x1d/distribution/validateBarcode:\x01*\x12\xd4\x01\n\naddMessage\x12\x0b.io.Message\x1a\x16.google.protobuf.Empty\"\xa0\x01\x92\x41}\x12\x0b\x41\x64\x64 message\x1anRetrieves a list of fields used on the data collection page. ClassId is required only for the Member protocol.\x82\xd3\xe4\x93\x02\x1a\"\x15/distribution/message:\x01*\x12k\n\ngetMessage\x12\x06.io.Id\x1a\x0b.io.Message\"H\x92\x41#\x12\x0bGet message\x1a\x14Retrieves a message.\x82\xd3\xe4\x93\x02\x1c\x12\x1a/distribution/message/{id}\x12\xd5\x01\n\x0bgetMessages\x12\x16.google.protobuf.Empty\x1a\x0b.io.Message\"\x9e\x01\x92\x41}\x12\x0b\x41\x64\x64 message\x1anRetrieves a list of fields used on the data collection page. ClassId is required only for the Member protocol.\x82\xd3\xe4\x93\x02\x18\x12\x16/distribution/messages0\x01\x12\xdb\x01\n\rupdateMessage\x12\x0b.io.Message\x1a\x16.google.protobuf.Empty\"\xa4\x01\x92\x41\x80\x01\x12\x0eUpdate message\x1anRetrieves a list of fields used on the data collection page. ClassId is required only for the Member protocol.\x82\xd3\xe4\x93\x02\x1a\x1a\x15/distribution/message:\x01*\x12\xd8\x01\n\rcancelMessage\x12\x06.io.Id\x1a\x16.google.protobuf.Empty\"\xa6\x01\x92\x41\x80\x01\x12\x0e\x43\x61ncel message\x1anRetrieves a list of fields used on the data collection page. ClassId is required only for the Member protocol.\x82\xd3\xe4\x93\x02\x1c*\x1a/distribution/message/{id}B\xea\x06\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpc\x92\x41\x9f\x06\x12\xda\x01\n\x18PassKit Distribution API\x12ZAPI for generating SmartPass links and distribution of your passes via different channels.\x1a https://passkit.com/legal/terms/\"@\n\x0fPassKit Support\x12\x18https://help.passkit.com\x1a\x13support@passkit.com*\x01\x02\x32\x10\x61pplication/json:\x10\x61pplication/jsonR9\n\x03\x32\x30\x30\x12\x32\n(Returned when the request is successful.\x12\x06\n\x04\x9a\x02\x01\x07R4\n\x03\x34\x30\x30\x12-\n+Returned when wrong user input is provided.R0\n\x03\x34\x30\x31\x12)\n\'Returned when the user is unauthorized.RP\n\x03\x34\x30\x33\x12I\nGReturned when the user does not have permission to access the resource.R;\n\x03\x34\x30\x34\x12\x34\n*Returned when the resource does not exist.\x12\x06\n\x04\x9a\x02\x01\x07R<\n\x03\x35\x30\x30\x12\x35\n+Returned when there is an unexpected error.\x12\x06\n\x04\x9a\x02\x01\x07RW\n\x03\x35\x30\x33\x12P\nNServer is unavailable. Back off for 250ms and repeat request until successful.Z>\n<\n\napiKeyAuth\x12.\x08\x02\x12\x19JWT Authentication token.\x1a\rAuthorization \x02\x62\x10\n\x0e\n\napiKeyAuth\x12\x00\x62\x06proto3"
14
16
 
15
- pool = Google::Protobuf::DescriptorPool.generated_pool
17
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
16
18
  pool.add_serialized_file(descriptor_data)
17
19
 
18
20
  module Io
@@ -6,6 +6,7 @@ require 'io/core/a_rpc_distribution_pb'
6
6
 
7
7
  module Io
8
8
  module Distribution
9
+ # The PassKit Distribution API allows you to create SmartPass links and manage the distribution of digital passes to your customers via email.
9
10
  class Service
10
11
 
11
12
  include ::GRPC::GenericService
@@ -14,12 +15,23 @@ module Io
14
15
  self.unmarshal_class_method = :decode
15
16
  self.service_name = 'io.Distribution'
16
17
 
18
+ # Sends a welcome email to a single recipient using a valid pass protocol (e.g., membership, coupon, ticket). Required Fields: passId or externalId, classId, protocol.
17
19
  rpc :sendWelcomeEmail, ::Io::EmailDistributionRequest, ::Google::Protobuf::Empty
20
+ # Generates and returns an encrypted SmartPass link for a member, coupon, or event ticket based on the request payload. Required Fields: passId or externalId, classId.
18
21
  rpc :getSmartPassLink, ::Io::SmartPassLinkRequest, ::Io::Url
22
+ # Returns a list of fields to be displayed on the data collection page. For the Member protocol, classId is required. Required Fields: classId (only for MEMBERSHIP protocol)
19
23
  rpc :getDataCollectionPageFields, ::Io::ClassObjectInput, ::Io::DataCollectionFields
24
+ # Accepts a CSV file containing user data and a project short code, processes SmartPass creation, and sends results to the user via email. Required Fields: shortCode, csv contents.
20
25
  rpc :uploadSmartPassCsv, ::Io::SmartPassCsvUploadRequest, ::Google::Protobuf::Empty
26
+ # Imports and processes a formatted CSV file for a given protocol (e.g., member, coupon) and creates billable records. Required: classId, protocol, and valid csv contents.
21
27
  rpc :importProtocolCsv, ::Io::ImportProtocolRequest, ::Google::Protobuf::Empty
28
+ # Validates a time-based one-time password (TOTP) barcode string in the format {{payload}}||{{key}}||{{timestamp}}||{{totp}}. If valid, returns the cleaned payload without TOTP metadata. Required Fields: payload.
22
29
  rpc :validateBarcode, ::Io::Payload, ::Io::Payload
30
+ rpc :addMessage, ::Io::Message, ::Google::Protobuf::Empty
31
+ rpc :getMessage, ::Io::Id, ::Io::Message
32
+ rpc :getMessages, ::Google::Protobuf::Empty, stream(::Io::Message)
33
+ rpc :updateMessage, ::Io::Message, ::Google::Protobuf::Empty
34
+ rpc :cancelMessage, ::Io::Id, ::Google::Protobuf::Empty
23
35
  end
24
36
 
25
37
  Stub = Service.rpc_stub_class
@@ -3,6 +3,7 @@
3
3
  # source: io/core/a_rpc_images.proto
4
4
 
5
5
  require 'google/protobuf'
6
+ require 'protoc-gen-openapiv2/options/annotations_pb'
6
7
 
7
8
  require 'google/api/annotations_pb'
8
9
  require 'google/protobuf/empty_pb'
@@ -12,9 +13,9 @@ require 'io/image/image_pb'
12
13
  require 'io/common/filter_pb'
13
14
 
14
15
 
15
- descriptor_data = "\n\x1aio/core/a_rpc_images.proto\x12\x02io\x1a\x1cgoogle/api/annotations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1eio/common/common_objects.proto\x1a\x1aio/common/pagination.proto\x1a\x14io/image/image.proto\x1a\x16io/common/filter.proto2\xc4\x1b\n\x06Images\x12\xa0\x01\n\x0fsetProfileImage\x12\x15.io.ProfileImageInput\x1a\x16.google.protobuf.Empty\"^\x92\x41\x42\x12\x11Set profile image\x1a-Set the profile image for the logged in user.\x82\xd3\xe4\x93\x02\x13\"\x0e/image/profile:\x01*\x12\x94\x01\n\x0fgetProfileImage\x12\x16.google.protobuf.Empty\x1a\x07.io.Url\"`\x92\x41G\x12\x11Get profile image\x1a\x32Gets the profile image URL for the logged in user.\x82\xd3\xe4\x93\x02\x10\x12\x0e/image/profile\x12o\n\x0c\x63reateImages\x12\x14.io.CreateImageInput\x1a\x0c.io.ImageIds\";\x92\x41&\x12\rCreate Images\x1a\x15\x43reates image record.\x82\xd3\xe4\x93\x02\x0c\"\x07/images:\x01*\x12r\n\x0bupdateImage\x12\x14.io.UpdateImageInput\x1a\x0f.io.ImageRecord\"<\x92\x41(\x12\x0cUpdate Image\x1a\x18Updates an image record.\x82\xd3\xe4\x93\x02\x0b\x1a\x06/image:\x01*\x12^\n\x0bgetImageURL\x12\x06.io.Id\x1a\x07.io.Url\">\x92\x41(\x12\rGet Image URL\x1a\x17Retrieves an image url.\x82\xd3\xe4\x93\x02\r\x12\x0b/image/{id}\x12\xf1\x01\n\x10getStampImageURL\x12\x15.io.StampImageRequest\x1a\x07.io.Url\"\xbc\x01\x92\x41\x96\x01\x12\x13Get Stamp Image URL\x1a;Retrieves a stamp image url with the supplied stamp status.J\"\n\x03\x34\x30\x33\x12\x1b\n\x19User lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02\x1c\x12\x1a/image/stamp/{id}/{status}\x12\x85\x01\n\x13getStampImageConfig\x12\x06.io.Id\x1a\x14.io.StampImageConfig\"P\x92\x41-\x12\x10Get Stamp Config\x1a\x19Retrieves a stamp config.\x82\xd3\xe4\x93\x02\x1a\x12\x18/image/stamp/config/{id}\x12\x96\x01\n\x16updateStampImageConfig\x12\x14.io.StampImageConfig\x1a\x06.io.Id\"^\x92\x41=\x12\x13Update Stamp Config\x1a&Updates a provided stamp image config.\x82\xd3\xe4\x93\x02\x18\x1a\x13/image/stamp/config:\x01*\x12\xc0\x01\n\x14getStampImagePreview\x12\x1c.io.StampImagePreviewRequest\x1a\x15.io.StampImagePreview\"s\x92\x41Q\x12\x17Get Stamp Image Preview\x1a\x36Gets a preview image of the provided stampImageConfig.\x82\xd3\xe4\x93\x02\x19\"\x14/image/stamp/preview:\x01*\x12\x9a\x01\n\x14getLocalizedImageURL\x12\x17.io.LocalizedImageInput\x1a\x07.io.Url\"`\x92\x41;\x12\x17Get Localized Image URL\x1a Retrieves a localized image URL.\x82\xd3\xe4\x93\x02\x1c\x12\x1a/image/{id}/{languageCode}\x12\x43\n\x13getProfileImageById\x12\x06.io.Id\x1a\x07.io.Url\"\x1b\x82\xd3\xe4\x93\x02\x15\x12\x13/image/profile/{id}\x12v\n\x0egetImageBundle\x12\x06.io.Id\x1a\x0f.io.ImageBundle\"K\x92\x41.\x12\x10Get Image Bundle\x1a\x1aRetrieves an image bundle.\x82\xd3\xe4\x93\x02\x14\x12\x12/image/bundle/{id}\x12p\n\x0cgetImageData\x12\x06.io.Id\x1a\x0f.io.ImageRecord\"G\x92\x41,\x12\x0eGet Image Data\x1a\x1aRetrieves an image record.\x82\xd3\xe4\x93\x02\x12\x12\x10/image/data/{id}\x12l\n\x0b\x64\x65leteImage\x12\x06.io.Id\x1a\x16.google.protobuf.Empty\"=\x92\x41\'\x12\x0c\x44\x65lete Image\x1a\x17\x44\x65letes an image record\x82\xd3\xe4\x93\x02\r*\x0b/image/{id}\x12\xa1\x01\n\x14\x64\x65leteLocalizedImage\x12\x17.io.LocalizedImageInput\x1a\x0f.io.ImageRecord\"_\x92\x41:\x12\x16\x44\x65lete Localized Image\x1a Deletes a localized image record\x82\xd3\xe4\x93\x02\x1c*\x1a/image/{id}/{languageCode}\x12\xa7\x01\n\x1blistImagesForUserDeprecated\x12\x0e.io.Pagination\x1a\x0f.io.ImageRecord\"e\x92\x41N\x12\x17Get All Images For User\x1a\x33Retrieves all images stored under the user account.\x82\xd3\xe4\x93\x02\x0e\x12\x0c/images/user0\x01\x12\xa2\x01\n\x11listImagesForUser\x12\x0b.io.Filters\x1a\x0f.io.ImageRecord\"m\x92\x41N\x12\x17Get All Images For User\x1a\x33Retrieves all images stored under the user account.\x82\xd3\xe4\x93\x02\x16\"\x11/images/user/list:\x01*0\x01\x12\x97\x01\n\x14listImagesDeprecated\x12\x0e.io.Pagination\x1a\x0f.io.ImageRecord\"\\\x92\x41J\x12\x18Get All Available Images\x1a.Retrieves all images stored under the company.\x82\xd3\xe4\x93\x02\t\x12\x07/images0\x01\x12\x92\x01\n\nlistImages\x12\x0b.io.Filters\x1a\x0f.io.ImageRecord\"d\x92\x41J\x12\x18Get All Available Images\x1a.Retrieves all images stored under the company.\x82\xd3\xe4\x93\x02\x11\"\x0c/images/list:\x01*0\x01\x12\xb2\x01\n\x15\x63ountImagesDeprecated\x12\x0e.io.Pagination\x1a\t.io.Count\"~\x92\x41\x66\x12&Count All Images Available to The User\x1a<Retrieves a count of images stored under the user\'s company.\x82\xd3\xe4\x93\x02\x0f\x12\r/images/count\x12\xa9\x01\n\x0b\x63ountImages\x12\x0b.io.Filters\x1a\t.io.Count\"\x81\x01\x92\x41\x66\x12&Count All Images Available to The User\x1a<Retrieves a count of images stored under the user\'s company.\x82\xd3\xe4\x93\x02\x12\"\r/images/count:\x01*\x12\xf9\x01\n\x1c\x63ountImagesForUserDeprecated\x12\x0e.io.Pagination\x1a\t.io.Count\"\xbd\x01\x92\x41\x9f\x01\x12\"Count All Images Owned by The User\x1a\x35Retrieves all images stored under the user\'s account.J\"\n\x03\x34\x30\x33\x12\x1b\n\x19User lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02\x14\x12\x12/images/user/count\x12\xa9\x01\n\x12\x63ountImagesForUser\x12\x0b.io.Filters\x1a\t.io.Count\"{\x92\x41[\x12\"Count All Images Owned by The User\x1a\x35Retrieves all images stored under the user\'s account.\x82\xd3\xe4\x93\x02\x17\"\x12/images/user/count:\x01*B\xe4\x06\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpc\x92\x41\x99\x06\x12\xd4\x01\n\x12PassKit Images API\x12\x43\x41PI for managing image assets for Pass Templates & Wallet Projects.\x1a\x38https://passkit.com/legal/terms-of-subscription-service/\"?\n\x0fPassKit Support\x12\x17https://docs.passkit.io\x1a\x13support@passkit.com*\x01\x02\x32\x10\x61pplication/json:\x10\x61pplication/jsonR9\n\x03\x32\x30\x30\x12\x32\n(Returned when the request is successful.\x12\x06\n\x04\x9a\x02\x01\x07R4\n\x03\x34\x30\x30\x12-\n+Returned when wrong user input is provided.R0\n\x03\x34\x30\x31\x12)\n\'Returned when the user is unauthorized.RP\n\x03\x34\x30\x33\x12I\nGReturned when the user does not have permission to access the resource.R;\n\x03\x34\x30\x34\x12\x34\n*Returned when the resource does not exist.\x12\x06\n\x04\x9a\x02\x01\x07R<\n\x03\x35\x30\x30\x12\x35\n+Returned when there is an unexpected error.\x12\x06\n\x04\x9a\x02\x01\x07RW\n\x03\x35\x30\x33\x12P\nNServer is unavailable. Back off for 250ms and repeat request until successful.Z>\n<\n\napiKeyAuth\x12.\x08\x02\x12\x19JWT Authentication token.\x1a\rAuthorization \x02\x62\x10\n\x0e\n\napiKeyAuth\x12\x00\x62\x06proto3"
16
+ descriptor_data = "\n\x1aio/core/a_rpc_images.proto\x12\x02io\x1a\x1cgoogle/api/annotations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1eio/common/common_objects.proto\x1a\x1aio/common/pagination.proto\x1a\x14io/image/image.proto\x1a\x16io/common/filter.proto2\xc4\x1b\n\x06Images\x12\xa0\x01\n\x0fsetProfileImage\x12\x15.io.ProfileImageInput\x1a\x16.google.protobuf.Empty\"^\x92\x41\x42\x12\x11Set profile image\x1a-Set the profile image for the logged in user.\x82\xd3\xe4\x93\x02\x13\"\x0e/image/profile:\x01*\x12\x94\x01\n\x0fgetProfileImage\x12\x16.google.protobuf.Empty\x1a\x07.io.Url\"`\x92\x41G\x12\x11Get profile image\x1a\x32Gets the profile image URL for the logged in user.\x82\xd3\xe4\x93\x02\x10\x12\x0e/image/profile\x12o\n\x0c\x63reateImages\x12\x14.io.CreateImageInput\x1a\x0c.io.ImageIds\";\x92\x41&\x12\rCreate Images\x1a\x15\x43reates image record.\x82\xd3\xe4\x93\x02\x0c\"\x07/images:\x01*\x12r\n\x0bupdateImage\x12\x14.io.UpdateImageInput\x1a\x0f.io.ImageRecord\"<\x92\x41(\x12\x0cUpdate Image\x1a\x18Updates an image record.\x82\xd3\xe4\x93\x02\x0b\x1a\x06/image:\x01*\x12^\n\x0bgetImageURL\x12\x06.io.Id\x1a\x07.io.Url\">\x92\x41(\x12\rGet Image URL\x1a\x17Retrieves an image url.\x82\xd3\xe4\x93\x02\r\x12\x0b/image/{id}\x12\xf1\x01\n\x10getStampImageURL\x12\x15.io.StampImageRequest\x1a\x07.io.Url\"\xbc\x01\x92\x41\x96\x01\x12\x13Get Stamp Image URL\x1a;Retrieves a stamp image url with the supplied stamp status.J\"\n\x03\x34\x30\x33\x12\x1b\n\x19User lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02\x1c\x12\x1a/image/stamp/{id}/{status}\x12\x85\x01\n\x13getStampImageConfig\x12\x06.io.Id\x1a\x14.io.StampImageConfig\"P\x92\x41-\x12\x10Get Stamp Config\x1a\x19Retrieves a stamp config.\x82\xd3\xe4\x93\x02\x1a\x12\x18/image/stamp/config/{id}\x12\x96\x01\n\x16updateStampImageConfig\x12\x14.io.StampImageConfig\x1a\x06.io.Id\"^\x92\x41=\x12\x13Update Stamp Config\x1a&Updates a provided stamp image config.\x82\xd3\xe4\x93\x02\x18\x1a\x13/image/stamp/config:\x01*\x12\xc0\x01\n\x14getStampImagePreview\x12\x1c.io.StampImagePreviewRequest\x1a\x15.io.StampImagePreview\"s\x92\x41Q\x12\x17Get Stamp Image Preview\x1a\x36Gets a preview image of the provided stampImageConfig.\x82\xd3\xe4\x93\x02\x19\"\x14/image/stamp/preview:\x01*\x12\x9a\x01\n\x14getLocalizedImageURL\x12\x17.io.LocalizedImageInput\x1a\x07.io.Url\"`\x92\x41;\x12\x17Get Localized Image URL\x1a Retrieves a localized image URL.\x82\xd3\xe4\x93\x02\x1c\x12\x1a/image/{id}/{languageCode}\x12\x43\n\x13getProfileImageById\x12\x06.io.Id\x1a\x07.io.Url\"\x1b\x82\xd3\xe4\x93\x02\x15\x12\x13/image/profile/{id}\x12v\n\x0egetImageBundle\x12\x06.io.Id\x1a\x0f.io.ImageBundle\"K\x92\x41.\x12\x10Get Image Bundle\x1a\x1aRetrieves an image bundle.\x82\xd3\xe4\x93\x02\x14\x12\x12/image/bundle/{id}\x12p\n\x0cgetImageData\x12\x06.io.Id\x1a\x0f.io.ImageRecord\"G\x92\x41,\x12\x0eGet Image Data\x1a\x1aRetrieves an image record.\x82\xd3\xe4\x93\x02\x12\x12\x10/image/data/{id}\x12l\n\x0b\x64\x65leteImage\x12\x06.io.Id\x1a\x16.google.protobuf.Empty\"=\x92\x41\'\x12\x0c\x44\x65lete Image\x1a\x17\x44\x65letes an image record\x82\xd3\xe4\x93\x02\r*\x0b/image/{id}\x12\xa1\x01\n\x14\x64\x65leteLocalizedImage\x12\x17.io.LocalizedImageInput\x1a\x0f.io.ImageRecord\"_\x92\x41:\x12\x16\x44\x65lete Localized Image\x1a Deletes a localized image record\x82\xd3\xe4\x93\x02\x1c*\x1a/image/{id}/{languageCode}\x12\xa7\x01\n\x1blistImagesForUserDeprecated\x12\x0e.io.Pagination\x1a\x0f.io.ImageRecord\"e\x92\x41N\x12\x17Get All Images For User\x1a\x33Retrieves all images stored under the user account.\x82\xd3\xe4\x93\x02\x0e\x12\x0c/images/user0\x01\x12\xa2\x01\n\x11listImagesForUser\x12\x0b.io.Filters\x1a\x0f.io.ImageRecord\"m\x92\x41N\x12\x17Get All Images For User\x1a\x33Retrieves all images stored under the user account.\x82\xd3\xe4\x93\x02\x16\"\x11/images/user/list:\x01*0\x01\x12\x97\x01\n\x14listImagesDeprecated\x12\x0e.io.Pagination\x1a\x0f.io.ImageRecord\"\\\x92\x41J\x12\x18Get All Available Images\x1a.Retrieves all images stored under the company.\x82\xd3\xe4\x93\x02\t\x12\x07/images0\x01\x12\x92\x01\n\nlistImages\x12\x0b.io.Filters\x1a\x0f.io.ImageRecord\"d\x92\x41J\x12\x18Get All Available Images\x1a.Retrieves all images stored under the company.\x82\xd3\xe4\x93\x02\x11\"\x0c/images/list:\x01*0\x01\x12\xb2\x01\n\x15\x63ountImagesDeprecated\x12\x0e.io.Pagination\x1a\t.io.Count\"~\x92\x41\x66\x12&Count All Images Available to The User\x1a<Retrieves a count of images stored under the user\'s company.\x82\xd3\xe4\x93\x02\x0f\x12\r/images/count\x12\xa9\x01\n\x0b\x63ountImages\x12\x0b.io.Filters\x1a\t.io.Count\"\x81\x01\x92\x41\x66\x12&Count All Images Available to The User\x1a<Retrieves a count of images stored under the user\'s company.\x82\xd3\xe4\x93\x02\x12\"\r/images/count:\x01*\x12\xf9\x01\n\x1c\x63ountImagesForUserDeprecated\x12\x0e.io.Pagination\x1a\t.io.Count\"\xbd\x01\x92\x41\x9f\x01\x12\"Count All Images Owned by The User\x1a\x35Retrieves all images stored under the user\'s account.J\"\n\x03\x34\x30\x33\x12\x1b\n\x19User lacks authorization.J\x1e\n\x03\x34\x30\x34\x12\x17\n\x15Record was not found.\x82\xd3\xe4\x93\x02\x14\x12\x12/images/user/count\x12\xa9\x01\n\x12\x63ountImagesForUser\x12\x0b.io.Filters\x1a\t.io.Count\"{\x92\x41[\x12\"Count All Images Owned by The User\x1a\x35Retrieves all images stored under the user\'s account.\x82\xd3\xe4\x93\x02\x17\"\x12/images/user/count:\x01*B\xcd\x06\n\x10\x63om.passkit.grpcZ$stash.passkit.com/io/model/sdk/go/io\xaa\x02\x0cPassKit.Grpc\x92\x41\x82\x06\x12\xbd\x01\n\x12PassKit Images API\x12\x43\x41PI for managing image assets for Pass Templates & Wallet Projects.\x1a https://passkit.com/legal/terms/\"@\n\x0fPassKit Support\x12\x18https://help.passkit.com\x1a\x13support@passkit.com*\x01\x02\x32\x10\x61pplication/json:\x10\x61pplication/jsonR9\n\x03\x32\x30\x30\x12\x32\n(Returned when the request is successful.\x12\x06\n\x04\x9a\x02\x01\x07R4\n\x03\x34\x30\x30\x12-\n+Returned when wrong user input is provided.R0\n\x03\x34\x30\x31\x12)\n\'Returned when the user is unauthorized.RP\n\x03\x34\x30\x33\x12I\nGReturned when the user does not have permission to access the resource.R;\n\x03\x34\x30\x34\x12\x34\n*Returned when the resource does not exist.\x12\x06\n\x04\x9a\x02\x01\x07R<\n\x03\x35\x30\x30\x12\x35\n+Returned when there is an unexpected error.\x12\x06\n\x04\x9a\x02\x01\x07RW\n\x03\x35\x30\x33\x12P\nNServer is unavailable. Back off for 250ms and repeat request until successful.Z>\n<\n\napiKeyAuth\x12.\x08\x02\x12\x19JWT Authentication token.\x1a\rAuthorization \x02\x62\x10\n\x0e\n\napiKeyAuth\x12\x00\x62\x06proto3"
16
17
 
17
- pool = Google::Protobuf::DescriptorPool.generated_pool
18
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
18
19
  pool.add_serialized_file(descriptor_data)
19
20
 
20
21
  module Io
@@ -6,6 +6,7 @@ require 'io/core/a_rpc_images_pb'
6
6
 
7
7
  module Io
8
8
  module Images
9
+ # The PassKit Images API lets you manage your image assets for Apple Wallet, Google Wallet and the data collection pages.
9
10
  class Service
10
11
 
11
12
  include ::GRPC::GenericService
@@ -14,29 +15,51 @@ module Io
14
15
  self.unmarshal_class_method = :decode
15
16
  self.service_name = 'io.Images'
16
17
 
18
+ # Set the profile image for the logged in user. Required Fields: imageData.
17
19
  rpc :setProfileImage, ::Io::ProfileImageInput, ::Google::Protobuf::Empty
20
+ # Get the profile image URL for the logged in user.
18
21
  rpc :getProfileImage, ::Google::Protobuf::Empty, ::Io::Url
22
+ # Creates one or more images. Image data is provided in base64. Required Fields: name, imageData.
19
23
  rpc :createImages, ::Io::CreateImageInput, ::Io::ImageIds
24
+ # Updates an image record's metadata. Required Fields: id.
20
25
  rpc :updateImage, ::Io::UpdateImageInput, ::Io::ImageRecord
26
+ # Retrieves an image URL by its ID. Required Fields: id.
21
27
  rpc :getImageURL, ::Io::Id, ::Io::Url
28
+ # Retrieves a stamp image URL with the supplied stamp status. Required Fields: id and status.
22
29
  rpc :getStampImageURL, ::Io::StampImageRequest, ::Io::Url
30
+ # Retrieves the configuration of a stamp image. Required Fields: id.
23
31
  rpc :getStampImageConfig, ::Io::Id, ::Io::StampImageConfig
32
+ # Updates a stamp image configuration. Required Fields: id and config fields.
24
33
  rpc :updateStampImageConfig, ::Io::StampImageConfig, ::Io::Id
34
+ # Gets a preview image of the provided stamp image configuration. Required Fields: stampImageConfig and status.
25
35
  rpc :getStampImagePreview, ::Io::StampImagePreviewRequest, ::Io::StampImagePreview
36
+ # Retrieves a localized image URL for a specific language. Required Fields: iD and languageCode.
26
37
  rpc :getLocalizedImageURL, ::Io::LocalizedImageInput, ::Io::Url
38
+ # Retrieves a profile image URL by a specific ID. Required Fields: id.
27
39
  rpc :getProfileImageById, ::Io::Id, ::Io::Url
28
- # returns a zip bundle containing all images for that ID
40
+ # Retrieves an image bundle (ZIP) containing all images for the given ID. Required Fields: id.
29
41
  rpc :getImageBundle, ::Io::Id, ::Io::ImageBundle
42
+ # Retrieves metadata for an image record. Required: id.
30
43
  rpc :getImageData, ::Io::Id, ::Io::ImageRecord
44
+ # Deletes an image record. Required: id.
31
45
  rpc :deleteImage, ::Io::Id, ::Google::Protobuf::Empty
46
+ # Deletes a localized version of an image. Required Fields: id and language code.
32
47
  rpc :deleteLocalizedImage, ::Io::LocalizedImageInput, ::Io::ImageRecord
48
+ # [DEPRECATED] Retrieves all user-owned images using pagination.
33
49
  rpc :listImagesForUserDeprecated, ::Io::Pagination, stream(::Io::ImageRecord)
50
+ # Retrieves all images stored under the user account using filters. Required Fields: filters.
34
51
  rpc :listImagesForUser, ::Io::Filters, stream(::Io::ImageRecord)
52
+ # [DEPRECATED] Retrieves all images available to the company.
35
53
  rpc :listImagesDeprecated, ::Io::Pagination, stream(::Io::ImageRecord)
54
+ # Retrieves all images stored under the company using filters. Required Fields: filters.
36
55
  rpc :listImages, ::Io::Filters, stream(::Io::ImageRecord)
56
+ # [DEPRECATED] Returns the count of all images available to the user.
37
57
  rpc :countImagesDeprecated, ::Io::Pagination, ::Io::Count
58
+ # Returns the count of all images available to the user using filters.
38
59
  rpc :countImages, ::Io::Filters, ::Io::Count
60
+ # [DEPRECATED] Returns the count of images stored under the user's account.
39
61
  rpc :countImagesForUserDeprecated, ::Io::Pagination, ::Io::Count
62
+ # Returns the count of images stored under the user's account using filters.
40
63
  rpc :countImagesForUser, ::Io::Filters, ::Io::Count
41
64
  end
42
65