analytics_admin.proto 74 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004
  1. // Copyright 2021 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.analytics.admin.v1alpha;
  16. import "google/analytics/admin/v1alpha/resources.proto";
  17. import "google/api/annotations.proto";
  18. import "google/api/client.proto";
  19. import "google/api/field_behavior.proto";
  20. import "google/api/resource.proto";
  21. import "google/protobuf/empty.proto";
  22. import "google/protobuf/field_mask.proto";
  23. import "google/protobuf/timestamp.proto";
  24. option go_package = "google.golang.org/genproto/googleapis/analytics/admin/v1alpha;admin";
  25. option java_multiple_files = true;
  26. option java_outer_classname = "AnalyticsAdminProto";
  27. option java_package = "com.google.analytics.admin.v1alpha";
  28. // Service Interface for the Analytics Admin API (GA4).
  29. service AnalyticsAdminService {
  30. option (google.api.default_host) = "analyticsadmin.googleapis.com";
  31. option (google.api.oauth_scopes) =
  32. "https://www.googleapis.com/auth/analytics.edit,"
  33. "https://www.googleapis.com/auth/analytics.manage.users,"
  34. "https://www.googleapis.com/auth/analytics.manage.users.readonly,"
  35. "https://www.googleapis.com/auth/analytics.readonly";
  36. // Lookup for a single Account.
  37. rpc GetAccount(GetAccountRequest) returns (Account) {
  38. option (google.api.http) = {
  39. get: "/v1alpha/{name=accounts/*}"
  40. };
  41. option (google.api.method_signature) = "name";
  42. }
  43. // Returns all accounts accessible by the caller.
  44. //
  45. // Note that these accounts might not currently have GA4 properties.
  46. // Soft-deleted (ie: "trashed") accounts are excluded by default.
  47. // Returns an empty list if no relevant accounts are found.
  48. rpc ListAccounts(ListAccountsRequest) returns (ListAccountsResponse) {
  49. option (google.api.http) = {
  50. get: "/v1alpha/accounts"
  51. };
  52. }
  53. // Marks target Account as soft-deleted (ie: "trashed") and returns it.
  54. //
  55. // This API does not have a method to restore soft-deleted accounts.
  56. // However, they can be restored using the Trash Can UI.
  57. //
  58. // If the accounts are not restored before the expiration time, the account
  59. // and all child resources (eg: Properties, GoogleAdsLinks, Streams,
  60. // UserLinks) will be permanently purged.
  61. // https://support.google.com/analytics/answer/6154772
  62. //
  63. // Returns an error if the target is not found.
  64. rpc DeleteAccount(DeleteAccountRequest) returns (google.protobuf.Empty) {
  65. option (google.api.http) = {
  66. delete: "/v1alpha/{name=accounts/*}"
  67. };
  68. option (google.api.method_signature) = "name";
  69. }
  70. // Updates an account.
  71. rpc UpdateAccount(UpdateAccountRequest) returns (Account) {
  72. option (google.api.http) = {
  73. patch: "/v1alpha/{account.name=accounts/*}"
  74. body: "account"
  75. };
  76. option (google.api.method_signature) = "account,update_mask";
  77. }
  78. // Requests a ticket for creating an account.
  79. rpc ProvisionAccountTicket(ProvisionAccountTicketRequest) returns (ProvisionAccountTicketResponse) {
  80. option (google.api.http) = {
  81. post: "/v1alpha/accounts:provisionAccountTicket"
  82. body: "*"
  83. };
  84. }
  85. // Returns summaries of all accounts accessible by the caller.
  86. rpc ListAccountSummaries(ListAccountSummariesRequest) returns (ListAccountSummariesResponse) {
  87. option (google.api.http) = {
  88. get: "/v1alpha/accountSummaries"
  89. };
  90. }
  91. // Lookup for a single "GA4" Property.
  92. rpc GetProperty(GetPropertyRequest) returns (Property) {
  93. option (google.api.http) = {
  94. get: "/v1alpha/{name=properties/*}"
  95. };
  96. option (google.api.method_signature) = "name";
  97. }
  98. // Returns child Properties under the specified parent Account.
  99. //
  100. // Only "GA4" properties will be returned.
  101. // Properties will be excluded if the caller does not have access.
  102. // Soft-deleted (ie: "trashed") properties are excluded by default.
  103. // Returns an empty list if no relevant properties are found.
  104. rpc ListProperties(ListPropertiesRequest) returns (ListPropertiesResponse) {
  105. option (google.api.http) = {
  106. get: "/v1alpha/properties"
  107. };
  108. }
  109. // Creates an "GA4" property with the specified location and attributes.
  110. rpc CreateProperty(CreatePropertyRequest) returns (Property) {
  111. option (google.api.http) = {
  112. post: "/v1alpha/properties"
  113. body: "property"
  114. };
  115. option (google.api.method_signature) = "property";
  116. }
  117. // Marks target Property as soft-deleted (ie: "trashed") and returns it.
  118. //
  119. // This API does not have a method to restore soft-deleted properties.
  120. // However, they can be restored using the Trash Can UI.
  121. //
  122. // If the properties are not restored before the expiration time, the Property
  123. // and all child resources (eg: GoogleAdsLinks, Streams, UserLinks)
  124. // will be permanently purged.
  125. // https://support.google.com/analytics/answer/6154772
  126. //
  127. // Returns an error if the target is not found, or is not an GA4 Property.
  128. rpc DeleteProperty(DeletePropertyRequest) returns (Property) {
  129. option (google.api.http) = {
  130. delete: "/v1alpha/{name=properties/*}"
  131. };
  132. option (google.api.method_signature) = "name";
  133. }
  134. // Updates a property.
  135. rpc UpdateProperty(UpdatePropertyRequest) returns (Property) {
  136. option (google.api.http) = {
  137. patch: "/v1alpha/{property.name=properties/*}"
  138. body: "property"
  139. };
  140. option (google.api.method_signature) = "property,update_mask";
  141. }
  142. // Gets information about a user's link to an account or property.
  143. rpc GetUserLink(GetUserLinkRequest) returns (UserLink) {
  144. option (google.api.http) = {
  145. get: "/v1alpha/{name=accounts/*/userLinks/*}"
  146. additional_bindings {
  147. get: "/v1alpha/{name=properties/*/userLinks/*}"
  148. }
  149. };
  150. option (google.api.method_signature) = "name";
  151. }
  152. // Gets information about multiple users' links to an account or property.
  153. rpc BatchGetUserLinks(BatchGetUserLinksRequest) returns (BatchGetUserLinksResponse) {
  154. option (google.api.http) = {
  155. get: "/v1alpha/{parent=accounts/*}/userLinks:batchGet"
  156. additional_bindings {
  157. get: "/v1alpha/{parent=properties/*}/userLinks:batchGet"
  158. }
  159. };
  160. }
  161. // Lists all user links on an account or property.
  162. rpc ListUserLinks(ListUserLinksRequest) returns (ListUserLinksResponse) {
  163. option (google.api.http) = {
  164. get: "/v1alpha/{parent=accounts/*}/userLinks"
  165. additional_bindings {
  166. get: "/v1alpha/{parent=properties/*}/userLinks"
  167. }
  168. };
  169. option (google.api.method_signature) = "parent";
  170. }
  171. // Lists all user links on an account or property, including implicit ones
  172. // that come from effective permissions granted by groups or organization
  173. // admin roles.
  174. //
  175. // If a returned user link does not have direct permissions, they cannot
  176. // be removed from the account or property directly with the DeleteUserLink
  177. // command. They have to be removed from the group/etc that gives them
  178. // permissions, which is currently only usable/discoverable in the GA or GMP
  179. // UIs.
  180. rpc AuditUserLinks(AuditUserLinksRequest) returns (AuditUserLinksResponse) {
  181. option (google.api.http) = {
  182. post: "/v1alpha/{parent=accounts/*}/userLinks:audit"
  183. body: "*"
  184. additional_bindings {
  185. post: "/v1alpha/{parent=properties/*}/userLinks:audit"
  186. body: "*"
  187. }
  188. };
  189. }
  190. // Creates a user link on an account or property.
  191. //
  192. // If the user with the specified email already has permissions on the
  193. // account or property, then the user's existing permissions will be unioned
  194. // with the permissions specified in the new UserLink.
  195. rpc CreateUserLink(CreateUserLinkRequest) returns (UserLink) {
  196. option (google.api.http) = {
  197. post: "/v1alpha/{parent=accounts/*}/userLinks"
  198. body: "user_link"
  199. additional_bindings {
  200. post: "/v1alpha/{parent=properties/*}/userLinks"
  201. body: "user_link"
  202. }
  203. };
  204. option (google.api.method_signature) = "parent,user_link";
  205. }
  206. // Creates information about multiple users' links to an account or property.
  207. //
  208. // This method is transactional. If any UserLink cannot be created, none of
  209. // the UserLinks will be created.
  210. rpc BatchCreateUserLinks(BatchCreateUserLinksRequest) returns (BatchCreateUserLinksResponse) {
  211. option (google.api.http) = {
  212. post: "/v1alpha/{parent=accounts/*}/userLinks:batchCreate"
  213. body: "*"
  214. additional_bindings {
  215. post: "/v1alpha/{parent=properties/*}/userLinks:batchCreate"
  216. body: "*"
  217. }
  218. };
  219. }
  220. // Updates a user link on an account or property.
  221. rpc UpdateUserLink(UpdateUserLinkRequest) returns (UserLink) {
  222. option (google.api.http) = {
  223. patch: "/v1alpha/{user_link.name=accounts/*/userLinks/*}"
  224. body: "user_link"
  225. additional_bindings {
  226. patch: "/v1alpha/{user_link.name=properties/*/userLinks/*}"
  227. body: "user_link"
  228. }
  229. };
  230. option (google.api.method_signature) = "user_link";
  231. }
  232. // Updates information about multiple users' links to an account or property.
  233. rpc BatchUpdateUserLinks(BatchUpdateUserLinksRequest) returns (BatchUpdateUserLinksResponse) {
  234. option (google.api.http) = {
  235. post: "/v1alpha/{parent=accounts/*}/userLinks:batchUpdate"
  236. body: "*"
  237. additional_bindings {
  238. post: "/v1alpha/{parent=properties/*}/userLinks:batchUpdate"
  239. body: "*"
  240. }
  241. };
  242. }
  243. // Deletes a user link on an account or property.
  244. rpc DeleteUserLink(DeleteUserLinkRequest) returns (google.protobuf.Empty) {
  245. option (google.api.http) = {
  246. delete: "/v1alpha/{name=accounts/*/userLinks/*}"
  247. additional_bindings {
  248. delete: "/v1alpha/{name=properties/*/userLinks/*}"
  249. }
  250. };
  251. option (google.api.method_signature) = "name";
  252. }
  253. // Deletes information about multiple users' links to an account or property.
  254. rpc BatchDeleteUserLinks(BatchDeleteUserLinksRequest) returns (google.protobuf.Empty) {
  255. option (google.api.http) = {
  256. post: "/v1alpha/{parent=accounts/*}/userLinks:batchDelete"
  257. body: "*"
  258. additional_bindings {
  259. post: "/v1alpha/{parent=properties/*}/userLinks:batchDelete"
  260. body: "*"
  261. }
  262. };
  263. }
  264. // Lookup for a single WebDataStream
  265. rpc GetWebDataStream(GetWebDataStreamRequest) returns (WebDataStream) {
  266. option (google.api.http) = {
  267. get: "/v1alpha/{name=properties/*/webDataStreams/*}"
  268. };
  269. option (google.api.method_signature) = "name";
  270. }
  271. // Deletes a web stream on a property.
  272. rpc DeleteWebDataStream(DeleteWebDataStreamRequest) returns (google.protobuf.Empty) {
  273. option (google.api.http) = {
  274. delete: "/v1alpha/{name=properties/*/webDataStreams/*}"
  275. };
  276. option (google.api.method_signature) = "name";
  277. }
  278. // Updates a web stream on a property.
  279. rpc UpdateWebDataStream(UpdateWebDataStreamRequest) returns (WebDataStream) {
  280. option (google.api.http) = {
  281. patch: "/v1alpha/{web_data_stream.name=properties/*/webDataStreams/*}"
  282. body: "web_data_stream"
  283. };
  284. option (google.api.method_signature) = "web_data_stream,update_mask";
  285. }
  286. // Creates a web stream with the specified location and attributes.
  287. rpc CreateWebDataStream(CreateWebDataStreamRequest) returns (WebDataStream) {
  288. option (google.api.http) = {
  289. post: "/v1alpha/{parent=properties/*}/webDataStreams"
  290. body: "web_data_stream"
  291. };
  292. option (google.api.method_signature) = "parent,web_data_stream";
  293. }
  294. // Returns child web data streams under the specified parent property.
  295. //
  296. // Web data streams will be excluded if the caller does not have access.
  297. // Returns an empty list if no relevant web data streams are found.
  298. rpc ListWebDataStreams(ListWebDataStreamsRequest) returns (ListWebDataStreamsResponse) {
  299. option (google.api.http) = {
  300. get: "/v1alpha/{parent=properties/*}/webDataStreams"
  301. };
  302. option (google.api.method_signature) = "parent";
  303. }
  304. // Lookup for a single IosAppDataStream
  305. rpc GetIosAppDataStream(GetIosAppDataStreamRequest) returns (IosAppDataStream) {
  306. option (google.api.http) = {
  307. get: "/v1alpha/{name=properties/*/iosAppDataStreams/*}"
  308. };
  309. option (google.api.method_signature) = "name";
  310. }
  311. // Deletes an iOS app stream on a property.
  312. rpc DeleteIosAppDataStream(DeleteIosAppDataStreamRequest) returns (google.protobuf.Empty) {
  313. option (google.api.http) = {
  314. delete: "/v1alpha/{name=properties/*/iosAppDataStreams/*}"
  315. };
  316. option (google.api.method_signature) = "name";
  317. }
  318. // Updates an iOS app stream on a property.
  319. rpc UpdateIosAppDataStream(UpdateIosAppDataStreamRequest) returns (IosAppDataStream) {
  320. option (google.api.http) = {
  321. patch: "/v1alpha/{ios_app_data_stream.name=properties/*/iosAppDataStreams/*}"
  322. body: "ios_app_data_stream"
  323. };
  324. option (google.api.method_signature) = "ios_app_data_stream,update_mask";
  325. }
  326. // Returns child iOS app data streams under the specified parent property.
  327. //
  328. // iOS app data streams will be excluded if the caller does not have access.
  329. // Returns an empty list if no relevant iOS app data streams are found.
  330. rpc ListIosAppDataStreams(ListIosAppDataStreamsRequest) returns (ListIosAppDataStreamsResponse) {
  331. option (google.api.http) = {
  332. get: "/v1alpha/{parent=properties/*}/iosAppDataStreams"
  333. };
  334. option (google.api.method_signature) = "parent";
  335. }
  336. // Lookup for a single AndroidAppDataStream
  337. rpc GetAndroidAppDataStream(GetAndroidAppDataStreamRequest) returns (AndroidAppDataStream) {
  338. option (google.api.http) = {
  339. get: "/v1alpha/{name=properties/*/androidAppDataStreams/*}"
  340. };
  341. option (google.api.method_signature) = "name";
  342. }
  343. // Deletes an android app stream on a property.
  344. rpc DeleteAndroidAppDataStream(DeleteAndroidAppDataStreamRequest) returns (google.protobuf.Empty) {
  345. option (google.api.http) = {
  346. delete: "/v1alpha/{name=properties/*/androidAppDataStreams/*}"
  347. };
  348. option (google.api.method_signature) = "name";
  349. }
  350. // Updates an android app stream on a property.
  351. rpc UpdateAndroidAppDataStream(UpdateAndroidAppDataStreamRequest) returns (AndroidAppDataStream) {
  352. option (google.api.http) = {
  353. patch: "/v1alpha/{android_app_data_stream.name=properties/*/androidAppDataStreams/*}"
  354. body: "android_app_data_stream"
  355. };
  356. option (google.api.method_signature) = "android_app_data_stream,update_mask";
  357. }
  358. // Returns child android app streams under the specified parent property.
  359. //
  360. // Android app streams will be excluded if the caller does not have access.
  361. // Returns an empty list if no relevant android app streams are found.
  362. rpc ListAndroidAppDataStreams(ListAndroidAppDataStreamsRequest) returns (ListAndroidAppDataStreamsResponse) {
  363. option (google.api.http) = {
  364. get: "/v1alpha/{parent=properties/*}/androidAppDataStreams"
  365. };
  366. option (google.api.method_signature) = "parent";
  367. }
  368. // Returns the singleton enhanced measurement settings for this web stream.
  369. // Note that the stream must enable enhanced measurement for these settings to
  370. // take effect.
  371. rpc GetEnhancedMeasurementSettings(GetEnhancedMeasurementSettingsRequest) returns (EnhancedMeasurementSettings) {
  372. option (google.api.http) = {
  373. get: "/v1alpha/{name=properties/*/webDataStreams/*/enhancedMeasurementSettings}"
  374. };
  375. option (google.api.method_signature) = "name";
  376. }
  377. // Updates the singleton enhanced measurement settings for this web stream.
  378. // Note that the stream must enable enhanced measurement for these settings to
  379. // take effect.
  380. rpc UpdateEnhancedMeasurementSettings(UpdateEnhancedMeasurementSettingsRequest) returns (EnhancedMeasurementSettings) {
  381. option (google.api.http) = {
  382. patch: "/v1alpha/{enhanced_measurement_settings.name=properties/*/webDataStreams/*/enhancedMeasurementSettings}"
  383. body: "enhanced_measurement_settings"
  384. };
  385. option (google.api.method_signature) = "enhanced_measurement_settings,update_mask";
  386. }
  387. // Creates a FirebaseLink.
  388. //
  389. // Properties can have at most one FirebaseLink.
  390. rpc CreateFirebaseLink(CreateFirebaseLinkRequest) returns (FirebaseLink) {
  391. option (google.api.http) = {
  392. post: "/v1alpha/{parent=properties/*}/firebaseLinks"
  393. body: "firebase_link"
  394. };
  395. option (google.api.method_signature) = "parent,firebase_link";
  396. }
  397. // Updates a FirebaseLink on a property
  398. rpc UpdateFirebaseLink(UpdateFirebaseLinkRequest) returns (FirebaseLink) {
  399. option (google.api.http) = {
  400. patch: "/v1alpha/{firebase_link.name=properties/*/firebaseLinks/*}"
  401. body: "firebase_link"
  402. };
  403. option (google.api.method_signature) = "firebase_link,update_mask";
  404. }
  405. // Deletes a FirebaseLink on a property
  406. rpc DeleteFirebaseLink(DeleteFirebaseLinkRequest) returns (google.protobuf.Empty) {
  407. option (google.api.http) = {
  408. delete: "/v1alpha/{name=properties/*/firebaseLinks/*}"
  409. };
  410. option (google.api.method_signature) = "name";
  411. }
  412. // Lists FirebaseLinks on a property.
  413. // Properties can have at most one FirebaseLink.
  414. rpc ListFirebaseLinks(ListFirebaseLinksRequest) returns (ListFirebaseLinksResponse) {
  415. option (google.api.http) = {
  416. get: "/v1alpha/{parent=properties/*}/firebaseLinks"
  417. };
  418. option (google.api.method_signature) = "parent";
  419. }
  420. // Returns the Site Tag for the specified web stream.
  421. // Site Tags are immutable singletons.
  422. rpc GetGlobalSiteTag(GetGlobalSiteTagRequest) returns (GlobalSiteTag) {
  423. option (google.api.http) = {
  424. get: "/v1alpha/{name=properties/*/webDataStreams/*/globalSiteTag}"
  425. };
  426. option (google.api.method_signature) = "name";
  427. }
  428. // Creates a GoogleAdsLink.
  429. rpc CreateGoogleAdsLink(CreateGoogleAdsLinkRequest) returns (GoogleAdsLink) {
  430. option (google.api.http) = {
  431. post: "/v1alpha/{parent=properties/*}/googleAdsLinks"
  432. body: "google_ads_link"
  433. };
  434. option (google.api.method_signature) = "parent,google_ads_link";
  435. }
  436. // Updates a GoogleAdsLink on a property
  437. rpc UpdateGoogleAdsLink(UpdateGoogleAdsLinkRequest) returns (GoogleAdsLink) {
  438. option (google.api.http) = {
  439. patch: "/v1alpha/{google_ads_link.name=properties/*/googleAdsLinks/*}"
  440. body: "google_ads_link"
  441. };
  442. option (google.api.method_signature) = "google_ads_link,update_mask";
  443. }
  444. // Deletes a GoogleAdsLink on a property
  445. rpc DeleteGoogleAdsLink(DeleteGoogleAdsLinkRequest) returns (google.protobuf.Empty) {
  446. option (google.api.http) = {
  447. delete: "/v1alpha/{name=properties/*/googleAdsLinks/*}"
  448. };
  449. option (google.api.method_signature) = "name";
  450. }
  451. // Lists GoogleAdsLinks on a property.
  452. rpc ListGoogleAdsLinks(ListGoogleAdsLinksRequest) returns (ListGoogleAdsLinksResponse) {
  453. option (google.api.http) = {
  454. get: "/v1alpha/{parent=properties/*}/googleAdsLinks"
  455. };
  456. option (google.api.method_signature) = "parent";
  457. }
  458. // Get data sharing settings on an account.
  459. // Data sharing settings are singletons.
  460. rpc GetDataSharingSettings(GetDataSharingSettingsRequest) returns (DataSharingSettings) {
  461. option (google.api.http) = {
  462. get: "/v1alpha/{name=accounts/*/dataSharingSettings}"
  463. };
  464. option (google.api.method_signature) = "name";
  465. }
  466. // Lookup for a single "GA4" MeasurementProtocolSecret.
  467. rpc GetMeasurementProtocolSecret(GetMeasurementProtocolSecretRequest) returns (MeasurementProtocolSecret) {
  468. option (google.api.http) = {
  469. get: "/v1alpha/{name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}"
  470. additional_bindings {
  471. get: "/v1alpha/{name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}"
  472. }
  473. additional_bindings {
  474. get: "/v1alpha/{name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}"
  475. }
  476. };
  477. option (google.api.method_signature) = "name";
  478. }
  479. // Returns child MeasurementProtocolSecrets under the specified parent
  480. // Property.
  481. rpc ListMeasurementProtocolSecrets(ListMeasurementProtocolSecretsRequest) returns (ListMeasurementProtocolSecretsResponse) {
  482. option (google.api.http) = {
  483. get: "/v1alpha/{parent=properties/*/webDataStreams/*}/measurementProtocolSecrets"
  484. additional_bindings {
  485. get: "/v1alpha/{parent=properties/*/iosAppDataStreams/*}/measurementProtocolSecrets"
  486. }
  487. additional_bindings {
  488. get: "/v1alpha/{parent=properties/*/androidAppDataStreams/*}/measurementProtocolSecrets"
  489. }
  490. };
  491. option (google.api.method_signature) = "parent";
  492. }
  493. // Creates a measurement protocol secret.
  494. rpc CreateMeasurementProtocolSecret(CreateMeasurementProtocolSecretRequest) returns (MeasurementProtocolSecret) {
  495. option (google.api.http) = {
  496. post: "/v1alpha/{parent=properties/*/webDataStreams/*}/measurementProtocolSecrets"
  497. body: "measurement_protocol_secret"
  498. additional_bindings {
  499. post: "/v1alpha/{parent=properties/*/iosAppDataStreams/*}/measurementProtocolSecrets"
  500. body: "measurement_protocol_secret"
  501. }
  502. additional_bindings {
  503. post: "/v1alpha/{parent=properties/*/androidAppDataStreams/*}/measurementProtocolSecrets"
  504. body: "measurement_protocol_secret"
  505. }
  506. };
  507. option (google.api.method_signature) = "parent,measurement_protocol_secret";
  508. }
  509. // Deletes target MeasurementProtocolSecret.
  510. rpc DeleteMeasurementProtocolSecret(DeleteMeasurementProtocolSecretRequest) returns (google.protobuf.Empty) {
  511. option (google.api.http) = {
  512. delete: "/v1alpha/{name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}"
  513. additional_bindings {
  514. delete: "/v1alpha/{name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}"
  515. }
  516. additional_bindings {
  517. delete: "/v1alpha/{name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}"
  518. }
  519. };
  520. option (google.api.method_signature) = "name";
  521. }
  522. // Updates a measurement protocol secret.
  523. rpc UpdateMeasurementProtocolSecret(UpdateMeasurementProtocolSecretRequest) returns (MeasurementProtocolSecret) {
  524. option (google.api.http) = {
  525. patch: "/v1alpha/{measurement_protocol_secret.name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}"
  526. body: "measurement_protocol_secret"
  527. additional_bindings {
  528. patch: "/v1alpha/{measurement_protocol_secret.name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}"
  529. body: "measurement_protocol_secret"
  530. }
  531. additional_bindings {
  532. patch: "/v1alpha/{measurement_protocol_secret.name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}"
  533. body: "measurement_protocol_secret"
  534. }
  535. };
  536. option (google.api.method_signature) = "measurement_protocol_secret,update_mask";
  537. }
  538. // Searches through all changes to an account or its children given the
  539. // specified set of filters.
  540. rpc SearchChangeHistoryEvents(SearchChangeHistoryEventsRequest) returns (SearchChangeHistoryEventsResponse) {
  541. option (google.api.http) = {
  542. post: "/v1alpha/{account=accounts/*}:searchChangeHistoryEvents"
  543. body: "*"
  544. };
  545. }
  546. // Lookup for Google Signals settings for a property.
  547. rpc GetGoogleSignalsSettings(GetGoogleSignalsSettingsRequest) returns (GoogleSignalsSettings) {
  548. option (google.api.http) = {
  549. get: "/v1alpha/{name=properties/*/googleSignalsSettings}"
  550. };
  551. option (google.api.method_signature) = "name";
  552. }
  553. // Updates Google Signals settings for a property.
  554. rpc UpdateGoogleSignalsSettings(UpdateGoogleSignalsSettingsRequest) returns (GoogleSignalsSettings) {
  555. option (google.api.http) = {
  556. patch: "/v1alpha/{google_signals_settings.name=properties/*/googleSignalsSettings}"
  557. body: "google_signals_settings"
  558. };
  559. option (google.api.method_signature) = "google_signals_settings,update_mask";
  560. }
  561. // Creates a conversion event with the specified attributes.
  562. rpc CreateConversionEvent(CreateConversionEventRequest) returns (ConversionEvent) {
  563. option (google.api.http) = {
  564. post: "/v1alpha/{parent=properties/*}/conversionEvents"
  565. body: "conversion_event"
  566. };
  567. option (google.api.method_signature) = "parent,conversion_event";
  568. }
  569. // Retrieve a single conversion event.
  570. rpc GetConversionEvent(GetConversionEventRequest) returns (ConversionEvent) {
  571. option (google.api.http) = {
  572. get: "/v1alpha/{name=properties/*/conversionEvents/*}"
  573. };
  574. option (google.api.method_signature) = "name";
  575. }
  576. // Deletes a conversion event in a property.
  577. rpc DeleteConversionEvent(DeleteConversionEventRequest) returns (google.protobuf.Empty) {
  578. option (google.api.http) = {
  579. delete: "/v1alpha/{name=properties/*/conversionEvents/*}"
  580. };
  581. option (google.api.method_signature) = "name";
  582. }
  583. // Returns a list of conversion events in the specified parent property.
  584. //
  585. // Returns an empty list if no conversion events are found.
  586. rpc ListConversionEvents(ListConversionEventsRequest) returns (ListConversionEventsResponse) {
  587. option (google.api.http) = {
  588. get: "/v1alpha/{parent=properties/*}/conversionEvents"
  589. };
  590. option (google.api.method_signature) = "parent";
  591. }
  592. // Creates a CustomDimension.
  593. rpc CreateCustomDimension(CreateCustomDimensionRequest) returns (CustomDimension) {
  594. option (google.api.http) = {
  595. post: "/v1alpha/{parent=properties/*}/customDimensions"
  596. body: "custom_dimension"
  597. };
  598. option (google.api.method_signature) = "parent,custom_dimension";
  599. }
  600. // Updates a CustomDimension on a property.
  601. rpc UpdateCustomDimension(UpdateCustomDimensionRequest) returns (CustomDimension) {
  602. option (google.api.http) = {
  603. patch: "/v1alpha/{custom_dimension.name=properties/*/customDimensions/*}"
  604. body: "custom_dimension"
  605. };
  606. option (google.api.method_signature) = "custom_dimension,update_mask";
  607. }
  608. // Lists CustomDimensions on a property.
  609. rpc ListCustomDimensions(ListCustomDimensionsRequest) returns (ListCustomDimensionsResponse) {
  610. option (google.api.http) = {
  611. get: "/v1alpha/{parent=properties/*}/customDimensions"
  612. };
  613. option (google.api.method_signature) = "parent";
  614. }
  615. // Archives a CustomDimension on a property.
  616. rpc ArchiveCustomDimension(ArchiveCustomDimensionRequest) returns (google.protobuf.Empty) {
  617. option (google.api.http) = {
  618. post: "/v1alpha/{name=properties/*/customDimensions/*}:archive"
  619. body: "*"
  620. };
  621. option (google.api.method_signature) = "name";
  622. }
  623. // Lookup for a single CustomDimension.
  624. rpc GetCustomDimension(GetCustomDimensionRequest) returns (CustomDimension) {
  625. option (google.api.http) = {
  626. get: "/v1alpha/{name=properties/*/customDimensions/*}"
  627. };
  628. option (google.api.method_signature) = "name";
  629. }
  630. // Creates a CustomMetric.
  631. rpc CreateCustomMetric(CreateCustomMetricRequest) returns (CustomMetric) {
  632. option (google.api.http) = {
  633. post: "/v1alpha/{parent=properties/*}/customMetrics"
  634. body: "custom_metric"
  635. };
  636. option (google.api.method_signature) = "parent,custom_metric";
  637. }
  638. // Updates a CustomMetric on a property.
  639. rpc UpdateCustomMetric(UpdateCustomMetricRequest) returns (CustomMetric) {
  640. option (google.api.http) = {
  641. patch: "/v1alpha/{custom_metric.name=properties/*/customMetrics/*}"
  642. body: "custom_metric"
  643. };
  644. option (google.api.method_signature) = "custom_metric,update_mask";
  645. }
  646. // Lists CustomMetrics on a property.
  647. rpc ListCustomMetrics(ListCustomMetricsRequest) returns (ListCustomMetricsResponse) {
  648. option (google.api.http) = {
  649. get: "/v1alpha/{parent=properties/*}/customMetrics"
  650. };
  651. option (google.api.method_signature) = "parent";
  652. }
  653. // Archives a CustomMetric on a property.
  654. rpc ArchiveCustomMetric(ArchiveCustomMetricRequest) returns (google.protobuf.Empty) {
  655. option (google.api.http) = {
  656. post: "/v1alpha/{name=properties/*/customMetrics/*}:archive"
  657. body: "*"
  658. };
  659. option (google.api.method_signature) = "name";
  660. }
  661. // Lookup for a single CustomMetric.
  662. rpc GetCustomMetric(GetCustomMetricRequest) returns (CustomMetric) {
  663. option (google.api.http) = {
  664. get: "/v1alpha/{name=properties/*/customMetrics/*}"
  665. };
  666. option (google.api.method_signature) = "name";
  667. }
  668. }
  669. // Request message for GetAccount RPC.
  670. message GetAccountRequest {
  671. // Required. The name of the account to lookup.
  672. // Format: accounts/{account}
  673. // Example: "accounts/100"
  674. string name = 1 [
  675. (google.api.field_behavior) = REQUIRED,
  676. (google.api.resource_reference) = {
  677. type: "analyticsadmin.googleapis.com/Account"
  678. }
  679. ];
  680. }
  681. // Request message for ListAccounts RPC.
  682. message ListAccountsRequest {
  683. // The maximum number of resources to return. The service may return
  684. // fewer than this value, even if there are additional pages.
  685. // If unspecified, at most 50 resources will be returned.
  686. // The maximum value is 200; (higher values will be coerced to the maximum)
  687. int32 page_size = 1;
  688. // A page token, received from a previous `ListAccounts` call.
  689. // Provide this to retrieve the subsequent page.
  690. // When paginating, all other parameters provided to `ListAccounts` must
  691. // match the call that provided the page token.
  692. string page_token = 2;
  693. // Whether to include soft-deleted (ie: "trashed") Accounts in the
  694. // results. Accounts can be inspected to determine whether they are deleted or
  695. // not.
  696. bool show_deleted = 3;
  697. }
  698. // Request message for ListAccounts RPC.
  699. message ListAccountsResponse {
  700. // Results that were accessible to the caller.
  701. repeated Account accounts = 1;
  702. // A token, which can be sent as `page_token` to retrieve the next page.
  703. // If this field is omitted, there are no subsequent pages.
  704. string next_page_token = 2;
  705. }
  706. // Request message for DeleteAccount RPC.
  707. message DeleteAccountRequest {
  708. // Required. The name of the Account to soft-delete.
  709. // Format: accounts/{account}
  710. // Example: "accounts/100"
  711. string name = 1 [
  712. (google.api.field_behavior) = REQUIRED,
  713. (google.api.resource_reference) = {
  714. type: "analyticsadmin.googleapis.com/Account"
  715. }
  716. ];
  717. }
  718. // Request message for UpdateAccount RPC.
  719. message UpdateAccountRequest {
  720. // Required. The account to update.
  721. // The account's `name` field is used to identify the account.
  722. Account account = 1 [(google.api.field_behavior) = REQUIRED];
  723. // Required. The list of fields to be updated. Field names must be in snake case
  724. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  725. // the entire entity, use one path with the string "*" to match all fields.
  726. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  727. }
  728. // Request message for ProvisionAccountTicket RPC.
  729. message ProvisionAccountTicketRequest {
  730. // The account to create.
  731. Account account = 1;
  732. // Redirect URI where the user will be sent after accepting Terms of Service.
  733. // Must be configured in Developers Console as a Redirect URI
  734. string redirect_uri = 2;
  735. }
  736. // Response message for ProvisionAccountTicket RPC.
  737. message ProvisionAccountTicketResponse {
  738. // The param to be passed in the ToS link.
  739. string account_ticket_id = 1;
  740. }
  741. // Request message for GetProperty RPC.
  742. message GetPropertyRequest {
  743. // Required. The name of the property to lookup.
  744. // Format: properties/{property_id}
  745. // Example: "properties/1000"
  746. string name = 1 [
  747. (google.api.field_behavior) = REQUIRED,
  748. (google.api.resource_reference) = {
  749. type: "analyticsadmin.googleapis.com/Property"
  750. }
  751. ];
  752. }
  753. // Request message for ListProperties RPC.
  754. message ListPropertiesRequest {
  755. // Required. An expression for filtering the results of the request.
  756. // Fields eligible for filtering are:
  757. // `parent:`(The resource name of the parent account) or
  758. // `firebase_project:`(The id or number of the linked firebase project).
  759. // Some examples of filters:
  760. //
  761. // ```
  762. // | Filter | Description |
  763. // |-----------------------------|-------------------------------------------|
  764. // | parent:accounts/123 | The account with account id: 123. |
  765. // | firebase_project:project-id | The firebase project with id: project-id. |
  766. // | firebase_project:123 | The firebase project with number: 123. |
  767. // ```
  768. string filter = 1 [(google.api.field_behavior) = REQUIRED];
  769. // The maximum number of resources to return. The service may return
  770. // fewer than this value, even if there are additional pages.
  771. // If unspecified, at most 50 resources will be returned.
  772. // The maximum value is 200; (higher values will be coerced to the maximum)
  773. int32 page_size = 2;
  774. // A page token, received from a previous `ListProperties` call.
  775. // Provide this to retrieve the subsequent page.
  776. // When paginating, all other parameters provided to `ListProperties` must
  777. // match the call that provided the page token.
  778. string page_token = 3;
  779. // Whether to include soft-deleted (ie: "trashed") Properties in the
  780. // results. Properties can be inspected to determine whether they are deleted
  781. // or not.
  782. bool show_deleted = 4;
  783. }
  784. // Response message for ListProperties RPC.
  785. message ListPropertiesResponse {
  786. // Results that matched the filter criteria and were accessible to the caller.
  787. repeated Property properties = 1;
  788. // A token, which can be sent as `page_token` to retrieve the next page.
  789. // If this field is omitted, there are no subsequent pages.
  790. string next_page_token = 2;
  791. }
  792. // Request message for UpdateProperty RPC.
  793. message UpdatePropertyRequest {
  794. // Required. The property to update.
  795. // The property's `name` field is used to identify the property to be
  796. // updated.
  797. Property property = 1 [(google.api.field_behavior) = REQUIRED];
  798. // Required. The list of fields to be updated. Field names must be in snake case
  799. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  800. // the entire entity, use one path with the string "*" to match all fields.
  801. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  802. }
  803. // Request message for CreateProperty RPC.
  804. message CreatePropertyRequest {
  805. // Required. The property to create.
  806. // Note: the supplied property must specify its parent.
  807. Property property = 1 [(google.api.field_behavior) = REQUIRED];
  808. }
  809. // Request message for DeleteProperty RPC.
  810. message DeletePropertyRequest {
  811. // Required. The name of the Property to soft-delete.
  812. // Format: properties/{property_id}
  813. // Example: "properties/1000"
  814. string name = 1 [
  815. (google.api.field_behavior) = REQUIRED,
  816. (google.api.resource_reference) = {
  817. type: "analyticsadmin.googleapis.com/Property"
  818. }
  819. ];
  820. }
  821. // Request message for GetUserLink RPC.
  822. message GetUserLinkRequest {
  823. // Required. Example format: accounts/1234/userLinks/5678
  824. string name = 1 [
  825. (google.api.field_behavior) = REQUIRED,
  826. (google.api.resource_reference) = {
  827. type: "analyticsadmin.googleapis.com/UserLink"
  828. }
  829. ];
  830. }
  831. // Request message for BatchGetUserLinks RPC.
  832. message BatchGetUserLinksRequest {
  833. // Required. The account or property that all user links in the request are
  834. // for. The parent of all provided values for the 'names' field must match
  835. // this field.
  836. // Example format: accounts/1234
  837. string parent = 1 [
  838. (google.api.field_behavior) = REQUIRED,
  839. (google.api.resource_reference) = {
  840. child_type: "analyticsadmin.googleapis.com/UserLink"
  841. }
  842. ];
  843. // Required. The names of the user links to retrieve.
  844. // A maximum of 1000 user links can be retrieved in a batch.
  845. // Format: accounts/{accountId}/userLinks/{userLinkId}
  846. repeated string names = 2 [
  847. (google.api.field_behavior) = REQUIRED,
  848. (google.api.resource_reference) = {
  849. type: "analyticsadmin.googleapis.com/UserLink"
  850. }
  851. ];
  852. }
  853. // Response message for BatchGetUserLinks RPC.
  854. message BatchGetUserLinksResponse {
  855. // The requested user links.
  856. repeated UserLink user_links = 1;
  857. }
  858. // Request message for ListUserLinks RPC.
  859. message ListUserLinksRequest {
  860. // Required. Example format: accounts/1234
  861. string parent = 1 [
  862. (google.api.field_behavior) = REQUIRED,
  863. (google.api.resource_reference) = {
  864. child_type: "analyticsadmin.googleapis.com/UserLink"
  865. }
  866. ];
  867. // The maximum number of user links to return.
  868. // The service may return fewer than this value.
  869. // If unspecified, at most 200 user links will be returned.
  870. // The maximum value is 500; values above 500 will be coerced to 500.
  871. int32 page_size = 2;
  872. // A page token, received from a previous `ListUserLinks` call.
  873. // Provide this to retrieve the subsequent page.
  874. // When paginating, all other parameters provided to `ListUserLinks` must
  875. // match the call that provided the page token.
  876. string page_token = 3;
  877. }
  878. // Response message for ListUserLinks RPC.
  879. message ListUserLinksResponse {
  880. // List of UserLinks. These will be ordered stably, but in an arbitrary order.
  881. repeated UserLink user_links = 1;
  882. // A token, which can be sent as `page_token` to retrieve the next page.
  883. // If this field is omitted, there are no subsequent pages.
  884. string next_page_token = 2;
  885. }
  886. // Request message for AuditUserLinks RPC.
  887. message AuditUserLinksRequest {
  888. // Required. Example format: accounts/1234
  889. string parent = 1 [
  890. (google.api.field_behavior) = REQUIRED,
  891. (google.api.resource_reference) = {
  892. child_type: "analyticsadmin.googleapis.com/UserLink"
  893. }
  894. ];
  895. // The maximum number of user links to return.
  896. // The service may return fewer than this value.
  897. // If unspecified, at most 1000 user links will be returned.
  898. // The maximum value is 5000; values above 5000 will be coerced to 5000.
  899. int32 page_size = 2;
  900. // A page token, received from a previous `AuditUserLinks` call.
  901. // Provide this to retrieve the subsequent page.
  902. // When paginating, all other parameters provided to `AuditUserLinks` must
  903. // match the call that provided the page token.
  904. string page_token = 3;
  905. }
  906. // Response message for AuditUserLinks RPC.
  907. message AuditUserLinksResponse {
  908. // List of AuditUserLinks. These will be ordered stably, but in an arbitrary
  909. // order.
  910. repeated AuditUserLink user_links = 1;
  911. // A token, which can be sent as `page_token` to retrieve the next page.
  912. // If this field is omitted, there are no subsequent pages.
  913. string next_page_token = 2;
  914. }
  915. // Request message for CreateUserLink RPC.
  916. //
  917. // Users can have multiple email addresses associated with their Google
  918. // account, and one of these email addresses is the "primary" email address.
  919. // Any of the email addresses associated with a Google account may be used
  920. // for a new UserLink, but the returned UserLink will always contain the
  921. // "primary" email address. As a result, the input and output email address
  922. // for this request may differ.
  923. message CreateUserLinkRequest {
  924. // Required. Example format: accounts/1234
  925. string parent = 1 [
  926. (google.api.field_behavior) = REQUIRED,
  927. (google.api.resource_reference) = {
  928. child_type: "analyticsadmin.googleapis.com/UserLink"
  929. }
  930. ];
  931. // Optional. If set, then email the new user notifying them that they've been granted
  932. // permissions to the resource.
  933. bool notify_new_user = 2 [(google.api.field_behavior) = OPTIONAL];
  934. // Required. The user link to create.
  935. UserLink user_link = 3 [(google.api.field_behavior) = REQUIRED];
  936. }
  937. // Request message for BatchCreateUserLinks RPC.
  938. message BatchCreateUserLinksRequest {
  939. // Required. The account or property that all user links in the request are for.
  940. // This field is required. The parent field in the CreateUserLinkRequest
  941. // messages must either be empty or match this field.
  942. // Example format: accounts/1234
  943. string parent = 1 [
  944. (google.api.field_behavior) = REQUIRED,
  945. (google.api.resource_reference) = {
  946. child_type: "analyticsadmin.googleapis.com/UserLink"
  947. }
  948. ];
  949. // Optional. If set, then email the new users notifying them that they've been granted
  950. // permissions to the resource. Regardless of whether this is set or not,
  951. // notify_new_user field inside each individual request is ignored.
  952. bool notify_new_users = 2 [(google.api.field_behavior) = OPTIONAL];
  953. // Required. The requests specifying the user links to create.
  954. // A maximum of 1000 user links can be created in a batch.
  955. repeated CreateUserLinkRequest requests = 3 [(google.api.field_behavior) = REQUIRED];
  956. }
  957. // Response message for BatchCreateUserLinks RPC.
  958. message BatchCreateUserLinksResponse {
  959. // The user links created.
  960. repeated UserLink user_links = 1;
  961. }
  962. // Request message for UpdateUserLink RPC.
  963. message UpdateUserLinkRequest {
  964. // Required. The user link to update.
  965. UserLink user_link = 1 [(google.api.field_behavior) = REQUIRED];
  966. }
  967. // Request message for BatchUpdateUserLinks RPC.
  968. message BatchUpdateUserLinksRequest {
  969. // Required. The account or property that all user links in the request are
  970. // for. The parent field in the UpdateUserLinkRequest messages must either be
  971. // empty or match this field.
  972. // Example format: accounts/1234
  973. string parent = 1 [
  974. (google.api.field_behavior) = REQUIRED,
  975. (google.api.resource_reference) = {
  976. child_type: "analyticsadmin.googleapis.com/UserLink"
  977. }
  978. ];
  979. // Required. The requests specifying the user links to update.
  980. // A maximum of 1000 user links can be updated in a batch.
  981. repeated UpdateUserLinkRequest requests = 2 [(google.api.field_behavior) = REQUIRED];
  982. }
  983. // Response message for BatchUpdateUserLinks RPC.
  984. message BatchUpdateUserLinksResponse {
  985. // The user links updated.
  986. repeated UserLink user_links = 1;
  987. }
  988. // Request message for DeleteUserLink RPC.
  989. message DeleteUserLinkRequest {
  990. // Required. Example format: accounts/1234/userLinks/5678
  991. string name = 1 [
  992. (google.api.field_behavior) = REQUIRED,
  993. (google.api.resource_reference) = {
  994. type: "analyticsadmin.googleapis.com/UserLink"
  995. }
  996. ];
  997. }
  998. // Request message for BatchDeleteUserLinks RPC.
  999. message BatchDeleteUserLinksRequest {
  1000. // Required. The account or property that all user links in the request are
  1001. // for. The parent of all values for user link names to delete must match this
  1002. // field.
  1003. // Example format: accounts/1234
  1004. string parent = 1 [
  1005. (google.api.field_behavior) = REQUIRED,
  1006. (google.api.resource_reference) = {
  1007. child_type: "analyticsadmin.googleapis.com/UserLink"
  1008. }
  1009. ];
  1010. // Required. The requests specifying the user links to update.
  1011. // A maximum of 1000 user links can be updated in a batch.
  1012. repeated DeleteUserLinkRequest requests = 2 [(google.api.field_behavior) = REQUIRED];
  1013. }
  1014. // Request message for GetWebDataStream RPC.
  1015. message GetWebDataStreamRequest {
  1016. // Required. The name of the web data stream to lookup.
  1017. // Format: properties/{property_id}/webDataStreams/{stream_id}
  1018. // Example: "properties/123/webDataStreams/456"
  1019. string name = 1 [
  1020. (google.api.field_behavior) = REQUIRED,
  1021. (google.api.resource_reference) = {
  1022. type: "analyticsadmin.googleapis.com/WebDataStream"
  1023. }
  1024. ];
  1025. }
  1026. // Request message for DeleteWebDataStream RPC.
  1027. message DeleteWebDataStreamRequest {
  1028. // Required. The name of the web data stream to delete.
  1029. // Format: properties/{property_id}/webDataStreams/{stream_id}
  1030. // Example: "properties/123/webDataStreams/456"
  1031. string name = 1 [
  1032. (google.api.field_behavior) = REQUIRED,
  1033. (google.api.resource_reference) = {
  1034. type: "analyticsadmin.googleapis.com/WebDataStream"
  1035. }
  1036. ];
  1037. }
  1038. // Request message for UpdateWebDataStream RPC.
  1039. message UpdateWebDataStreamRequest {
  1040. // Required. The web stream to update.
  1041. // The `name` field is used to identify the web stream to be updated.
  1042. WebDataStream web_data_stream = 1 [(google.api.field_behavior) = REQUIRED];
  1043. // Required. The list of fields to be updated. Field names must be in snake case
  1044. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  1045. // the entire entity, use one path with the string "*" to match all fields.
  1046. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1047. }
  1048. // Request message for CreateWebDataStream RPC.
  1049. message CreateWebDataStreamRequest {
  1050. // Required. The web stream to create.
  1051. WebDataStream web_data_stream = 1 [(google.api.field_behavior) = REQUIRED];
  1052. // Required. The parent resource where this web data stream will be created.
  1053. // Format: properties/123
  1054. string parent = 2 [
  1055. (google.api.field_behavior) = REQUIRED,
  1056. (google.api.resource_reference) = {
  1057. child_type: "analyticsadmin.googleapis.com/WebDataStream"
  1058. }
  1059. ];
  1060. }
  1061. // Request message for ListWebDataStreams RPC.
  1062. message ListWebDataStreamsRequest {
  1063. // Required. The name of the parent property.
  1064. // For example, to list results of web streams under the property with Id
  1065. // 123: "properties/123"
  1066. string parent = 1 [
  1067. (google.api.field_behavior) = REQUIRED,
  1068. (google.api.resource_reference) = {
  1069. child_type: "analyticsadmin.googleapis.com/WebDataStream"
  1070. }
  1071. ];
  1072. // The maximum number of resources to return.
  1073. // If unspecified, at most 50 resources will be returned.
  1074. // The maximum value is 200; (higher values will be coerced to the maximum)
  1075. int32 page_size = 2;
  1076. // A page token, received from a previous `ListWebDataStreams` call.
  1077. // Provide this to retrieve the subsequent page.
  1078. // When paginating, all other parameters provided to `ListWebDataStreams` must
  1079. // match the call that provided the page token.
  1080. string page_token = 3;
  1081. }
  1082. // Request message for ListWebDataStreams RPC.
  1083. message ListWebDataStreamsResponse {
  1084. // Results that matched the filter criteria and were accessible to the caller.
  1085. repeated WebDataStream web_data_streams = 1;
  1086. // A token, which can be sent as `page_token` to retrieve the next page.
  1087. // If this field is omitted, there are no subsequent pages.
  1088. string next_page_token = 2;
  1089. }
  1090. // Request message for GetIosAppDataStream RPC.
  1091. message GetIosAppDataStreamRequest {
  1092. // Required. The name of the iOS app data stream to lookup.
  1093. // Format: properties/{property_id}/iosAppDataStreams/{stream_id}
  1094. // Example: "properties/123/iosAppDataStreams/456"
  1095. string name = 1 [
  1096. (google.api.field_behavior) = REQUIRED,
  1097. (google.api.resource_reference) = {
  1098. type: "analyticsadmin.googleapis.com/IosAppDataStream"
  1099. }
  1100. ];
  1101. }
  1102. // Request message for DeleteIosAppDataStream RPC.
  1103. message DeleteIosAppDataStreamRequest {
  1104. // Required. The name of the iOS app data stream to delete.
  1105. // Format: properties/{property_id}/iosAppDataStreams/{stream_id}
  1106. // Example: "properties/123/iosAppDataStreams/456"
  1107. string name = 1 [
  1108. (google.api.field_behavior) = REQUIRED,
  1109. (google.api.resource_reference) = {
  1110. type: "analyticsadmin.googleapis.com/IosAppDataStream"
  1111. }
  1112. ];
  1113. }
  1114. // Request message for UpdateIosAppDataStream RPC.
  1115. message UpdateIosAppDataStreamRequest {
  1116. // Required. The iOS app stream to update.
  1117. // The `name` field is used to identify the iOS app stream to be updated.
  1118. IosAppDataStream ios_app_data_stream = 1 [(google.api.field_behavior) = REQUIRED];
  1119. // Required. The list of fields to be updated. Field names must be in snake case
  1120. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  1121. // the entire entity, use one path with the string "*" to match all fields.
  1122. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1123. }
  1124. // Request message for ListIosAppDataStreams RPC.
  1125. message ListIosAppDataStreamsRequest {
  1126. // Required. The name of the parent property.
  1127. // For example, to list results of app streams under the property with Id
  1128. // 123: "properties/123"
  1129. string parent = 1 [
  1130. (google.api.field_behavior) = REQUIRED,
  1131. (google.api.resource_reference) = {
  1132. child_type: "analyticsadmin.googleapis.com/IosAppDataStream"
  1133. }
  1134. ];
  1135. // The maximum number of resources to return.
  1136. // If unspecified, at most 50 resources will be returned.
  1137. // The maximum value is 200; (higher values will be coerced to the maximum)
  1138. int32 page_size = 2;
  1139. // A page token, received from a previous `ListIosAppDataStreams`
  1140. // call. Provide this to retrieve the subsequent page.
  1141. // When paginating, all other parameters provided to `ListIosAppDataStreams`
  1142. // must match the call that provided the page token.
  1143. string page_token = 3;
  1144. }
  1145. // Request message for ListIosAppDataStreams RPC.
  1146. message ListIosAppDataStreamsResponse {
  1147. // Results that matched the filter criteria and were accessible to the caller.
  1148. repeated IosAppDataStream ios_app_data_streams = 1;
  1149. // A token, which can be sent as `page_token` to retrieve the next page.
  1150. // If this field is omitted, there are no subsequent pages.
  1151. string next_page_token = 2;
  1152. }
  1153. // Request message for GetAndroidAppDataStream RPC.
  1154. message GetAndroidAppDataStreamRequest {
  1155. // Required. The name of the android app data stream to lookup.
  1156. // Format: properties/{property_id}/androidAppDataStreams/{stream_id}
  1157. // Example: "properties/123/androidAppDataStreams/456"
  1158. string name = 1 [
  1159. (google.api.field_behavior) = REQUIRED,
  1160. (google.api.resource_reference) = {
  1161. type: "analyticsadmin.googleapis.com/AndroidAppDataStream"
  1162. }
  1163. ];
  1164. }
  1165. // Request message for DeleteAndroidAppDataStream RPC.
  1166. message DeleteAndroidAppDataStreamRequest {
  1167. // Required. The name of the android app data stream to delete.
  1168. // Format: properties/{property_id}/androidAppDataStreams/{stream_id}
  1169. // Example: "properties/123/androidAppDataStreams/456"
  1170. string name = 1 [
  1171. (google.api.field_behavior) = REQUIRED,
  1172. (google.api.resource_reference) = {
  1173. type: "analyticsadmin.googleapis.com/AndroidAppDataStream"
  1174. }
  1175. ];
  1176. }
  1177. // Request message for UpdateAndroidAppDataStream RPC.
  1178. message UpdateAndroidAppDataStreamRequest {
  1179. // Required. The android app stream to update.
  1180. // The `name` field is used to identify the android app stream to be updated.
  1181. AndroidAppDataStream android_app_data_stream = 1 [(google.api.field_behavior) = REQUIRED];
  1182. // Required. The list of fields to be updated. Field names must be in snake case
  1183. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  1184. // the entire entity, use one path with the string "*" to match all fields.
  1185. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1186. }
  1187. // Request message for ListAndroidAppDataStreams RPC.
  1188. message ListAndroidAppDataStreamsRequest {
  1189. // Required. The name of the parent property.
  1190. // For example, to limit results to app streams under the property with Id
  1191. // 123: "properties/123"
  1192. string parent = 1 [
  1193. (google.api.field_behavior) = REQUIRED,
  1194. (google.api.resource_reference) = {
  1195. child_type: "analyticsadmin.googleapis.com/AndroidAppDataStream"
  1196. }
  1197. ];
  1198. // The maximum number of resources to return.
  1199. //
  1200. // If unspecified, at most 50 resources will be returned.
  1201. // The maximum value is 200; (higher values will be coerced to the maximum)
  1202. int32 page_size = 2;
  1203. // A page token, received from a previous call. Provide this to
  1204. // retrieve the subsequent page.
  1205. // When paginating, all other parameters provided to
  1206. // `ListAndroidAppDataStreams` must match the call that provided the page
  1207. // token.
  1208. string page_token = 3;
  1209. }
  1210. // Request message for ListAndroidDataStreams RPC.
  1211. message ListAndroidAppDataStreamsResponse {
  1212. // Results that matched the filter criteria and were accessible to the caller.
  1213. repeated AndroidAppDataStream android_app_data_streams = 1;
  1214. // A token, which can be sent as `page_token` to retrieve the next page.
  1215. // If this field is omitted, there are no subsequent pages.
  1216. string next_page_token = 2;
  1217. }
  1218. // Request message for GetEnhancedMeasurementSettings RPC.
  1219. message GetEnhancedMeasurementSettingsRequest {
  1220. // Required. The name of the settings to lookup.
  1221. // Format:
  1222. // properties/{property_id}/webDataStreams/{stream_id}/enhancedMeasurementSettings
  1223. // Example: "properties/1000/webDataStreams/2000/enhancedMeasurementSettings"
  1224. string name = 1 [
  1225. (google.api.field_behavior) = REQUIRED,
  1226. (google.api.resource_reference) = {
  1227. type: "analyticsadmin.googleapis.com/EnhancedMeasurementSettings"
  1228. }
  1229. ];
  1230. }
  1231. // Request message for UpdateEnhancedMeasurementSettings RPC.
  1232. message UpdateEnhancedMeasurementSettingsRequest {
  1233. // Required. The settings to update.
  1234. // The `name` field is used to identify the settings to be updated.
  1235. EnhancedMeasurementSettings enhanced_measurement_settings = 1 [(google.api.field_behavior) = REQUIRED];
  1236. // Required. The list of fields to be updated. Field names must be in snake case
  1237. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  1238. // the entire entity, use one path with the string "*" to match all fields.
  1239. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1240. }
  1241. // Request message for CreateFirebaseLink RPC
  1242. message CreateFirebaseLinkRequest {
  1243. // Required. Format: properties/{property_id}
  1244. // Example: properties/1234
  1245. string parent = 1 [
  1246. (google.api.field_behavior) = REQUIRED,
  1247. (google.api.resource_reference) = {
  1248. child_type: "analyticsadmin.googleapis.com/FirebaseLink"
  1249. }
  1250. ];
  1251. // Required. The Firebase link to create.
  1252. FirebaseLink firebase_link = 2 [(google.api.field_behavior) = REQUIRED];
  1253. }
  1254. // Request message for UpdateFirebaseLink RPC
  1255. message UpdateFirebaseLinkRequest {
  1256. // Required. The Firebase link to update.
  1257. FirebaseLink firebase_link = 1 [(google.api.field_behavior) = REQUIRED];
  1258. // Required. The list of fields to be updated. Field names must be in snake case
  1259. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  1260. // the entire entity, use one path with the string "*" to match all fields.
  1261. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1262. }
  1263. // Request message for DeleteFirebaseLink RPC
  1264. message DeleteFirebaseLinkRequest {
  1265. // Required. Format: properties/{property_id}/firebaseLinks/{firebase_link_id}
  1266. // Example: properties/1234/firebaseLinks/5678
  1267. string name = 1 [
  1268. (google.api.field_behavior) = REQUIRED,
  1269. (google.api.resource_reference) = {
  1270. type: "analyticsadmin.googleapis.com/FirebaseLink"
  1271. }
  1272. ];
  1273. }
  1274. // Request message for ListFirebaseLinks RPC
  1275. message ListFirebaseLinksRequest {
  1276. // Required. Format: properties/{property_id}
  1277. // Example: properties/1234
  1278. string parent = 1 [
  1279. (google.api.field_behavior) = REQUIRED,
  1280. (google.api.resource_reference) = {
  1281. child_type: "analyticsadmin.googleapis.com/FirebaseLink"
  1282. }
  1283. ];
  1284. // The maximum number of resources to return. The service may return
  1285. // fewer than this value, even if there are additional pages.
  1286. // If unspecified, at most 50 resources will be returned.
  1287. // The maximum value is 200; (higher values will be coerced to the maximum)
  1288. int32 page_size = 2;
  1289. // A page token, received from a previous `ListFirebaseLinks` call.
  1290. // Provide this to retrieve the subsequent page.
  1291. // When paginating, all other parameters provided to `ListProperties` must
  1292. // match the call that provided the page token.
  1293. string page_token = 3;
  1294. }
  1295. // Response message for ListFirebaseLinks RPC
  1296. message ListFirebaseLinksResponse {
  1297. // List of FirebaseLinks. This will have at most one value.
  1298. repeated FirebaseLink firebase_links = 1;
  1299. // A token, which can be sent as `page_token` to retrieve the next page.
  1300. // If this field is omitted, there are no subsequent pages.
  1301. // Currently, Google Analytics supports only one FirebaseLink per property,
  1302. // so this will never be populated.
  1303. string next_page_token = 2;
  1304. }
  1305. // Request message for GetGlobalSiteTag RPC.
  1306. message GetGlobalSiteTagRequest {
  1307. // Required. The name of the site tag to lookup.
  1308. // Note that site tags are singletons and do not have unique IDs.
  1309. // Format: properties/{property_id}/webDataStreams/{stream_id}/globalSiteTag
  1310. // Example: "properties/123/webDataStreams/456/globalSiteTag"
  1311. string name = 1 [
  1312. (google.api.field_behavior) = REQUIRED,
  1313. (google.api.resource_reference) = {
  1314. type: "analyticsadmin.googleapis.com/GlobalSiteTag"
  1315. }
  1316. ];
  1317. }
  1318. // Request message for CreateGoogleAdsLink RPC
  1319. message CreateGoogleAdsLinkRequest {
  1320. // Required. Example format: properties/1234
  1321. string parent = 1 [
  1322. (google.api.field_behavior) = REQUIRED,
  1323. (google.api.resource_reference) = {
  1324. child_type: "analyticsadmin.googleapis.com/GoogleAdsLink"
  1325. }
  1326. ];
  1327. // Required. The GoogleAdsLink to create.
  1328. GoogleAdsLink google_ads_link = 2 [(google.api.field_behavior) = REQUIRED];
  1329. }
  1330. // Request message for UpdateGoogleAdsLink RPC
  1331. message UpdateGoogleAdsLinkRequest {
  1332. // The GoogleAdsLink to update
  1333. GoogleAdsLink google_ads_link = 1;
  1334. // Required. The list of fields to be updated. Field names must be in snake case
  1335. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  1336. // the entire entity, use one path with the string "*" to match all fields.
  1337. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1338. }
  1339. // Request message for DeleteGoogleAdsLink RPC.
  1340. message DeleteGoogleAdsLinkRequest {
  1341. // Required. Example format: properties/1234/googleAdsLinks/5678
  1342. string name = 1 [
  1343. (google.api.field_behavior) = REQUIRED,
  1344. (google.api.resource_reference) = {
  1345. type: "analyticsadmin.googleapis.com/GoogleAdsLink"
  1346. }
  1347. ];
  1348. }
  1349. // Request message for ListGoogleAdsLinks RPC.
  1350. message ListGoogleAdsLinksRequest {
  1351. // Required. Example format: properties/1234
  1352. string parent = 1 [
  1353. (google.api.field_behavior) = REQUIRED,
  1354. (google.api.resource_reference) = {
  1355. child_type: "analyticsadmin.googleapis.com/GoogleAdsLink"
  1356. }
  1357. ];
  1358. // The maximum number of resources to return.
  1359. // If unspecified, at most 50 resources will be returned.
  1360. // The maximum value is 200 (higher values will be coerced to the maximum).
  1361. int32 page_size = 2;
  1362. // A page token, received from a previous `ListGoogleAdsLinks` call.
  1363. // Provide this to retrieve the subsequent page.
  1364. //
  1365. // When paginating, all other parameters provided to `ListGoogleAdsLinks` must
  1366. // match the call that provided the page token.
  1367. string page_token = 3;
  1368. }
  1369. // Response message for ListGoogleAdsLinks RPC.
  1370. message ListGoogleAdsLinksResponse {
  1371. // List of GoogleAdsLinks.
  1372. repeated GoogleAdsLink google_ads_links = 1;
  1373. // A token, which can be sent as `page_token` to retrieve the next page.
  1374. // If this field is omitted, there are no subsequent pages.
  1375. string next_page_token = 2;
  1376. }
  1377. // Request message for GetDataSharingSettings RPC.
  1378. message GetDataSharingSettingsRequest {
  1379. // Required. The name of the settings to lookup.
  1380. // Format: accounts/{account}/dataSharingSettings
  1381. // Example: "accounts/1000/dataSharingSettings"
  1382. string name = 1 [
  1383. (google.api.field_behavior) = REQUIRED,
  1384. (google.api.resource_reference) = {
  1385. type: "analyticsadmin.googleapis.com/DataSharingSettings"
  1386. }
  1387. ];
  1388. }
  1389. // Request message for ListAccountSummaries RPC.
  1390. message ListAccountSummariesRequest {
  1391. // The maximum number of AccountSummary resources to return. The service may
  1392. // return fewer than this value, even if there are additional pages.
  1393. // If unspecified, at most 50 resources will be returned.
  1394. // The maximum value is 200; (higher values will be coerced to the maximum)
  1395. int32 page_size = 1;
  1396. // A page token, received from a previous `ListAccountSummaries` call.
  1397. // Provide this to retrieve the subsequent page.
  1398. // When paginating, all other parameters provided to `ListAccountSummaries`
  1399. // must match the call that provided the page token.
  1400. string page_token = 2;
  1401. }
  1402. // Response message for ListAccountSummaries RPC.
  1403. message ListAccountSummariesResponse {
  1404. // Account summaries of all accounts the caller has access to.
  1405. repeated AccountSummary account_summaries = 1;
  1406. // A token, which can be sent as `page_token` to retrieve the next page.
  1407. // If this field is omitted, there are no subsequent pages.
  1408. string next_page_token = 2;
  1409. }
  1410. // Request message for SearchChangeHistoryEvents RPC.
  1411. message SearchChangeHistoryEventsRequest {
  1412. // Required. The account resource for which to return change history resources.
  1413. string account = 1 [
  1414. (google.api.field_behavior) = REQUIRED,
  1415. (google.api.resource_reference) = {
  1416. type: "analyticsadmin.googleapis.com/Account"
  1417. }
  1418. ];
  1419. // Optional. Resource name for a child property. If set, only return changes
  1420. // made to this property or its child resources.
  1421. string property = 2 [
  1422. (google.api.field_behavior) = OPTIONAL,
  1423. (google.api.resource_reference) = {
  1424. type: "analyticsadmin.googleapis.com/Property"
  1425. }
  1426. ];
  1427. // Optional. If set, only return changes if they are for a resource that matches at
  1428. // least one of these types.
  1429. repeated ChangeHistoryResourceType resource_type = 3 [(google.api.field_behavior) = OPTIONAL];
  1430. // Optional. If set, only return changes that match one or more of these types of
  1431. // actions.
  1432. repeated ActionType action = 4 [(google.api.field_behavior) = OPTIONAL];
  1433. // Optional. If set, only return changes if they are made by a user in this list.
  1434. repeated string actor_email = 5 [(google.api.field_behavior) = OPTIONAL];
  1435. // Optional. If set, only return changes made after this time (inclusive).
  1436. google.protobuf.Timestamp earliest_change_time = 6 [(google.api.field_behavior) = OPTIONAL];
  1437. // Optional. If set, only return changes made before this time (inclusive).
  1438. google.protobuf.Timestamp latest_change_time = 7 [(google.api.field_behavior) = OPTIONAL];
  1439. // Optional. The maximum number of ChangeHistoryEvent items to return.
  1440. // The service may return fewer than this value, even if there are additional
  1441. // pages. If unspecified, at most 50 items will be returned.
  1442. // The maximum value is 200 (higher values will be coerced to the maximum).
  1443. int32 page_size = 8 [(google.api.field_behavior) = OPTIONAL];
  1444. // Optional. A page token, received from a previous `SearchChangeHistoryEvents` call.
  1445. // Provide this to retrieve the subsequent page. When paginating, all other
  1446. // parameters provided to `SearchChangeHistoryEvents` must match the call that
  1447. // provided the page token.
  1448. string page_token = 9 [(google.api.field_behavior) = OPTIONAL];
  1449. }
  1450. // Response message for SearchAccounts RPC.
  1451. message SearchChangeHistoryEventsResponse {
  1452. // Results that were accessible to the caller.
  1453. repeated ChangeHistoryEvent change_history_events = 1;
  1454. // A token, which can be sent as `page_token` to retrieve the next page.
  1455. // If this field is omitted, there are no subsequent pages.
  1456. string next_page_token = 2;
  1457. }
  1458. // Request message for GetMeasurementProtocolSecret RPC.
  1459. message GetMeasurementProtocolSecretRequest {
  1460. // Required. The name of the measurement protocol secret to lookup.
  1461. // Format:
  1462. // properties/{property}/webDataStreams/{webDataStream}/measurementProtocolSecrets/{measurementProtocolSecret}
  1463. // Note: Any type of stream (WebDataStream, IosAppDataStream,
  1464. // AndroidAppDataStream) may be a parent.
  1465. string name = 1 [
  1466. (google.api.field_behavior) = REQUIRED,
  1467. (google.api.resource_reference) = {
  1468. type: "analyticsadmin.googleapis.com/MeasurementProtocolSecret"
  1469. }
  1470. ];
  1471. }
  1472. // Request message for CreateMeasurementProtocolSecret RPC
  1473. message CreateMeasurementProtocolSecretRequest {
  1474. // Required. The parent resource where this secret will be created.
  1475. // Any type of stream (WebDataStream, IosAppDataStream, AndroidAppDataStream)
  1476. // may be a parent.
  1477. // Format: properties/{property}/webDataStreams/{webDataStream}
  1478. string parent = 1 [
  1479. (google.api.field_behavior) = REQUIRED,
  1480. (google.api.resource_reference) = {
  1481. child_type: "analyticsadmin.googleapis.com/MeasurementProtocolSecret"
  1482. }
  1483. ];
  1484. // Required. The measurement protocol secret to create.
  1485. MeasurementProtocolSecret measurement_protocol_secret = 2 [(google.api.field_behavior) = REQUIRED];
  1486. }
  1487. // Request message for DeleteMeasurementProtocolSecret RPC
  1488. message DeleteMeasurementProtocolSecretRequest {
  1489. // Required. The name of the MeasurementProtocolSecret to delete.
  1490. // Format:
  1491. // properties/{property}/webDataStreams/{webDataStream}/measurementProtocolSecrets/{measurementProtocolSecret}
  1492. // Note: Any type of stream (WebDataStream, IosAppDataStream,
  1493. // AndroidAppDataStream) may be a parent.
  1494. string name = 1 [
  1495. (google.api.field_behavior) = REQUIRED,
  1496. (google.api.resource_reference) = {
  1497. type: "analyticsadmin.googleapis.com/MeasurementProtocolSecret"
  1498. }
  1499. ];
  1500. }
  1501. // Request message for UpdateMeasurementProtocolSecret RPC
  1502. message UpdateMeasurementProtocolSecretRequest {
  1503. // Required. The measurement protocol secret to update.
  1504. MeasurementProtocolSecret measurement_protocol_secret = 1 [(google.api.field_behavior) = REQUIRED];
  1505. // The list of fields to be updated. Omitted fields will not be updated.
  1506. google.protobuf.FieldMask update_mask = 2;
  1507. }
  1508. // Request message for ListMeasurementProtocolSecret RPC
  1509. message ListMeasurementProtocolSecretsRequest {
  1510. // Required. The resource name of the parent stream.
  1511. // Any type of stream (WebDataStream, IosAppDataStream, AndroidAppDataStream)
  1512. // may be a parent.
  1513. // Format:
  1514. // properties/{property}/webDataStreams/{webDataStream}/measurementProtocolSecrets
  1515. string parent = 1 [
  1516. (google.api.field_behavior) = REQUIRED,
  1517. (google.api.resource_reference) = {
  1518. child_type: "analyticsadmin.googleapis.com/MeasurementProtocolSecret"
  1519. }
  1520. ];
  1521. // The maximum number of resources to return.
  1522. // If unspecified, at most 10 resources will be returned.
  1523. // The maximum value is 10. Higher values will be coerced to the maximum.
  1524. int32 page_size = 2;
  1525. // A page token, received from a previous `ListMeasurementProtocolSecrets`
  1526. // call. Provide this to retrieve the subsequent page. When paginating, all
  1527. // other parameters provided to `ListMeasurementProtocolSecrets` must match
  1528. // the call that provided the page token.
  1529. string page_token = 3;
  1530. }
  1531. // Response message for ListMeasurementProtocolSecret RPC
  1532. message ListMeasurementProtocolSecretsResponse {
  1533. // A list of secrets for the parent stream specified in the request.
  1534. repeated MeasurementProtocolSecret measurement_protocol_secrets = 1;
  1535. // A token, which can be sent as `page_token` to retrieve the next page.
  1536. // If this field is omitted, there are no subsequent pages.
  1537. string next_page_token = 2;
  1538. }
  1539. // Request message for GetGoogleSignalsSettings RPC
  1540. message GetGoogleSignalsSettingsRequest {
  1541. // Required. The name of the google signals settings to retrieve.
  1542. // Format: properties/{property}/googleSignalsSettings
  1543. string name = 1 [
  1544. (google.api.field_behavior) = REQUIRED,
  1545. (google.api.resource_reference) = {
  1546. type: "analyticsadmin.googleapis.com/GoogleSignalsSettings"
  1547. }
  1548. ];
  1549. }
  1550. // Request message for UpdateGoogleSignalsSettings RPC
  1551. message UpdateGoogleSignalsSettingsRequest {
  1552. // Required. The settings to update.
  1553. // The `name` field is used to identify the settings to be updated.
  1554. GoogleSignalsSettings google_signals_settings = 1 [(google.api.field_behavior) = REQUIRED];
  1555. // Required. The list of fields to be updated. Field names must be in snake case
  1556. // (e.g., "field_to_update"). Omitted fields will not be updated. To replace
  1557. // the entire entity, use one path with the string "*" to match all fields.
  1558. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1559. }
  1560. // Request message for CreateConversionEvent RPC
  1561. message CreateConversionEventRequest {
  1562. // Required. The conversion event to create.
  1563. ConversionEvent conversion_event = 1 [(google.api.field_behavior) = REQUIRED];
  1564. // Required. The resource name of the parent property where this conversion event will
  1565. // be created. Format: properties/123
  1566. string parent = 2 [
  1567. (google.api.field_behavior) = REQUIRED,
  1568. (google.api.resource_reference) = {
  1569. child_type: "analyticsadmin.googleapis.com/ConversionEvent"
  1570. }
  1571. ];
  1572. }
  1573. // Request message for GetConversionEvent RPC
  1574. message GetConversionEventRequest {
  1575. // Required. The resource name of the conversion event to retrieve.
  1576. // Format: properties/{property}/conversionEvents/{conversion_event}
  1577. // Example: "properties/123/conversionEvents/456"
  1578. string name = 1 [
  1579. (google.api.field_behavior) = REQUIRED,
  1580. (google.api.resource_reference) = {
  1581. type: "analyticsadmin.googleapis.com/ConversionEvent"
  1582. }
  1583. ];
  1584. }
  1585. // Request message for DeleteConversionEvent RPC
  1586. message DeleteConversionEventRequest {
  1587. // Required. The resource name of the conversion event to delete.
  1588. // Format: properties/{property}/conversionEvents/{conversion_event}
  1589. // Example: "properties/123/conversionEvents/456"
  1590. string name = 1 [
  1591. (google.api.field_behavior) = REQUIRED,
  1592. (google.api.resource_reference) = {
  1593. type: "analyticsadmin.googleapis.com/ConversionEvent"
  1594. }
  1595. ];
  1596. }
  1597. // Request message for ListConversionEvents RPC
  1598. message ListConversionEventsRequest {
  1599. // Required. The resource name of the parent property.
  1600. // Example: 'properties/123'
  1601. string parent = 1 [
  1602. (google.api.field_behavior) = REQUIRED,
  1603. (google.api.resource_reference) = {
  1604. child_type: "analyticsadmin.googleapis.com/ConversionEvent"
  1605. }
  1606. ];
  1607. // The maximum number of resources to return.
  1608. // If unspecified, at most 50 resources will be returned.
  1609. // The maximum value is 200; (higher values will be coerced to the maximum)
  1610. int32 page_size = 2;
  1611. // A page token, received from a previous `ListConversionEvents` call.
  1612. // Provide this to retrieve the subsequent page.
  1613. // When paginating, all other parameters provided to `ListConversionEvents`
  1614. // must match the call that provided the page token.
  1615. string page_token = 3;
  1616. }
  1617. // Response message for ListConversionEvents RPC.
  1618. message ListConversionEventsResponse {
  1619. // The requested conversion events
  1620. repeated ConversionEvent conversion_events = 1;
  1621. // A token, which can be sent as `page_token` to retrieve the next page.
  1622. // If this field is omitted, there are no subsequent pages.
  1623. string next_page_token = 2;
  1624. }
  1625. // Request message for CreateCustomDimension RPC.
  1626. message CreateCustomDimensionRequest {
  1627. // Required. Example format: properties/1234
  1628. string parent = 1 [
  1629. (google.api.field_behavior) = REQUIRED,
  1630. (google.api.resource_reference) = {
  1631. child_type: "analyticsadmin.googleapis.com/CustomDimension"
  1632. }
  1633. ];
  1634. // Required. The CustomDimension to create.
  1635. CustomDimension custom_dimension = 2 [(google.api.field_behavior) = REQUIRED];
  1636. }
  1637. // Request message for UpdateCustomDimension RPC.
  1638. message UpdateCustomDimensionRequest {
  1639. // The CustomDimension to update
  1640. CustomDimension custom_dimension = 1;
  1641. // Required. The list of fields to be updated. Omitted fields will not be updated.
  1642. // To replace the entire entity, use one path with the string "*" to match
  1643. // all fields.
  1644. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1645. }
  1646. // Request message for ListCustomDimensions RPC.
  1647. message ListCustomDimensionsRequest {
  1648. // Required. Example format: properties/1234
  1649. string parent = 1 [
  1650. (google.api.field_behavior) = REQUIRED,
  1651. (google.api.resource_reference) = {
  1652. child_type: "analyticsadmin.googleapis.com/CustomDimension"
  1653. }
  1654. ];
  1655. // The maximum number of resources to return.
  1656. // If unspecified, at most 50 resources will be returned.
  1657. // The maximum value is 200 (higher values will be coerced to the maximum).
  1658. int32 page_size = 2;
  1659. // A page token, received from a previous `ListCustomDimensions` call.
  1660. // Provide this to retrieve the subsequent page.
  1661. //
  1662. // When paginating, all other parameters provided to `ListCustomDimensions`
  1663. // must match the call that provided the page token.
  1664. string page_token = 3;
  1665. }
  1666. // Response message for ListCustomDimensions RPC.
  1667. message ListCustomDimensionsResponse {
  1668. // List of CustomDimensions.
  1669. repeated CustomDimension custom_dimensions = 1;
  1670. // A token, which can be sent as `page_token` to retrieve the next page.
  1671. // If this field is omitted, there are no subsequent pages.
  1672. string next_page_token = 2;
  1673. }
  1674. // Request message for ArchiveCustomDimension RPC.
  1675. message ArchiveCustomDimensionRequest {
  1676. // Required. The name of the CustomDimension to archive.
  1677. // Example format: properties/1234/customDimensions/5678
  1678. string name = 1 [
  1679. (google.api.field_behavior) = REQUIRED,
  1680. (google.api.resource_reference) = {
  1681. type: "analyticsadmin.googleapis.com/CustomDimension"
  1682. }
  1683. ];
  1684. }
  1685. // Request message for GetCustomDimension RPC.
  1686. message GetCustomDimensionRequest {
  1687. // Required. The name of the CustomDimension to get.
  1688. // Example format: properties/1234/customDimensions/5678
  1689. string name = 1 [
  1690. (google.api.field_behavior) = REQUIRED,
  1691. (google.api.resource_reference) = {
  1692. type: "analyticsadmin.googleapis.com/CustomDimension"
  1693. }
  1694. ];
  1695. }
  1696. // Request message for CreateCustomMetric RPC.
  1697. message CreateCustomMetricRequest {
  1698. // Required. Example format: properties/1234
  1699. string parent = 1 [
  1700. (google.api.field_behavior) = REQUIRED,
  1701. (google.api.resource_reference) = {
  1702. child_type: "analyticsadmin.googleapis.com/CustomMetric"
  1703. }
  1704. ];
  1705. // Required. The CustomMetric to create.
  1706. CustomMetric custom_metric = 2 [(google.api.field_behavior) = REQUIRED];
  1707. }
  1708. // Request message for UpdateCustomMetric RPC.
  1709. message UpdateCustomMetricRequest {
  1710. // The CustomMetric to update
  1711. CustomMetric custom_metric = 1;
  1712. // Required. The list of fields to be updated. Omitted fields will not be updated.
  1713. // To replace the entire entity, use one path with the string "*" to match
  1714. // all fields.
  1715. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
  1716. }
  1717. // Request message for ListCustomMetrics RPC.
  1718. message ListCustomMetricsRequest {
  1719. // Required. Example format: properties/1234
  1720. string parent = 1 [
  1721. (google.api.field_behavior) = REQUIRED,
  1722. (google.api.resource_reference) = {
  1723. child_type: "analyticsadmin.googleapis.com/CustomMetric"
  1724. }
  1725. ];
  1726. // The maximum number of resources to return.
  1727. // If unspecified, at most 50 resources will be returned.
  1728. // The maximum value is 200 (higher values will be coerced to the maximum).
  1729. int32 page_size = 2;
  1730. // A page token, received from a previous `ListCustomMetrics` call.
  1731. // Provide this to retrieve the subsequent page.
  1732. //
  1733. // When paginating, all other parameters provided to `ListCustomMetrics` must
  1734. // match the call that provided the page token.
  1735. string page_token = 3;
  1736. }
  1737. // Response message for ListCustomMetrics RPC.
  1738. message ListCustomMetricsResponse {
  1739. // List of CustomMetrics.
  1740. repeated CustomMetric custom_metrics = 1;
  1741. // A token, which can be sent as `page_token` to retrieve the next page.
  1742. // If this field is omitted, there are no subsequent pages.
  1743. string next_page_token = 2;
  1744. }
  1745. // Request message for ArchiveCustomMetric RPC.
  1746. message ArchiveCustomMetricRequest {
  1747. // Required. The name of the CustomMetric to archive.
  1748. // Example format: properties/1234/customMetrics/5678
  1749. string name = 1 [
  1750. (google.api.field_behavior) = REQUIRED,
  1751. (google.api.resource_reference) = {
  1752. type: "analyticsadmin.googleapis.com/CustomMetric"
  1753. }
  1754. ];
  1755. }
  1756. // Request message for GetCustomMetric RPC.
  1757. message GetCustomMetricRequest {
  1758. // Required. The name of the CustomMetric to get.
  1759. // Example format: properties/1234/customMetrics/5678
  1760. string name = 1 [
  1761. (google.api.field_behavior) = REQUIRED,
  1762. (google.api.resource_reference) = {
  1763. type: "analyticsadmin.googleapis.com/CustomMetric"
  1764. }
  1765. ];
  1766. }