Skip to content

Commit af4fc74

Browse files
committed
Add protobuf docs
0 parents  commit af4fc74

1 file changed

Lines changed: 337 additions & 0 deletions

File tree

protobuf/docs.md

Lines changed: 337 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,337 @@
1+
# Protocol Documentation
2+
<a name="top"></a>
3+
4+
## Table of Contents
5+
6+
- [cbws/vpn/v1alpha1/instance.proto](#cbws/vpn/v1alpha1/instance.proto)
7+
- [Instance](#cbws.vpn.v1alpha1.Instance)
8+
- [Profile](#cbws.vpn.v1alpha1.Profile)
9+
10+
- [cbws/vpn/v1alpha1/vpn.proto](#cbws/vpn/v1alpha1/vpn.proto)
11+
- [CreateInstanceRequest](#cbws.vpn.v1alpha1.CreateInstanceRequest)
12+
- [CreateProfileRequest](#cbws.vpn.v1alpha1.CreateProfileRequest)
13+
- [DeleteInstanceRequest](#cbws.vpn.v1alpha1.DeleteInstanceRequest)
14+
- [DeleteProfileRequest](#cbws.vpn.v1alpha1.DeleteProfileRequest)
15+
- [GetInstanceRequest](#cbws.vpn.v1alpha1.GetInstanceRequest)
16+
- [GetProfileRequest](#cbws.vpn.v1alpha1.GetProfileRequest)
17+
- [ListInstancesRequest](#cbws.vpn.v1alpha1.ListInstancesRequest)
18+
- [ListInstancesResponse](#cbws.vpn.v1alpha1.ListInstancesResponse)
19+
- [ListProfilesRequest](#cbws.vpn.v1alpha1.ListProfilesRequest)
20+
- [ListProfilesResponse](#cbws.vpn.v1alpha1.ListProfilesResponse)
21+
- [UpdateInstanceRequest](#cbws.vpn.v1alpha1.UpdateInstanceRequest)
22+
- [UpdateProfileRequest](#cbws.vpn.v1alpha1.UpdateProfileRequest)
23+
24+
- [VPNService](#cbws.vpn.v1alpha1.VPNService)
25+
26+
- [Scalar Value Types](#scalar-value-types)
27+
28+
29+
30+
<a name="cbws/vpn/v1alpha1/instance.proto"></a>
31+
<p align="right"><a href="#top">Top</a></p>
32+
33+
## cbws/vpn/v1alpha1/instance.proto
34+
35+
36+
37+
<a name="cbws.vpn.v1alpha1.Instance"></a>
38+
39+
### Instance
40+
41+
42+
43+
| Field | Type | Label | Description |
44+
| ----- | ---- | ----- | ----------- |
45+
| name | [string](#string) | | |
46+
| parent | [string](#string) | | |
47+
| display_name | [string](#string) | | |
48+
| ipv6_prefix | [string](#string) | | The IPv6 prefix from which profile addresses will be allocated |
49+
| ipv6_default_gateway | [bool](#bool) | | Whether to make the VPN the default IPv6 gateway on profile clients |
50+
| ipv4_default_gateway | [bool](#bool) | | Whether to make the VPN the default IPv4 gateway on profile clients This is not recommended and only included for completeness and specific use-cases. IPv6 should be used for accessing private services whenever possible. |
51+
52+
53+
54+
55+
56+
57+
<a name="cbws.vpn.v1alpha1.Profile"></a>
58+
59+
### Profile
60+
61+
62+
63+
| Field | Type | Label | Description |
64+
| ----- | ---- | ----- | ----------- |
65+
| name | [string](#string) | | |
66+
| parent | [string](#string) | | |
67+
| display_name | [string](#string) | | |
68+
| ipv6_prefix | [string](#string) | | The IPv6 prefix that gets routed to the profile client Read-only |
69+
| ipv6_address | [string](#string) | | The IPv6 address assigned to the profile client Read-only |
70+
| ipv6_gateway_address | [string](#string) | | The IPv6 remote peer address that gets send to the profile client Read-only |
71+
| ipv4_464xlat_address | [string](#string) | | The IPv6 address used as source for translated IPv4 packets Read-only |
72+
| ipv4_address | [string](#string) | | The IPv4 address assigned to the profile client Read-only |
73+
| ipv4_gateway_address | [string](#string) | | The IPv4 remote peer address that gets send to the profile client Read-only |
74+
| profile_archive | [bytes](#bytes) | | A ZIP archive containing the certificates and OpenVPN profile. Only available during create |
75+
| ca_certificate | [string](#string) | | The CA certificate for the client and server certificate. Only available during create |
76+
| certificate | [string](#string) | | The certificate to be used by the client. Only available during create |
77+
| private_key | [string](#string) | | The private key to be used by the client. Only available during create |
78+
79+
80+
81+
82+
83+
84+
85+
86+
87+
88+
89+
90+
91+
92+
93+
<a name="cbws/vpn/v1alpha1/vpn.proto"></a>
94+
<p align="right"><a href="#top">Top</a></p>
95+
96+
## cbws/vpn/v1alpha1/vpn.proto
97+
98+
99+
100+
<a name="cbws.vpn.v1alpha1.CreateInstanceRequest"></a>
101+
102+
### CreateInstanceRequest
103+
104+
105+
106+
| Field | Type | Label | Description |
107+
| ----- | ---- | ----- | ----------- |
108+
| parent | [string](#string) | | Required. The resource name of the project associated with the service accounts, such as `projects/my-project-123`. |
109+
| name | [string](#string) | | Required. The name of the instance, without the projects prefix |
110+
| instance | [Instance](#cbws.vpn.v1alpha1.Instance) | | The [Instance][cbws.vpn.v1alpha1.Instance] resource to create. Currently, only the following values are user assignable: `display_name` and `description`. |
111+
112+
113+
114+
115+
116+
117+
<a name="cbws.vpn.v1alpha1.CreateProfileRequest"></a>
118+
119+
### CreateProfileRequest
120+
121+
122+
123+
| Field | Type | Label | Description |
124+
| ----- | ---- | ----- | ----------- |
125+
| parent | [string](#string) | | Required. The resource name of the project associated with the service accounts, such as `projects/my-project-123`. |
126+
| name | [string](#string) | | Required. The name of the instance, without the projects prefix |
127+
| profile | [Profile](#cbws.vpn.v1alpha1.Profile) | | The [Instance][cbws.vpn.v1alpha1.Instance] resource to create. Currently, only the following values are user assignable: `display_name` and `description`. |
128+
129+
130+
131+
132+
133+
134+
<a name="cbws.vpn.v1alpha1.DeleteInstanceRequest"></a>
135+
136+
### DeleteInstanceRequest
137+
The instance delete request.
138+
139+
140+
| Field | Type | Label | Description |
141+
| ----- | ---- | ----- | ----------- |
142+
| name | [string](#string) | | Required. The resource name of the instance in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the instance. |
143+
144+
145+
146+
147+
148+
149+
<a name="cbws.vpn.v1alpha1.DeleteProfileRequest"></a>
150+
151+
### DeleteProfileRequest
152+
The instance delete request.
153+
154+
155+
| Field | Type | Label | Description |
156+
| ----- | ---- | ----- | ----------- |
157+
| name | [string](#string) | | Required. The resource name of the instance in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the instance. |
158+
159+
160+
161+
162+
163+
164+
<a name="cbws.vpn.v1alpha1.GetInstanceRequest"></a>
165+
166+
### GetInstanceRequest
167+
The instance get request.
168+
169+
170+
| Field | Type | Label | Description |
171+
| ----- | ---- | ----- | ----------- |
172+
| name | [string](#string) | | Required. The resource name of the instance in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the instance. |
173+
174+
175+
176+
177+
178+
179+
<a name="cbws.vpn.v1alpha1.GetProfileRequest"></a>
180+
181+
### GetProfileRequest
182+
The instance get request.
183+
184+
185+
| Field | Type | Label | Description |
186+
| ----- | ---- | ----- | ----------- |
187+
| name | [string](#string) | | Required. The resource name of the instance in the following format: `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. Using `-` as a wildcard for the `PROJECT_ID` will infer the project from the account. The `ACCOUNT` value can be the `email` address or the `unique_id` of the instance. |
188+
189+
190+
191+
192+
193+
194+
<a name="cbws.vpn.v1alpha1.ListInstancesRequest"></a>
195+
196+
### ListInstancesRequest
197+
The instance list request.
198+
199+
200+
| Field | Type | Label | Description |
201+
| ----- | ---- | ----- | ----------- |
202+
| parent | [string](#string) | | Required. The resource name of the project associated with the service accounts, such as `projects/my-project-123`. |
203+
| page_size | [int32](#int32) | | Optional limit on the number of instances to include in the response. Further accounts can subsequently be obtained by including the [ListInstancesResponse.next_page_token][cbws.vpn.v1alpha1.ListInstancesResponse.next_page_token] in a subsequent request. |
204+
| page_token | [string](#string) | | Optional pagination token returned in an earlier [ListInstancesResponse.next_page_token][cbws.vpn.v1alpha1.ListInstancesResponse.next_page_token]. |
205+
206+
207+
208+
209+
210+
211+
<a name="cbws.vpn.v1alpha1.ListInstancesResponse"></a>
212+
213+
### ListInstancesResponse
214+
The instance list response.
215+
216+
217+
| Field | Type | Label | Description |
218+
| ----- | ---- | ----- | ----------- |
219+
| instances | [Instance](#cbws.vpn.v1alpha1.Instance) | repeated | The list of matching instances. |
220+
| next_page_token | [string](#string) | | To retrieve the next page of results, set [ListInstancesRequest.page_token][cbws.vpn.v1alpha1.ListInstancesRequest.page_token] to this value. |
221+
222+
223+
224+
225+
226+
227+
<a name="cbws.vpn.v1alpha1.ListProfilesRequest"></a>
228+
229+
### ListProfilesRequest
230+
The instance list request.
231+
232+
233+
| Field | Type | Label | Description |
234+
| ----- | ---- | ----- | ----------- |
235+
| parent | [string](#string) | | |
236+
| page_size | [int32](#int32) | | Optional limit on the number of instances to include in the response. Further accounts can subsequently be obtained by including the [ListInstancesResponse.next_page_token][cbws.vpn.v1alpha1.ListInstancesResponse.next_page_token] in a subsequent request. |
237+
| page_token | [string](#string) | | Optional pagination token returned in an earlier [ListInstancesResponse.next_page_token][cbws.vpn.v1alpha1.ListInstancesResponse.next_page_token]. |
238+
239+
240+
241+
242+
243+
244+
<a name="cbws.vpn.v1alpha1.ListProfilesResponse"></a>
245+
246+
### ListProfilesResponse
247+
The instance list response.
248+
249+
250+
| Field | Type | Label | Description |
251+
| ----- | ---- | ----- | ----------- |
252+
| profiles | [Profile](#cbws.vpn.v1alpha1.Profile) | repeated | The list of matching profiles. |
253+
| next_page_token | [string](#string) | | To retrieve the next page of results, set [ListInstancesRequest.page_token][cbws.vpn.v1alpha1.ListInstancesRequest.page_token] to this value. |
254+
255+
256+
257+
258+
259+
260+
<a name="cbws.vpn.v1alpha1.UpdateInstanceRequest"></a>
261+
262+
### UpdateInstanceRequest
263+
264+
265+
266+
| Field | Type | Label | Description |
267+
| ----- | ---- | ----- | ----------- |
268+
| instance | [Instance](#cbws.vpn.v1alpha1.Instance) | | The [Instance][cbws.vpn.v1alpha1.Instance] resource to create. Currently, only the following values are user assignable: `display_name` and `description`. |
269+
270+
271+
272+
273+
274+
275+
<a name="cbws.vpn.v1alpha1.UpdateProfileRequest"></a>
276+
277+
### UpdateProfileRequest
278+
279+
280+
281+
| Field | Type | Label | Description |
282+
| ----- | ---- | ----- | ----------- |
283+
| profile | [Profile](#cbws.vpn.v1alpha1.Profile) | | The [Profile][cbws.vpn.v1alpha1.Instance] resource to create. Currently, only the following values are user assignable: `display_name` and `description`. |
284+
285+
286+
287+
288+
289+
290+
291+
292+
293+
294+
295+
296+
<a name="cbws.vpn.v1alpha1.VPNService"></a>
297+
298+
### VPNService
299+
300+
301+
| Method Name | Request Type | Response Type | Description |
302+
| ----------- | ------------ | ------------- | ------------|
303+
| ListInstances | [ListInstancesRequest](#cbws.vpn.v1alpha1.ListInstancesRequest) | [ListInstancesResponse](#cbws.vpn.v1alpha1.ListInstancesResponse) | |
304+
| GetInstance | [GetInstanceRequest](#cbws.vpn.v1alpha1.GetInstanceRequest) | [Instance](#cbws.vpn.v1alpha1.Instance) | |
305+
| CreateInstance | [CreateInstanceRequest](#cbws.vpn.v1alpha1.CreateInstanceRequest) | [Instance](#cbws.vpn.v1alpha1.Instance) | |
306+
| UpdateInstance | [UpdateInstanceRequest](#cbws.vpn.v1alpha1.UpdateInstanceRequest) | [Instance](#cbws.vpn.v1alpha1.Instance) | |
307+
| DeleteInstance | [DeleteInstanceRequest](#cbws.vpn.v1alpha1.DeleteInstanceRequest) | [.google.protobuf.Empty](#google.protobuf.Empty) | Deletes a VPN instance |
308+
| ListProfiles | [ListProfilesRequest](#cbws.vpn.v1alpha1.ListProfilesRequest) | [ListProfilesResponse](#cbws.vpn.v1alpha1.ListProfilesResponse) | |
309+
| GetProfile | [GetProfileRequest](#cbws.vpn.v1alpha1.GetProfileRequest) | [Profile](#cbws.vpn.v1alpha1.Profile) | |
310+
| CreateProfile | [CreateProfileRequest](#cbws.vpn.v1alpha1.CreateProfileRequest) | [Profile](#cbws.vpn.v1alpha1.Profile) | |
311+
| UpdateProfile | [UpdateProfileRequest](#cbws.vpn.v1alpha1.UpdateProfileRequest) | [Profile](#cbws.vpn.v1alpha1.Profile) | |
312+
| DeleteProfile | [DeleteProfileRequest](#cbws.vpn.v1alpha1.DeleteProfileRequest) | [.google.protobuf.Empty](#google.protobuf.Empty) | Deletes a VPN profile. |
313+
314+
315+
316+
317+
318+
## Scalar Value Types
319+
320+
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
321+
| ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- |
322+
| <a name="double" /> double | | double | double | float | float64 | double | float | Float |
323+
| <a name="float" /> float | | float | float | float | float32 | float | float | Float |
324+
| <a name="int32" /> int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
325+
| <a name="int64" /> int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum |
326+
| <a name="uint32" /> uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) |
327+
| <a name="uint64" /> uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) |
328+
| <a name="sint32" /> sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
329+
| <a name="sint64" /> sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum |
330+
| <a name="fixed32" /> fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) |
331+
| <a name="fixed64" /> fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum |
332+
| <a name="sfixed32" /> sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
333+
| <a name="sfixed64" /> sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum |
334+
| <a name="bool" /> bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass |
335+
| <a name="string" /> string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
336+
| <a name="bytes" /> bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |
337+

0 commit comments

Comments
 (0)