Skip to content

Commit cea8158

Browse files
committed
Adding code comments for templates and template fragments
1 parent 1da4ee6 commit cea8158

File tree

2 files changed

+141
-0
lines changed

2 files changed

+141
-0
lines changed

lib/vonage/verify2/template_fragments.rb

+85
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,65 @@ class Verify2::TemplateFragments < Namespace
99

1010
self.request_body = JSON
1111

12+
# Get a list of of template fragments for a specific template.
13+
#
14+
# @example
15+
# template_fragment_list = client.verify2.template_fragments.list(template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9')
16+
#
17+
# @param [required, String] :template_id. The ID of the template for which to retreive the fragments
18+
#
19+
# @param [optional, Integer] :page_size. The amount of template fragments to list per page
20+
#
21+
# @param [optional, Integer] :page. The page number to retrieve
22+
#
23+
# @return [ListResponse]
24+
#
25+
# @see https://developer.vonage.com/en/api/verify.v2#listTemplateFragments
1226
def list(template_id:, **params)
1327
request("/v2/verify/templates/#{template_id}/template_fragments", params: params, response_class: ListResponse)
1428
end
1529

30+
# Get details of a specific template fragment.
31+
#
32+
# @example
33+
# template_fragment = client.verify2.template_fragments.info(
34+
# template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9',
35+
# template_fragment_id: 'c70f446e-997a-4313-a081-60a02a31dc19'
36+
# )
37+
#
38+
# @param [required, String] :template_id. The ID of the template for which to retreive the fragment
39+
#
40+
# @param [required, String] :template_fragment_id. The ID of the fragment to be retreived
41+
#
42+
# @return [Response]
43+
#
44+
# @see https://developer.vonage.com/en/api/verify.v2#getTemplateFragment
1645
def info(template_id:, template_fragment_id:)
1746
request("/v2/verify/templates/#{template_id}/template_fragments/#{template_fragment_id}")
1847
end
1948

49+
# Create a new template fragment.
50+
#
51+
# @example
52+
# client.verify2.template_fragments.create(
53+
# template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9',
54+
# channel: 'sms',
55+
# locale: 'en-gb',
56+
# text: 'Your code is: ${code}'
57+
# )
58+
#
59+
# @param [required, String] :template_id. The ID of the template for which to create the fragment
60+
#
61+
# @param [required, String] :channel. The verification channel for which to create the fragment. Must be one of 'sms' or 'voice'
62+
#
63+
# @param [required, String] :locale. The locale for which to create the fragment.
64+
#
65+
# @param [required, String] :text. The text to be used in the template fragment.
66+
# There are 4 reserved variables available to use as part of the text: ${code}, ${brand}, ${time-limit} and ${time-limit-unit}
67+
#
68+
# @return [Response]
69+
#
70+
# @see https://developer.vonage.com/en/api/verify.v2#addTemplateFragmentToTemplate
2071
def create(template_id:, channel:, locale:, text:)
2172
raise ArgumentError, "Invalid 'channel' #{channel}. Must be one of #{CHANNELS.join(', ')}" unless CHANNELS.include?(channel)
2273
request(
@@ -29,10 +80,44 @@ def create(template_id:, channel:, locale:, text:)
2980
type: Post)
3081
end
3182

83+
# Update an existing template fragment.
84+
#
85+
# @example
86+
# client.verify2.template_fragments.update(
87+
# template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9',
88+
# template_fragment_id: 'c70f446e-997a-4313-a081-60a02a31dc19,
89+
# text: 'Your one-time code is: ${code}'
90+
# )
91+
#
92+
# @param [required, String] :template_id. The ID of the template with which the fragment to be updated is associated
93+
#
94+
# @param [required, String] :template_fragment_id. The ID of the fragment to be updated
95+
#
96+
# @param [required, String] :text. The text to be used in the template fragment.
97+
# There are 4 reserved variables available to use as part of the text: ${code}, ${brand}, ${time-limit} and ${time-limit-unit}
98+
#
99+
# @return [Response]
100+
#
101+
# @see https://developer.vonage.com/en/api/verify.v2#updateTemplateFragment
32102
def update(template_id:, template_fragment_id:, text:)
33103
request("/v2/verify/templates/#{template_id}/template_fragments/#{template_fragment_id}", params: {text: text}, type: Patch)
34104
end
35105

106+
# Delete a template fragment.
107+
#
108+
# @example
109+
# client.verify2.template_fragments.delete(
110+
# template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9',
111+
# template_fragment_id: 'c70f446e-997a-4313-a081-60a02a31dc19'
112+
# )
113+
#
114+
# @param [required, String] :template_id. The ID of the template with which the fragment to be deleted is associated
115+
#
116+
# @param [required, String] :template_fragment_id. The ID of the fragment to be deleted
117+
#
118+
# @return [Response]
119+
#
120+
# @see https://developer.vonage.com/en/api/verify.v2#deleteTemplateFragment
36121
def delete(template_id:, template_fragment_id:)
37122
request("/v2/verify/templates/#{template_id}/template_fragments/#{template_fragment_id}", type: Delete)
38123
end

lib/vonage/verify2/templates.rb

+56
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,78 @@ class Verify2::Templates < Namespace
77

88
self.request_body = JSON
99

10+
# Get a list of all templates.
11+
#
12+
# @example
13+
# template_list = client.verify2.templates.list
14+
#
15+
# @param [optional, Integer] :page_size. The amount of templates to list per page
16+
#
17+
# @param [optional, Integer] :page. The page number to retrieve
18+
#
19+
# @return [ListResponse]
20+
#
21+
# @see https://developer.vonage.com/en/api/verify.v2#listTemplates
1022
def list(**params)
1123
request('/v2/verify/templates', params: params, response_class: ListResponse)
1224
end
1325

26+
# Get details of a specific template.
27+
#
28+
# @example
29+
# template = client.verify2.templates.info(template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9')
30+
#
31+
# @param [required, String] :template_id. The ID of the template to be retreived
32+
#
33+
# @return [Response]
34+
#
35+
# @see https://developer.vonage.com/en/api/verify.v2#getTemplate
1436
def info(template_id:)
1537
request('/v2/verify/templates/' + template_id)
1638
end
1739

40+
# Create a new template.
41+
#
42+
# @example
43+
# client.verify2.templates.create(name: 'my-template')
44+
#
45+
# @param [required, String] :name. The name of the template. The following characters are permitted: [A-Z a-z 0-9 _ -]
46+
#
47+
# @return [Response]
48+
#
49+
# @see https://developer.vonage.com/en/api/verify.v2#createTemplate
1850
def create(name:)
1951
request('/v2/verify/templates', params: { name: name }, type: Post)
2052
end
2153

54+
# Update an existing template.
55+
#
56+
# @example
57+
# client.verify2.templates.update(template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9', name: 'my-updated-template')
58+
#
59+
# @param [required, String] :template_id. The ID of the template to be updated
60+
#
61+
# @param [optional, String] :name. The name of the template. The following characters are permitted: [A-Z a-z 0-9 _ -]
62+
#
63+
# @param [optional, Boolean] :is_default. Whether the template is the default template for a specific locale/channel combination
64+
#
65+
# @return [Response]
66+
#
67+
# @see https://developer.vonage.com/en/api/verify.v2#updateTemplate
2268
def update(template_id:, **params)
2369
request('/v2/verify/templates/' + template_id, params: params, type: Patch)
2470
end
2571

72+
# Delete a template.
73+
#
74+
# @example
75+
# client.verify2.templates.delete(template_id: '8f35a1a7-eb2f-4552-8fdf-fffdaee41bc9')
76+
#
77+
# @param [required, String] :template_id. The ID of the template to be deleted
78+
#
79+
# @return [Response]
80+
#
81+
# @see https://developer.vonage.com/en/api/verify.v2#deleteTemplate
2682
def delete(template_id:)
2783
request('/v2/verify/templates/' + template_id, type: Delete)
2884
end

0 commit comments

Comments
 (0)