• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2023 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
15syntax = "proto3";
16
17package google.ads.googleads.v16.services;
18
19import "google/ads/googleads/v16/enums/identity_verification_program.proto";
20import "google/ads/googleads/v16/enums/identity_verification_program_status.proto";
21import "google/api/annotations.proto";
22import "google/api/client.proto";
23import "google/api/field_behavior.proto";
24import "google/protobuf/empty.proto";
25
26option csharp_namespace = "Google.Ads.GoogleAds.V16.Services";
27option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v16/services;services";
28option java_multiple_files = true;
29option java_outer_classname = "IdentityVerificationServiceProto";
30option java_package = "com.google.ads.googleads.v16.services";
31option objc_class_prefix = "GAA";
32option php_namespace = "Google\\Ads\\GoogleAds\\V16\\Services";
33option ruby_package = "Google::Ads::GoogleAds::V16::Services";
34
35// Proto file describing the IdentityVerificatio Service.
36
37// A service for managing Identity Verification Service.
38service IdentityVerificationService {
39  option (google.api.default_host) = "googleads.googleapis.com";
40  option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords";
41
42  // Starts Identity Verification for a given verification program type.
43  //  Statuses are returned.
44  //
45  // List of thrown errors:
46  //   [AuthenticationError]()
47  //   [AuthorizationError]()
48  //   [HeaderError]()
49  //   [InternalError]()
50  //   [QuotaError]()
51  //   [RequestError]()
52  rpc StartIdentityVerification(StartIdentityVerificationRequest)
53      returns (google.protobuf.Empty) {
54    option (google.api.http) = {
55      post: "/v16/customers/{customer_id=*}:startIdentityVerification"
56      body: "*"
57    };
58    option (google.api.method_signature) = "customer_id,verification_program";
59  }
60
61  // Returns Identity Verification information.
62  //
63  // List of thrown errors:
64  //   [AuthenticationError]()
65  //   [AuthorizationError]()
66  //   [HeaderError]()
67  //   [InternalError]()
68  //   [QuotaError]()
69  //   [RequestError]()
70  rpc GetIdentityVerification(GetIdentityVerificationRequest)
71      returns (GetIdentityVerificationResponse) {
72    option (google.api.http) = {
73      get: "/v16/customers/{customer_id=*}/getIdentityVerification"
74    };
75    option (google.api.method_signature) = "customer_id";
76  }
77}
78
79// Request message for
80//  [IdentityVerificationService.StartIdentityVerification].
81message StartIdentityVerificationRequest {
82  // Required. The Id of the customer for whom we are creating this
83  // verification.
84  string customer_id = 1 [(google.api.field_behavior) = REQUIRED];
85
86  // Required. The verification program type for which we want to start the
87  // verification.
88  google.ads.googleads.v16.enums.IdentityVerificationProgramEnum
89      .IdentityVerificationProgram verification_program = 2
90      [(google.api.field_behavior) = REQUIRED];
91}
92
93// Request message for
94//  [IdentityVerificationService.GetIdentityVerification].
95message GetIdentityVerificationRequest {
96  // Required.  The ID of the customer for whom we are requesting verification
97  //  information.
98  string customer_id = 1 [(google.api.field_behavior) = REQUIRED];
99}
100
101// Response message for
102//  [IdentityVerificationService.GetIdentityVerification].
103message GetIdentityVerificationResponse {
104  // List of identity verifications for the customer.
105  repeated IdentityVerification identity_verification = 1;
106}
107
108// An identity verification for a customer.
109message IdentityVerification {
110  // The verification program type.
111  google.ads.googleads.v16.enums.IdentityVerificationProgramEnum
112      .IdentityVerificationProgram verification_program = 1;
113
114  // The verification requirement for this verification program for this
115  // customer.
116  optional IdentityVerificationRequirement identity_verification_requirement =
117      2;
118
119  // Information regarding progress for this verification program for this
120  // customer.
121  optional IdentityVerificationProgress verification_progress = 3;
122}
123
124// Information regarding the verification progress for a verification program
125// type.
126message IdentityVerificationProgress {
127  // Current Status (PENDING_USER_ACTION, SUCCESS, FAILURE etc)
128  google.ads.googleads.v16.enums.IdentityVerificationProgramStatusEnum
129      .IdentityVerificationProgramStatus program_status = 1;
130
131  // The timestamp when the action url will expire in "yyyy-MM-dd HH:mm:ss"
132  // format.
133  string invitation_link_expiration_time = 2;
134
135  // Action URL for user to complete verification for the given verification
136  // program type.
137  string action_url = 3;
138}
139
140// Information regarding the verification requirement for a verification program
141// type.
142message IdentityVerificationRequirement {
143  // The deadline to start verification in "yyyy-MM-dd HH:mm:ss" format.
144  string verification_start_deadline_time = 1;
145
146  // The deadline to submit verification.
147  string verification_completion_deadline_time = 2;
148}
149