dropbox-sign 1.5.0 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +24 -5
- data/VERSION +1 -1
- data/docs/AccountCreateResponse.md +1 -1
- data/docs/AccountGetResponse.md +1 -1
- data/docs/ApiAppGetResponse.md +1 -1
- data/docs/ApiAppListResponse.md +2 -2
- data/docs/BulkSendJobGetResponse.md +3 -3
- data/docs/BulkSendJobListResponse.md +2 -2
- data/docs/BulkSendJobSendResponse.md +1 -1
- data/docs/EmbeddedEditUrlResponse.md +1 -1
- data/docs/EmbeddedSignUrlResponse.md +1 -1
- data/docs/FaxLineAddUserRequest.md +12 -0
- data/docs/FaxLineApi.md +503 -0
- data/docs/FaxLineAreaCodeGetCountryEnum.md +9 -0
- data/docs/FaxLineAreaCodeGetProvinceEnum.md +9 -0
- data/docs/FaxLineAreaCodeGetResponse.md +10 -0
- data/docs/FaxLineAreaCodeGetStateEnum.md +9 -0
- data/docs/FaxLineCreateRequest.md +13 -0
- data/docs/FaxLineDeleteRequest.md +10 -0
- data/docs/FaxLineListResponse.md +12 -0
- data/docs/FaxLineRemoveUserRequest.md +12 -0
- data/docs/FaxLineResponse.md +11 -0
- data/docs/FaxLineResponseFaxLine.md +13 -0
- data/docs/FileResponse.md +2 -2
- data/docs/FileResponseDataUri.md +1 -1
- data/docs/ReportCreateResponse.md +1 -1
- data/docs/SignatureRequestGetResponse.md +1 -1
- data/docs/SignatureRequestListResponse.md +2 -2
- data/docs/TeamGetInfoResponse.md +1 -1
- data/docs/TeamGetResponse.md +1 -1
- data/docs/TeamInvitesResponse.md +1 -1
- data/docs/TeamMembersResponse.md +2 -2
- data/docs/TeamSubTeamsResponse.md +2 -2
- data/docs/TemplateCreateEmbeddedDraftResponse.md +1 -1
- data/docs/TemplateCreateResponse.md +1 -1
- data/docs/TemplateEditResponse.md +1 -1
- data/docs/TemplateGetResponse.md +1 -1
- data/docs/TemplateListResponse.md +2 -2
- data/docs/TemplateUpdateFilesResponse.md +1 -1
- data/docs/UnclaimedDraftCreateResponse.md +1 -1
- data/dropbox-sign.gemspec +1 -1
- data/examples/FaxLineAddUser.rb +19 -0
- data/examples/FaxLineAreaCodeGet.rb +15 -0
- data/examples/FaxLineCreate.rb +19 -0
- data/examples/FaxLineDelete.rb +17 -0
- data/examples/FaxLineGet.rb +15 -0
- data/examples/FaxLineList.rb +15 -0
- data/examples/FaxLineRemoveUser.rb +19 -0
- data/lib/dropbox-sign/api/account_api.rb +5 -5
- data/lib/dropbox-sign/api/api_app_api.rb +6 -6
- data/lib/dropbox-sign/api/bulk_send_job_api.rb +3 -3
- data/lib/dropbox-sign/api/embedded_api.rb +3 -3
- data/lib/dropbox-sign/api/fax_line_api.rb +746 -0
- data/lib/dropbox-sign/api/o_auth_api.rb +3 -3
- data/lib/dropbox-sign/api/report_api.rb +2 -2
- data/lib/dropbox-sign/api/signature_request_api.rb +17 -17
- data/lib/dropbox-sign/api/team_api.rb +11 -11
- data/lib/dropbox-sign/api/template_api.rb +12 -12
- data/lib/dropbox-sign/api/unclaimed_draft_api.rb +5 -5
- data/lib/dropbox-sign/api_client.rb +2 -3
- data/lib/dropbox-sign/api_error.rb +5 -2
- data/lib/dropbox-sign/configuration.rb +1 -1
- data/lib/dropbox-sign/event_callback_helper.rb +1 -1
- data/lib/dropbox-sign/models/account_create_request.rb +11 -12
- data/lib/dropbox-sign/models/account_create_response.rb +16 -12
- data/lib/dropbox-sign/models/account_get_response.rb +16 -12
- data/lib/dropbox-sign/models/account_response.rb +11 -12
- data/lib/dropbox-sign/models/account_response_quotas.rb +11 -12
- data/lib/dropbox-sign/models/account_response_usage.rb +11 -12
- data/lib/dropbox-sign/models/account_update_request.rb +11 -12
- data/lib/dropbox-sign/models/account_verify_request.rb +11 -12
- data/lib/dropbox-sign/models/account_verify_response.rb +11 -12
- data/lib/dropbox-sign/models/account_verify_response_account.rb +11 -12
- data/lib/dropbox-sign/models/api_app_create_request.rb +11 -13
- data/lib/dropbox-sign/models/api_app_get_response.rb +16 -12
- data/lib/dropbox-sign/models/api_app_list_response.rb +21 -12
- data/lib/dropbox-sign/models/api_app_response.rb +11 -12
- data/lib/dropbox-sign/models/api_app_response_o_auth.rb +11 -12
- data/lib/dropbox-sign/models/api_app_response_options.rb +11 -12
- data/lib/dropbox-sign/models/api_app_response_owner_account.rb +11 -12
- data/lib/dropbox-sign/models/api_app_response_white_labeling_options.rb +11 -12
- data/lib/dropbox-sign/models/api_app_update_request.rb +11 -12
- data/lib/dropbox-sign/models/bulk_send_job_get_response.rb +26 -12
- data/lib/dropbox-sign/models/bulk_send_job_get_response_signature_requests.rb +11 -12
- data/lib/dropbox-sign/models/bulk_send_job_list_response.rb +21 -12
- data/lib/dropbox-sign/models/bulk_send_job_response.rb +11 -12
- data/lib/dropbox-sign/models/bulk_send_job_send_response.rb +16 -12
- data/lib/dropbox-sign/models/embedded_edit_url_request.rb +11 -12
- data/lib/dropbox-sign/models/embedded_edit_url_response.rb +16 -12
- data/lib/dropbox-sign/models/embedded_edit_url_response_embedded.rb +11 -12
- data/lib/dropbox-sign/models/embedded_sign_url_response.rb +16 -12
- data/lib/dropbox-sign/models/embedded_sign_url_response_embedded.rb +11 -12
- data/lib/dropbox-sign/models/error_response.rb +11 -12
- data/lib/dropbox-sign/models/error_response_error.rb +11 -12
- data/lib/dropbox-sign/models/event_callback_request.rb +11 -12
- data/lib/dropbox-sign/models/event_callback_request_event.rb +11 -12
- data/lib/dropbox-sign/models/event_callback_request_event_metadata.rb +11 -12
- data/lib/dropbox-sign/models/fax_line_add_user_request.rb +275 -0
- data/lib/dropbox-sign/models/fax_line_area_code_get_country_enum.rb +44 -0
- data/lib/dropbox-sign/models/fax_line_area_code_get_province_enum.rb +54 -0
- data/lib/dropbox-sign/models/fax_line_area_code_get_response.rb +254 -0
- data/lib/dropbox-sign/models/fax_line_area_code_get_state_enum.rb +92 -0
- data/lib/dropbox-sign/models/fax_line_create_request.rb +325 -0
- data/lib/dropbox-sign/models/fax_line_delete_request.rb +253 -0
- data/lib/dropbox-sign/models/fax_line_list_response.rb +279 -0
- data/lib/dropbox-sign/models/fax_line_remove_user_request.rb +275 -0
- data/lib/dropbox-sign/models/fax_line_response.rb +262 -0
- data/lib/dropbox-sign/models/fax_line_response_fax_line.rb +282 -0
- data/lib/dropbox-sign/models/file_response.rb +21 -12
- data/lib/dropbox-sign/models/file_response_data_uri.rb +16 -12
- data/lib/dropbox-sign/models/list_info_response.rb +11 -12
- data/lib/dropbox-sign/models/o_auth_token_generate_request.rb +11 -12
- data/lib/dropbox-sign/models/o_auth_token_refresh_request.rb +11 -12
- data/lib/dropbox-sign/models/o_auth_token_response.rb +11 -12
- data/lib/dropbox-sign/models/report_create_request.rb +11 -12
- data/lib/dropbox-sign/models/report_create_response.rb +16 -12
- data/lib/dropbox-sign/models/report_response.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_bulk_create_embedded_with_template_request.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_bulk_send_with_template_request.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_create_embedded_request.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_create_embedded_with_template_request.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_get_response.rb +16 -12
- data/lib/dropbox-sign/models/signature_request_list_response.rb +21 -12
- data/lib/dropbox-sign/models/signature_request_remind_request.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_attachment.rb +12 -13
- data/lib/dropbox-sign/models/signature_request_response_custom_field_base.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_custom_field_checkbox.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_custom_field_text.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_custom_field_type_enum.rb +1 -2
- data/lib/dropbox-sign/models/signature_request_response_data_base.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_type_enum.rb +1 -2
- data/lib/dropbox-sign/models/signature_request_response_data_value_checkbox.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_checkbox_merge.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_date_signed.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_dropdown.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_initials.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_radio.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_signature.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_text.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_data_value_text_merge.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_response_signatures.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_send_request.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_send_with_template_request.rb +11 -12
- data/lib/dropbox-sign/models/signature_request_update_request.rb +11 -12
- data/lib/dropbox-sign/models/sub_attachment.rb +11 -12
- data/lib/dropbox-sign/models/sub_bulk_signer_list.rb +11 -12
- data/lib/dropbox-sign/models/sub_bulk_signer_list_custom_field.rb +11 -12
- data/lib/dropbox-sign/models/sub_cc.rb +11 -12
- data/lib/dropbox-sign/models/sub_custom_field.rb +11 -12
- data/lib/dropbox-sign/models/sub_editor_options.rb +11 -12
- data/lib/dropbox-sign/models/sub_field_options.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_field_group.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_field_rule.rb +11 -14
- data/lib/dropbox-sign/models/sub_form_field_rule_action.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_field_rule_trigger.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_base.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_checkbox.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_checkbox_merge.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_date_signed.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_dropdown.rb +11 -13
- data/lib/dropbox-sign/models/sub_form_fields_per_document_font_enum.rb +1 -2
- data/lib/dropbox-sign/models/sub_form_fields_per_document_hyperlink.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_initials.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_radio.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_signature.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_text.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_text_merge.rb +11 -12
- data/lib/dropbox-sign/models/sub_form_fields_per_document_type_enum.rb +1 -2
- data/lib/dropbox-sign/models/sub_merge_field.rb +11 -12
- data/lib/dropbox-sign/models/sub_o_auth.rb +11 -12
- data/lib/dropbox-sign/models/sub_options.rb +11 -12
- data/lib/dropbox-sign/models/sub_signature_request_grouped_signers.rb +11 -12
- data/lib/dropbox-sign/models/sub_signature_request_signer.rb +11 -12
- data/lib/dropbox-sign/models/sub_signature_request_template_signer.rb +11 -12
- data/lib/dropbox-sign/models/sub_signing_options.rb +11 -12
- data/lib/dropbox-sign/models/sub_team_response.rb +11 -12
- data/lib/dropbox-sign/models/sub_template_role.rb +11 -12
- data/lib/dropbox-sign/models/sub_unclaimed_draft_signer.rb +11 -12
- data/lib/dropbox-sign/models/sub_unclaimed_draft_template_signer.rb +11 -12
- data/lib/dropbox-sign/models/sub_white_labeling_options.rb +11 -12
- data/lib/dropbox-sign/models/team_add_member_request.rb +11 -12
- data/lib/dropbox-sign/models/team_create_request.rb +11 -12
- data/lib/dropbox-sign/models/team_get_info_response.rb +16 -12
- data/lib/dropbox-sign/models/team_get_response.rb +16 -12
- data/lib/dropbox-sign/models/team_info_response.rb +11 -12
- data/lib/dropbox-sign/models/team_invite_response.rb +11 -12
- data/lib/dropbox-sign/models/team_invites_response.rb +16 -12
- data/lib/dropbox-sign/models/team_member_response.rb +11 -12
- data/lib/dropbox-sign/models/team_members_response.rb +21 -12
- data/lib/dropbox-sign/models/team_parent_response.rb +11 -12
- data/lib/dropbox-sign/models/team_remove_member_request.rb +11 -12
- data/lib/dropbox-sign/models/team_response.rb +11 -12
- data/lib/dropbox-sign/models/team_sub_teams_response.rb +21 -12
- data/lib/dropbox-sign/models/team_update_request.rb +11 -12
- data/lib/dropbox-sign/models/template_add_user_request.rb +11 -12
- data/lib/dropbox-sign/models/template_create_embedded_draft_request.rb +11 -12
- data/lib/dropbox-sign/models/template_create_embedded_draft_response.rb +16 -12
- data/lib/dropbox-sign/models/template_create_embedded_draft_response_template.rb +11 -12
- data/lib/dropbox-sign/models/template_create_request.rb +11 -12
- data/lib/dropbox-sign/models/template_create_response.rb +16 -12
- data/lib/dropbox-sign/models/template_create_response_template.rb +11 -12
- data/lib/dropbox-sign/models/template_edit_response.rb +16 -12
- data/lib/dropbox-sign/models/template_get_response.rb +16 -12
- data/lib/dropbox-sign/models/template_list_response.rb +21 -12
- data/lib/dropbox-sign/models/template_remove_user_request.rb +11 -12
- data/lib/dropbox-sign/models/template_response.rb +11 -12
- data/lib/dropbox-sign/models/template_response_account.rb +11 -12
- data/lib/dropbox-sign/models/template_response_account_quota.rb +11 -12
- data/lib/dropbox-sign/models/template_response_cc_role.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_custom_field_base.rb +12 -13
- data/lib/dropbox-sign/models/template_response_document_custom_field_checkbox.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_custom_field_text.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_field_group.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_field_group_rule.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_base.rb +12 -13
- data/lib/dropbox-sign/models/template_response_document_form_field_checkbox.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_date_signed.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_dropdown.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_hyperlink.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_initials.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_radio.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_signature.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_form_field_text.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_base.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_checkbox.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_date_signed.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_dropdown.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_hyperlink.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_initials.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_radio.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_signature.rb +11 -12
- data/lib/dropbox-sign/models/template_response_document_static_field_text.rb +11 -12
- data/lib/dropbox-sign/models/template_response_field_avg_text_length.rb +11 -12
- data/lib/dropbox-sign/models/template_response_signer_role.rb +11 -12
- data/lib/dropbox-sign/models/template_update_files_request.rb +11 -12
- data/lib/dropbox-sign/models/template_update_files_response.rb +16 -12
- data/lib/dropbox-sign/models/template_update_files_response_template.rb +11 -12
- data/lib/dropbox-sign/models/unclaimed_draft_create_embedded_request.rb +11 -12
- data/lib/dropbox-sign/models/unclaimed_draft_create_embedded_with_template_request.rb +11 -12
- data/lib/dropbox-sign/models/unclaimed_draft_create_request.rb +11 -12
- data/lib/dropbox-sign/models/unclaimed_draft_create_response.rb +16 -12
- data/lib/dropbox-sign/models/unclaimed_draft_edit_and_resend_request.rb +11 -12
- data/lib/dropbox-sign/models/unclaimed_draft_response.rb +11 -12
- data/lib/dropbox-sign/models/warning_response.rb +11 -12
- data/lib/dropbox-sign/version.rb +2 -2
- data/lib/dropbox-sign.rb +13 -1
- data/openapi-config.yaml +2 -1
- data/openapi-sdk.yaml +1080 -0
- data/run-build +2 -2
- data/spec/spec_helper.rb +1 -1
- data/templates/Gemfile.mustache +2 -0
- data/templates/README.mustache +90 -2
- data/templates/api.mustache +28 -2
- data/templates/api_client.mustache +7 -1
- data/templates/api_client_faraday_partial.mustache +29 -23
- data/templates/api_client_typhoeus_partial.mustache +1 -1
- data/templates/api_doc.mustache +87 -0
- data/templates/api_error.mustache +10 -0
- data/templates/base_object.mustache +74 -1
- data/templates/configuration.mustache +57 -0
- data/templates/gem.mustache +2 -0
- data/templates/gitignore.mustache +3 -1
- data/templates/gitlab-ci.mustache +26 -0
- data/templates/model.mustache +16 -0
- data/templates/model_test.mustache +5 -1
- data/templates/partial_anyof_module.mustache +96 -0
- data/templates/partial_model_enum_class.mustache +1 -1
- data/templates/partial_model_generic.mustache +70 -21
- data/templates/partial_model_generic_doc.mustache +28 -0
- data/templates/version.mustache +2 -0
- metadata +42 -13
- data/templates/api_client_spec.mustache +0 -220
- data/templates/configuration_spec.mustache +0 -32
- data/templates/configuration_tls_faraday_partial.mustache +0 -29
- data/templates/configuration_tls_typhoeus_partial.mustache +0 -34
data/run-build
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
|
3
|
-
# see https://github.com/OpenAPITools/openapi-generator/tree/
|
3
|
+
# see https://github.com/OpenAPITools/openapi-generator/tree/v7.8.0/modules/openapi-generator/src/main/resources/ruby-client
|
4
4
|
|
5
5
|
set -e
|
6
6
|
|
@@ -9,7 +9,7 @@ WORKING_DIR="/app/ruby"
|
|
9
9
|
|
10
10
|
docker run --rm \
|
11
11
|
-v "${DIR}/:/local" \
|
12
|
-
openapitools/openapi-generator-cli:v7.
|
12
|
+
openapitools/openapi-generator-cli:v7.8.0 generate \
|
13
13
|
-i "/local/openapi-sdk.yaml" \
|
14
14
|
-c "/local/openapi-config.yaml" \
|
15
15
|
-t "/local/templates" \
|
data/spec/spec_helper.rb
CHANGED
data/templates/Gemfile.mustache
CHANGED
data/templates/README.mustache
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
{{{.}}}
|
7
7
|
{{/appDescriptionWithNewLines}}
|
8
8
|
|
9
|
+
{{#useCustomTemplateCode}}
|
9
10
|
## Migrating from legacy SDK
|
10
11
|
|
11
12
|
This SDK is generated from our officially maintained [OpenAPI spec](https://github.com/hellosign/hellosign-openapi/blob/main/openapi.yaml).
|
@@ -24,6 +25,7 @@ Pull Requests *must* be opened against the
|
|
24
25
|
You must make SDK code changes in the mustache file within the `templates`
|
25
26
|
directory that corresponds to the file you want updated.
|
26
27
|
|
28
|
+
{{/useCustomTemplateCode}}
|
27
29
|
This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
28
30
|
|
29
31
|
- API version: {{appVersion}}
|
@@ -39,11 +41,13 @@ For more information, please visit [{{{infoUrl}}}]({{{infoUrl}}})
|
|
39
41
|
|
40
42
|
## Installation
|
41
43
|
|
44
|
+
{{#useCustomTemplateCode}}
|
42
45
|
### Install gem
|
43
46
|
```shell
|
44
47
|
gem install {{{gemName}}}
|
45
48
|
```
|
46
49
|
|
50
|
+
{{/useCustomTemplateCode}}
|
47
51
|
### Build a gem
|
48
52
|
|
49
53
|
To build the Ruby code into a gem:
|
@@ -52,7 +56,12 @@ To build the Ruby code into a gem:
|
|
52
56
|
gem build {{{gemName}}}.gemspec
|
53
57
|
```
|
54
58
|
|
59
|
+
{{^useCustomTemplateCode}}
|
60
|
+
Then either install the gem locally:
|
61
|
+
{{/useCustomTemplateCode}}
|
62
|
+
{{#useCustomTemplateCode}}
|
55
63
|
Then install the gem locally:
|
64
|
+
{{/useCustomTemplateCode}}
|
56
65
|
|
57
66
|
```shell
|
58
67
|
gem install ./{{{gemName}}}-{{{gemVersion}}}.gem
|
@@ -60,6 +69,10 @@ gem install ./{{{gemName}}}-{{{gemVersion}}}.gem
|
|
60
69
|
|
61
70
|
(for development, run `gem install --dev ./{{{gemName}}}-{{{gemVersion}}}.gem` to install the development dependencies)
|
62
71
|
|
72
|
+
{{^useCustomTemplateCode}}
|
73
|
+
or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
|
74
|
+
{{/useCustomTemplateCode}}
|
75
|
+
|
63
76
|
Finally add this to the Gemfile:
|
64
77
|
|
65
78
|
gem '{{{gemName}}}', '~> {{{gemVersion}}}'
|
@@ -82,20 +95,87 @@ ruby -Ilib script.rb
|
|
82
95
|
|
83
96
|
Please follow the [installation](#installation) procedure and then run the following code:
|
84
97
|
|
98
|
+
{{^useCustomTemplateCode}}
|
99
|
+
```ruby
|
100
|
+
# Load the gem
|
101
|
+
require '{{{gemName}}}'
|
102
|
+
{{#apiInfo}}{{#apis}}{{#-first}}{{#operations}}{{#operation}}{{#-first}}{{#hasAuthMethods}}
|
103
|
+
# Setup authorization
|
104
|
+
{{{moduleName}}}.configure do |config|{{#authMethods}}{{#isBasic}}{{#isBasicBasic}}
|
105
|
+
# Configure HTTP basic authorization: {{{name}}}
|
106
|
+
config.username = 'YOUR_USERNAME'
|
107
|
+
config.password = 'YOUR_PASSWORD'{{/isBasicBasic}}{{#isBasicBearer}}
|
108
|
+
# Configure Bearer authorization{{#bearerFormat}} ({{{.}}}){{/bearerFormat}}: {{{name}}}
|
109
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
110
|
+
# Configure a proc to get access tokens in lieu of the static access_token configuration
|
111
|
+
config.access_token_getter = -> { 'YOUR TOKEN GETTER PROC' } {{/isBasicBearer}}{{/isBasic}}{{#isApiKey}}
|
112
|
+
# Configure API key authorization: {{{name}}}
|
113
|
+
config.api_key['{{{name}}}'] = 'YOUR API KEY'
|
114
|
+
# Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
|
115
|
+
# config.api_key_prefix['{{{name}}}'] = 'Bearer'{{/isApiKey}}{{#isOAuth}}
|
116
|
+
# Configure OAuth2 access token for authorization: {{{name}}}
|
117
|
+
config.access_token = 'YOUR ACCESS TOKEN'
|
118
|
+
# Configure a proc to get access tokens in lieu of the static access_token configuration
|
119
|
+
config.access_token_getter = -> { 'YOUR TOKEN GETTER PROC' } {{/isOAuth}}
|
120
|
+
{{#isFaraday}}
|
121
|
+
# Configure faraday connection
|
122
|
+
config.configure_faraday_connection { |connection| 'YOUR CONNECTION CONFIG PROC' }
|
123
|
+
{{/isFaraday}}
|
124
|
+
{{#isHttpx}}
|
125
|
+
# Configure httpx session
|
126
|
+
config.configure_session { |session| 'YOUR CONNECTION CONFIG PROC' }
|
127
|
+
{{/isHttpx}}
|
128
|
+
{{/authMethods}}end
|
129
|
+
{{/hasAuthMethods}}
|
130
|
+
|
131
|
+
api_instance = {{{moduleName}}}::{{{classname}}}.new
|
132
|
+
{{#requiredParams}}
|
133
|
+
{{{paramName}}} = {{{vendorExtensions.x-ruby-example}}} # {{{dataType}}} | {{{description}}}
|
134
|
+
{{/requiredParams}}
|
135
|
+
{{#optionalParams}}
|
136
|
+
{{#-first}}
|
137
|
+
opts = {
|
138
|
+
{{/-first}}
|
139
|
+
{{{paramName}}}: {{{vendorExtensions.x-ruby-example}}}{{^-last}},{{/-last}} # {{{dataType}}} | {{{description}}}
|
140
|
+
{{#-last}}
|
141
|
+
}
|
142
|
+
{{/-last}}
|
143
|
+
{{/optionalParams}}
|
144
|
+
|
145
|
+
begin
|
146
|
+
{{#summary}} #{{{.}}}
|
147
|
+
{{/summary}} {{#returnType}}result = {{/returnType}}api_instance.{{{operationId}}}{{#hasParams}}({{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}){{/hasParams}}{{#returnType}}
|
148
|
+
p result{{/returnType}}
|
149
|
+
rescue {{{moduleName}}}::ApiError => e
|
150
|
+
puts "Exception when calling {{classname}}->{{{operationId}}}: #{e}"
|
151
|
+
end
|
152
|
+
{{/-first}}{{/operation}}{{/operations}}{{/-first}}{{/apis}}{{/apiInfo}}
|
153
|
+
```
|
154
|
+
{{/useCustomTemplateCode}}
|
155
|
+
{{#useCustomTemplateCode}}
|
85
156
|
{{#apiInfo}}{{#apis}}{{#-first}}{{#operations}}{{#operation}}{{#-first}}
|
86
157
|
```ruby
|
87
158
|
REPLACE_ME_WITH_EXAMPLE_FOR__{{{operationId}}}_Ruby_CODE
|
88
159
|
```
|
89
160
|
{{/-first}}{{/operation}}{{/operations}}{{/-first}}{{/apis}}{{/apiInfo}}
|
161
|
+
{{/useCustomTemplateCode}}
|
90
162
|
|
91
163
|
## Documentation for API Endpoints
|
92
164
|
|
93
165
|
All URIs are relative to *{{basePath}}*
|
94
166
|
|
167
|
+
{{^useCustomTemplateCode}}
|
168
|
+
Class | Method | HTTP request | Description
|
169
|
+
------------ | ------------- | ------------- | -------------
|
170
|
+
{{#apiInfo}}{{#apis}}{{#operations}}{{#operation}}*{{moduleName}}::{{classname}}* | [**{{operationId}}**]({{apiDocPath}}{{classname}}.md#{{operationId}}) | **{{httpMethod}}** {{path}} | {{{summary}}}
|
171
|
+
{{/operation}}{{/operations}}{{/apis}}{{/apiInfo}}
|
172
|
+
{{/useCustomTemplateCode}}
|
173
|
+
{{#useCustomTemplateCode}}
|
95
174
|
|Class | Method | HTTP request | Description|
|
96
175
|
|------------ | ------------- | ------------- | -------------|
|
97
176
|
{{#apiInfo}}{{#apis}}{{#operations}}{{#operation}}|*{{moduleName}}::{{classname}}* | [**{{operationId}}**]({{apiDocPath}}{{classname}}.md#{{operationId}}) | **{{httpMethod}}** {{path}} | {{{summary}}} |
|
98
177
|
{{/operation}}{{/operations}}{{/apis}}{{/apiInfo}}
|
178
|
+
{{/useCustomTemplateCode}}
|
99
179
|
|
100
180
|
## Documentation for Models
|
101
181
|
|
@@ -104,9 +184,16 @@ All URIs are relative to *{{basePath}}*
|
|
104
184
|
|
105
185
|
## Documentation for Authorization
|
106
186
|
|
187
|
+
{{^useCustomTemplateCode}}
|
188
|
+
{{^authMethods}}Endpoints do not require authorization.{{/authMethods}}
|
189
|
+
{{#hasAuthMethods}}Authentication schemes defined for the API:{{/hasAuthMethods}}
|
190
|
+
{{/useCustomTemplateCode}}
|
191
|
+
{{#useCustomTemplateCode}}
|
107
192
|
{{^authMethods}} All endpoints do not require authorization.
|
108
193
|
{{/authMethods}}{{#authMethods}}{{#last}} Authentication schemes defined for the API:{{/last}}{{/authMethods}}
|
109
|
-
{{
|
194
|
+
{{/useCustomTemplateCode}}
|
195
|
+
{{#authMethods}}
|
196
|
+
### {{name}}
|
110
197
|
|
111
198
|
{{#isApiKey}}
|
112
199
|
|
@@ -117,7 +204,8 @@ All URIs are relative to *{{basePath}}*
|
|
117
204
|
{{#isBasic}}
|
118
205
|
{{#isBasicBasic}}- **Type**: HTTP basic authentication
|
119
206
|
{{/isBasicBasic}}{{#isBasicBearer}}- **Type**: Bearer authentication{{#bearerFormat}} ({{{.}}}){{/bearerFormat}}
|
120
|
-
{{/isBasicBearer}}
|
207
|
+
{{/isBasicBearer}}{{#isHttpSignature}}- **Type**: HTTP signature authentication
|
208
|
+
{{/isHttpSignature}}
|
121
209
|
{{/isBasic}}
|
122
210
|
{{#isOAuth}}
|
123
211
|
|
data/templates/api.mustache
CHANGED
@@ -4,9 +4,11 @@
|
|
4
4
|
|
5
5
|
require 'cgi'
|
6
6
|
|
7
|
+
{{#useCustomTemplateCode}}
|
7
8
|
module Dropbox
|
8
9
|
end
|
9
10
|
|
11
|
+
{{/useCustomTemplateCode}}
|
10
12
|
module {{moduleName}}
|
11
13
|
{{#operations}}
|
12
14
|
class {{classname}}
|
@@ -191,7 +193,7 @@ module {{moduleName}}
|
|
191
193
|
header_params = opts[:header_params] || {}
|
192
194
|
{{#hasProduces}}
|
193
195
|
# HTTP header 'Accept' (if needed)
|
194
|
-
header_params['Accept'] = @api_client.select_header_accept([{{#produces}}'{{{mediaType}}}'{{^-last}}, {{/-last}}{{/produces}}])
|
196
|
+
header_params['Accept'] = @api_client.select_header_accept([{{#produces}}'{{{mediaType}}}'{{^-last}}, {{/-last}}{{/produces}}]) unless header_params['Accept']
|
195
197
|
{{/hasProduces}}
|
196
198
|
{{#hasConsumes}}
|
197
199
|
# HTTP header 'Content-Type'
|
@@ -202,7 +204,7 @@ module {{moduleName}}
|
|
202
204
|
{{/hasConsumes}}
|
203
205
|
{{#headerParams}}
|
204
206
|
{{#required}}
|
205
|
-
header_params[:'{{{baseName}}}'] = {{#collectionFormat}}@api_client.build_collection_param({{{paramName}}}, :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}{{{paramName}}}{{/collectionFormat}}
|
207
|
+
header_params[{{#lambdaFixHeaderKey}}:'{{{baseName}}}'{{/lambdaFixHeaderKey}}] = {{#collectionFormat}}@api_client.build_collection_param({{{paramName}}}, :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}{{{paramName}}}{{/collectionFormat}}
|
206
208
|
{{/required}}
|
207
209
|
{{/headerParams}}
|
208
210
|
{{#headerParams}}
|
@@ -211,6 +213,24 @@ module {{moduleName}}
|
|
211
213
|
{{/required}}
|
212
214
|
{{/headerParams}}
|
213
215
|
|
216
|
+
{{^useCustomTemplateCode}}
|
217
|
+
# form parameters
|
218
|
+
form_params = opts[:form_params] || {}
|
219
|
+
{{#formParams}}
|
220
|
+
{{#required}}
|
221
|
+
form_params['{{baseName}}'] = {{#collectionFormat}}@api_client.build_collection_param({{{paramName}}}, :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}{{{paramName}}}{{/collectionFormat}}
|
222
|
+
{{/required}}
|
223
|
+
{{/formParams}}
|
224
|
+
{{#formParams}}
|
225
|
+
{{^required}}
|
226
|
+
form_params['{{baseName}}'] = {{#collectionFormat}}@api_client.build_collection_param(opts[:'{{{paramName}}}'], :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}opts[:'{{{paramName}}}']{{/collectionFormat}} if !opts[:'{{paramName}}'].nil?
|
227
|
+
{{/required}}
|
228
|
+
{{/formParams}}
|
229
|
+
|
230
|
+
# http body (model)
|
231
|
+
post_body = opts[:debug_body]{{#bodyParam}} || @api_client.object_to_http_body({{#required}}{{{paramName}}}{{/required}}{{^required}}opts[:'{{{paramName}}}']{{/required}}){{/bodyParam}}
|
232
|
+
{{/useCustomTemplateCode}}
|
233
|
+
{{#useCustomTemplateCode}}
|
214
234
|
post_body = {}
|
215
235
|
form_params = opts[:form_params] || {}
|
216
236
|
{{#bodyParam}}
|
@@ -233,6 +253,7 @@ module {{moduleName}}
|
|
233
253
|
# http body (model)
|
234
254
|
post_body = opts[:debug_body]{{#bodyParam}} || @api_client.object_to_http_body({{#required}}{{{paramName}}}{{/required}}{{^required}}opts[:'{{{paramName}}}']{{/required}}){{/bodyParam}}
|
235
255
|
{{/bodyParam}}
|
256
|
+
{{/useCustomTemplateCode}}
|
236
257
|
|
237
258
|
# return_type
|
238
259
|
return_type = opts[:debug_return_type]{{#returnType}} || '{{{.}}}'{{/returnType}}
|
@@ -250,6 +271,10 @@ module {{moduleName}}
|
|
250
271
|
:return_type => return_type
|
251
272
|
)
|
252
273
|
|
274
|
+
{{^useCustomTemplateCode}}
|
275
|
+
data, status_code, headers = @api_client.call_api(:{{httpMethod}}, local_var_path, new_options)
|
276
|
+
{{/useCustomTemplateCode}}
|
277
|
+
{{#useCustomTemplateCode}}
|
253
278
|
begin
|
254
279
|
data, status_code, headers = @api_client.call_api(:{{httpMethod}}, local_var_path, new_options)
|
255
280
|
rescue Dropbox::Sign::ApiError => e
|
@@ -315,6 +340,7 @@ module {{moduleName}}
|
|
315
340
|
{{/returnType}}
|
316
341
|
end
|
317
342
|
|
343
|
+
{{/useCustomTemplateCode}}
|
318
344
|
if @api_client.config.debugging
|
319
345
|
@api_client.config.logger.debug "API called: {{classname}}#{{operationId}}\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
320
346
|
end
|
@@ -20,8 +20,10 @@ require 'httpx'
|
|
20
20
|
require 'net/http/status'
|
21
21
|
{{/isHttpx}}
|
22
22
|
|
23
|
+
{{#useCustomTemplateCode}}
|
23
24
|
module Dropbox
|
24
25
|
end
|
26
|
+
{{/useCustomTemplateCode}}
|
25
27
|
|
26
28
|
module {{moduleName}}
|
27
29
|
class ApiClient
|
@@ -133,7 +135,9 @@ module {{moduleName}}
|
|
133
135
|
data.each { |k, v| hash[k] = convert_to_type(v, sub_type) }
|
134
136
|
end
|
135
137
|
else
|
136
|
-
|
138
|
+
{{^useCustomTemplateCode}}
|
139
|
+
# models (e.g. Pet) or oneOf
|
140
|
+
{{/useCustomTemplateCode}}
|
137
141
|
klass = {{moduleName}}.const_get(return_type)
|
138
142
|
klass.respond_to?(:openapi_one_of) ? klass.build(data) : klass.build_from_hash(data)
|
139
143
|
end
|
@@ -244,6 +248,7 @@ module {{moduleName}}
|
|
244
248
|
fail "unknown collection format: #{collection_format.inspect}"
|
245
249
|
end
|
246
250
|
end
|
251
|
+
{{#useCustomTemplateCode}}
|
247
252
|
|
248
253
|
def generate_form_data(obj, openapi_types)
|
249
254
|
params = {}
|
@@ -268,5 +273,6 @@ module {{moduleName}}
|
|
268
273
|
:params => params,
|
269
274
|
}
|
270
275
|
end
|
276
|
+
{{/useCustomTemplateCode}}
|
271
277
|
end
|
272
278
|
end
|
@@ -117,35 +117,41 @@
|
|
117
117
|
request.options.on_data = Proc.new do |chunk, overall_received_bytes|
|
118
118
|
stream << chunk
|
119
119
|
end
|
120
|
+
|
120
121
|
stream
|
121
122
|
end
|
122
123
|
|
123
124
|
def deserialize_file(response, stream)
|
124
|
-
body
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
125
|
+
body = response.body
|
126
|
+
encoding = body.encoding
|
127
|
+
|
128
|
+
# reconstruct content
|
129
|
+
content = stream.join
|
130
|
+
content = content.unpack('m').join if response.headers['Content-Transfer-Encoding'] == 'binary'
|
131
|
+
content = content.force_encoding(encoding)
|
132
|
+
|
133
|
+
# return byte stream
|
134
|
+
return content if @config.return_binary_data == true
|
135
|
+
|
136
|
+
# return file instead of binary data
|
137
|
+
content_disposition = response.headers['Content-Disposition']
|
138
|
+
if content_disposition && content_disposition =~ /filename=/i
|
139
|
+
filename = content_disposition[/filename=['"]?([^'"\s]+)['"]?/, 1]
|
140
|
+
prefix = sanitize_filename(filename)
|
129
141
|
else
|
130
|
-
|
131
|
-
content_disposition = response.headers['Content-Disposition']
|
132
|
-
if content_disposition && content_disposition =~ /filename=/i
|
133
|
-
filename = content_disposition[/filename=['"]?([^'"\s]+)['"]?/, 1]
|
134
|
-
prefix = sanitize_filename(filename)
|
135
|
-
else
|
136
|
-
prefix = 'download-'
|
137
|
-
end
|
138
|
-
prefix = prefix + '-' unless prefix.end_with?('-')
|
139
|
-
encoding = body.encoding
|
140
|
-
tempfile = Tempfile.open(prefix, @config.temp_folder_path, encoding: encoding)
|
141
|
-
tempfile.write(stream.join.force_encoding(encoding))
|
142
|
-
tempfile.close
|
143
|
-
config.logger.info "Temp file written to #{tempfile.path}, please copy the file to a proper folder "\
|
144
|
-
"with e.g. `FileUtils.cp(tempfile.path, '/new/file/path')` otherwise the temp file "\
|
145
|
-
"will be deleted automatically with GC. It's also recommended to delete the temp file "\
|
146
|
-
"explicitly with `tempfile.delete`"
|
147
|
-
tempfile
|
142
|
+
prefix = 'download-'
|
148
143
|
end
|
144
|
+
prefix = prefix + '-' unless prefix.end_with?('-')
|
145
|
+
|
146
|
+
tempfile = Tempfile.open(prefix, @config.temp_folder_path, encoding: encoding)
|
147
|
+
tempfile.write(content)
|
148
|
+
tempfile.close
|
149
|
+
|
150
|
+
config.logger.info "Temp file written to #{tempfile.path}, please copy the file to a proper folder "\
|
151
|
+
"with e.g. `FileUtils.cp(tempfile.path, '/new/file/path')` otherwise the temp file "\
|
152
|
+
"will be deleted automatically with GC. It's also recommended to delete the temp file "\
|
153
|
+
"explicitly with `tempfile.delete`"
|
154
|
+
tempfile
|
149
155
|
end
|
150
156
|
|
151
157
|
def connection(opts)
|
@@ -154,7 +154,7 @@
|
|
154
154
|
"will be deleted automatically with GC. It's also recommended to delete the temp file "\
|
155
155
|
"explicitly with `tempfile.delete`"
|
156
156
|
else
|
157
|
-
fail ApiError.new("Failed to create the tempfile based on the HTTP response from the server: #{request.inspect}")
|
157
|
+
fail ApiError.new("Failed to create the tempfile based on the HTTP response from the server: #{request.inspect}")
|
158
158
|
end
|
159
159
|
|
160
160
|
tempfile
|
data/templates/api_doc.mustache
CHANGED
@@ -8,16 +8,28 @@ All URIs are relative to *{{basePath}}*
|
|
8
8
|
| ------ | ------------ | ----------- |
|
9
9
|
{{#operations}}
|
10
10
|
{{#operation}}
|
11
|
+
{{^useCustomTemplateCode}}
|
12
|
+
| [**{{operationId}}**]({{classname}}.md#{{operationId}}) | **{{httpMethod}}** {{path}} | {{summary}} |
|
13
|
+
{{/useCustomTemplateCode}}
|
14
|
+
{{#useCustomTemplateCode}}
|
11
15
|
| [`{{operationId}}`]({{classname}}.md#{{operationId}}) | **{{httpMethod}}** `{{path}}` | {{summary}} |
|
16
|
+
{{/useCustomTemplateCode}}
|
12
17
|
{{/operation}}
|
13
18
|
{{/operations}}
|
14
19
|
|
15
20
|
{{#operations}}
|
16
21
|
{{#operation}}
|
17
22
|
|
23
|
+
{{^useCustomTemplateCode}}
|
24
|
+
## {{operationId}}
|
25
|
+
|
26
|
+
> {{#returnType}}{{#returnTypeIsPrimitive}}{{returnType}}{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}<{{{returnType}}}>{{/returnTypeIsPrimitive}} {{/returnType}}{{operationId}}{{#hasParams}}({{^vendorExtensions.x-group-parameters}}{{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}{{/vendorExtensions.x-group-parameters}}{{#vendorExtensions.x-group-parameters}}opts{{/vendorExtensions.x-group-parameters}}){{/hasParams}}
|
27
|
+
{{/useCustomTemplateCode}}
|
28
|
+
{{#useCustomTemplateCode}}
|
18
29
|
## `{{operationId}}`
|
19
30
|
|
20
31
|
> `{{#returnType}}{{#returnTypeIsPrimitive}}{{returnType}}{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}<{{{returnType}}}>{{/returnTypeIsPrimitive}} {{/returnType}}{{operationId}}{{#hasParams}}({{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}){{/hasParams}}`
|
32
|
+
{{/useCustomTemplateCode}}
|
21
33
|
|
22
34
|
{{{summary}}}{{#notes}}
|
23
35
|
|
@@ -26,14 +38,84 @@ All URIs are relative to *{{basePath}}*
|
|
26
38
|
### Examples
|
27
39
|
|
28
40
|
```ruby
|
41
|
+
{{^useCustomTemplateCode}}
|
42
|
+
require 'time'
|
43
|
+
require '{{{gemName}}}'
|
44
|
+
{{#hasAuthMethods}}
|
45
|
+
# setup authorization
|
46
|
+
{{{moduleName}}}.configure do |config|{{#authMethods}}{{#isBasic}}{{#isBasicBasic}}
|
47
|
+
# Configure HTTP basic authorization: {{{name}}}
|
48
|
+
config.username = 'YOUR USERNAME'
|
49
|
+
config.password = 'YOUR PASSWORD'{{/isBasicBasic}}{{#isBasicBearer}}
|
50
|
+
# Configure Bearer authorization{{#bearerFormat}} ({{{.}}}){{/bearerFormat}}: {{{name}}}
|
51
|
+
config.access_token = 'YOUR_BEARER_TOKEN'{{/isBasicBearer}}{{/isBasic}}{{#isApiKey}}
|
52
|
+
# Configure API key authorization: {{{name}}}
|
53
|
+
config.api_key['{{{name}}}'] = 'YOUR API KEY'
|
54
|
+
# Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
|
55
|
+
# config.api_key_prefix['{{{name}}}'] = 'Bearer'{{/isApiKey}}{{#isOAuth}}
|
56
|
+
# Configure OAuth2 access token for authorization: {{{name}}}
|
57
|
+
config.access_token = 'YOUR ACCESS TOKEN'{{/isOAuth}}
|
58
|
+
{{/authMethods}}end
|
59
|
+
{{/hasAuthMethods}}
|
60
|
+
|
61
|
+
api_instance = {{{moduleName}}}::{{{classname}}}.new
|
62
|
+
{{^vendorExtensions.x-group-parameters}}
|
63
|
+
{{#requiredParams}}
|
64
|
+
{{{paramName}}} = {{{vendorExtensions.x-ruby-example}}} # {{{dataType}}} | {{{description}}}
|
65
|
+
{{/requiredParams}}
|
66
|
+
{{#optionalParams}}
|
67
|
+
{{#-first}}
|
68
|
+
opts = {
|
69
|
+
{{/-first}}
|
70
|
+
{{{paramName}}}: {{{vendorExtensions.x-ruby-example}}}{{^-last}},{{/-last}} # {{{dataType}}} | {{{description}}}
|
71
|
+
{{#-last}}
|
72
|
+
}
|
73
|
+
{{/-last}}
|
74
|
+
{{/optionalParams}}
|
75
|
+
{{/vendorExtensions.x-group-parameters}}
|
76
|
+
{{#vendorExtensions.x-group-parameters}}
|
77
|
+
{{#hasParams}}
|
78
|
+
opts = {
|
79
|
+
{{#requiredParams}}
|
80
|
+
{{{paramName}}}: {{{vendorExtensions.x-ruby-example}}}, # {{{dataType}}} | {{{description}}} (required)
|
81
|
+
{{/requiredParams}}
|
82
|
+
{{#optionalParams}}
|
83
|
+
{{{paramName}}}: {{{vendorExtensions.x-ruby-example}}}, # {{{dataType}}} | {{{description}}}
|
84
|
+
{{/optionalParams}}
|
85
|
+
}
|
86
|
+
{{/hasParams}}
|
87
|
+
{{/vendorExtensions.x-group-parameters}}
|
88
|
+
|
89
|
+
begin
|
90
|
+
{{#summary}}# {{{.}}}{{/summary}}
|
91
|
+
{{#returnType}}result = {{/returnType}}api_instance.{{{operationId}}}{{#hasParams}}({{^vendorExtensions.x-group-parameters}}{{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}{{/vendorExtensions.x-group-parameters}}{{#vendorExtensions.x-group-parameters}}opts{{/vendorExtensions.x-group-parameters}}){{/hasParams}}
|
92
|
+
{{#returnType}}
|
93
|
+
p result
|
94
|
+
{{/returnType}}
|
95
|
+
rescue {{{moduleName}}}::ApiError => e
|
96
|
+
puts "Error when calling {{classname}}->{{{operationId}}}: #{e}"
|
97
|
+
end
|
98
|
+
{{/useCustomTemplateCode}}
|
99
|
+
{{#useCustomTemplateCode}}
|
29
100
|
REPLACE_ME_WITH_EXAMPLE_FOR__{{{operationId}}}_Ruby_CODE
|
101
|
+
{{/useCustomTemplateCode}}
|
30
102
|
```
|
31
103
|
|
104
|
+
{{^useCustomTemplateCode}}
|
105
|
+
#### Using the {{operationId}}_with_http_info variant
|
106
|
+
{{/useCustomTemplateCode}}
|
107
|
+
{{#useCustomTemplateCode}}
|
32
108
|
#### Using the `{{operationId}}_with_http_info` variant
|
109
|
+
{{/useCustomTemplateCode}}
|
33
110
|
|
34
111
|
This returns an Array which contains the response data{{^returnType}} (`nil` in this case){{/returnType}}, status code and headers.
|
35
112
|
|
113
|
+
{{^useCustomTemplateCode}}
|
114
|
+
> <Array({{#returnType}}{{#returnTypeIsPrimitive}}{{returnType}}{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}<{{{returnType}}}>{{/returnTypeIsPrimitive}}{{/returnType}}{{^returnType}}nil{{/returnType}}, Integer, Hash)> {{operationId}}_with_http_info{{#hasParams}}({{^vendorExtensions.x-group-parameters}}{{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}{{/vendorExtensions.x-group-parameters}}{{#vendorExtensions.x-group-parameters}}opts{{/vendorExtensions.x-group-parameters}}){{/hasParams}}
|
115
|
+
{{/useCustomTemplateCode}}
|
116
|
+
{{#useCustomTemplateCode}}
|
36
117
|
> `<Array({{#returnType}}{{#returnTypeIsPrimitive}}{{returnType}}{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}<{{{returnType}}}>{{/returnTypeIsPrimitive}}{{/returnType}}{{^returnType}}nil{{/returnType}}, Integer, Hash)> {{operationId}}_with_http_info{{#hasParams}}({{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}{{#optionalParams}}{{#-last}}{{#hasRequiredParams}}, {{/hasRequiredParams}}opts{{/-last}}{{/optionalParams}}){{/hasParams}}`
|
118
|
+
{{/useCustomTemplateCode}}
|
37
119
|
|
38
120
|
```ruby
|
39
121
|
begin
|
@@ -57,7 +139,12 @@ This endpoint does not need any parameter.
|
|
57
139
|
| Name | Type | Description | Notes |
|
58
140
|
| ---- | ---- | ----------- | ----- |
|
59
141
|
{{/-first}}
|
142
|
+
{{^useCustomTemplateCode}}
|
143
|
+
| **{{paramName}}** | {{#isPrimitiveType}}**{{dataType}}**{{/isPrimitiveType}}{{^isPrimitiveType}}{{#isFile}}**{{dataType}}**{{/isFile}}{{^isFile}}[**{{dataType}}**]({{baseType}}.md){{/isFile}}{{/isPrimitiveType}} | {{description}} | {{^required}}[optional]{{/required}}{{#defaultValue}}[default to {{.}}]{{/defaultValue}} |
|
144
|
+
{{/useCustomTemplateCode}}
|
145
|
+
{{#useCustomTemplateCode}}
|
60
146
|
| `{{paramName}}` | {{#isPrimitiveType}}**{{dataType}}**{{/isPrimitiveType}}{{^isPrimitiveType}}{{#isFile}}**{{dataType}}**{{/isFile}}{{^isFile}}[**{{dataType}}**]({{baseType}}.md){{/isFile}}{{/isPrimitiveType}} | {{description}} | {{^required}}[optional]{{/required}}{{#defaultValue}}[default to {{.}}]{{/defaultValue}} |
|
147
|
+
{{/useCustomTemplateCode}}
|
61
148
|
{{/allParams}}
|
62
149
|
|
63
150
|
### Return type
|
@@ -2,12 +2,22 @@
|
|
2
2
|
{{> api_info}}
|
3
3
|
=end
|
4
4
|
|
5
|
+
{{#useCustomTemplateCode}}
|
5
6
|
module Dropbox
|
6
7
|
end
|
7
8
|
|
9
|
+
{{/useCustomTemplateCode}}
|
8
10
|
module {{moduleName}}
|
9
11
|
class ApiError < StandardError
|
12
|
+
{{^useCustomTemplateCode}}
|
10
13
|
attr_reader :code, :response_headers, :response_body
|
14
|
+
{{/useCustomTemplateCode}}
|
15
|
+
{{#useCustomTemplateCode}}
|
16
|
+
attr_reader :code, :response_headers
|
17
|
+
|
18
|
+
# @return [ErrorResponse]
|
19
|
+
attr_accessor :response_body
|
20
|
+
{{/useCustomTemplateCode}}
|
11
21
|
|
12
22
|
# Usage examples:
|
13
23
|
# ApiError.new
|
@@ -1,6 +1,31 @@
|
|
1
1
|
# Builds the object from hash
|
2
2
|
# @param [Hash] attributes Model attributes in the form of hash
|
3
3
|
# @return [Object] Returns the model itself
|
4
|
+
{{^useCustomTemplateCode}}
|
5
|
+
def self.build_from_hash(attributes)
|
6
|
+
return nil unless attributes.is_a?(Hash)
|
7
|
+
{{#parent}}
|
8
|
+
super(attributes)
|
9
|
+
{{/parent}}
|
10
|
+
attributes = attributes.transform_keys(&:to_sym)
|
11
|
+
transformed_hash = {}
|
12
|
+
openapi_types.each_pair do |key, type|
|
13
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
14
|
+
transformed_hash["#{key}"] = nil
|
15
|
+
elsif type =~ /\AArray<(.*)>/i
|
16
|
+
# check to ensure the input is an array given that the attribute
|
17
|
+
# is documented as an array but the input is not
|
18
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
19
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
20
|
+
end
|
21
|
+
elsif !attributes[attribute_map[key]].nil?
|
22
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
23
|
+
end
|
24
|
+
end
|
25
|
+
new(transformed_hash)
|
26
|
+
end
|
27
|
+
{{/useCustomTemplateCode}}
|
28
|
+
{{#useCustomTemplateCode}}
|
4
29
|
def self.build_from_hash(attributes)
|
5
30
|
{{#discriminator}}
|
6
31
|
if !attributes[self.openapi_discriminator_name].nil?
|
@@ -38,12 +63,18 @@
|
|
38
63
|
|
39
64
|
self
|
40
65
|
end
|
66
|
+
{{/useCustomTemplateCode}}
|
41
67
|
|
42
68
|
# Deserializes the data based on type
|
43
69
|
# @param string type Data type
|
44
70
|
# @param string value Value to be deserialized
|
45
71
|
# @return [Object] Deserialized data
|
72
|
+
{{^useCustomTemplateCode}}
|
73
|
+
def self._deserialize(type, value)
|
74
|
+
{{/useCustomTemplateCode}}
|
75
|
+
{{#useCustomTemplateCode}}
|
46
76
|
def _deserialize(type, value)
|
77
|
+
{{/useCustomTemplateCode}}
|
47
78
|
case type.to_sym
|
48
79
|
when :Time
|
49
80
|
Time.parse(value)
|
@@ -76,7 +107,9 @@
|
|
76
107
|
end
|
77
108
|
end
|
78
109
|
else # model
|
79
|
-
|
110
|
+
{{^useCustomTemplateCode}}
|
111
|
+
# models (e.g. Pet) or oneOf
|
112
|
+
{{/useCustomTemplateCode}}
|
80
113
|
klass = {{moduleName}}.const_get(type)
|
81
114
|
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
82
115
|
end
|
@@ -96,17 +129,37 @@
|
|
96
129
|
|
97
130
|
# Returns the object in the form of hash
|
98
131
|
# @return [Hash] Returns the object in the form of hash
|
132
|
+
{{^useCustomTemplateCode}}
|
133
|
+
def to_hash
|
134
|
+
{{/useCustomTemplateCode}}
|
135
|
+
{{#useCustomTemplateCode}}
|
99
136
|
def to_hash(include_nil = true)
|
137
|
+
{{/useCustomTemplateCode}}
|
100
138
|
hash = {{^parent}}{}{{/parent}}{{#parent}}super{{/parent}}
|
139
|
+
{{^useCustomTemplateCode}}
|
140
|
+
self.class.attribute_map.each_pair do |attr, param|
|
141
|
+
{{/useCustomTemplateCode}}
|
142
|
+
{{#useCustomTemplateCode}}
|
101
143
|
self.class.merged_attributes.each_pair do |attr, param|
|
144
|
+
{{/useCustomTemplateCode}}
|
102
145
|
value = self.send(attr)
|
103
146
|
if value.nil?
|
147
|
+
{{^useCustomTemplateCode}}
|
148
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
149
|
+
{{/useCustomTemplateCode}}
|
150
|
+
{{#useCustomTemplateCode}}
|
104
151
|
next unless include_nil
|
105
152
|
is_nullable = self.class.merged_nullable.include?(attr)
|
153
|
+
{{/useCustomTemplateCode}}
|
106
154
|
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
107
155
|
end
|
108
156
|
|
157
|
+
{{^useCustomTemplateCode}}
|
158
|
+
hash[param] = _to_hash(value)
|
159
|
+
{{/useCustomTemplateCode}}
|
160
|
+
{{#useCustomTemplateCode}}
|
109
161
|
hash[param] = _to_hash(value, include_nil)
|
162
|
+
{{/useCustomTemplateCode}}
|
110
163
|
end
|
111
164
|
hash
|
112
165
|
end
|
@@ -115,15 +168,35 @@
|
|
115
168
|
# For object, use to_hash. Otherwise, just return the value
|
116
169
|
# @param [Object] value Any valid value
|
117
170
|
# @return [Hash] Returns the value in the form of hash
|
171
|
+
{{^useCustomTemplateCode}}
|
172
|
+
def _to_hash(value)
|
173
|
+
{{/useCustomTemplateCode}}
|
174
|
+
{{#useCustomTemplateCode}}
|
118
175
|
def _to_hash(value, include_nil = true)
|
176
|
+
{{/useCustomTemplateCode}}
|
119
177
|
if value.is_a?(Array)
|
178
|
+
{{^useCustomTemplateCode}}
|
179
|
+
value.compact.map { |v| _to_hash(v) }
|
180
|
+
{{/useCustomTemplateCode}}
|
181
|
+
{{#useCustomTemplateCode}}
|
120
182
|
value.compact.map { |v| _to_hash(v, include_nil) }
|
183
|
+
{{/useCustomTemplateCode}}
|
121
184
|
elsif value.is_a?(Hash)
|
122
185
|
{}.tap do |hash|
|
186
|
+
{{^useCustomTemplateCode}}
|
187
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
188
|
+
{{/useCustomTemplateCode}}
|
189
|
+
{{#useCustomTemplateCode}}
|
123
190
|
value.each { |k, v| hash[k] = _to_hash(v, include_nil) }
|
191
|
+
{{/useCustomTemplateCode}}
|
124
192
|
end
|
125
193
|
elsif value.respond_to? :to_hash
|
194
|
+
{{^useCustomTemplateCode}}
|
195
|
+
value.to_hash
|
196
|
+
{{/useCustomTemplateCode}}
|
197
|
+
{{#useCustomTemplateCode}}
|
126
198
|
value.to_hash(include_nil)
|
199
|
+
{{/useCustomTemplateCode}}
|
127
200
|
else
|
128
201
|
value
|
129
202
|
end
|