stackone_client 0.0.1

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.
Files changed (224) hide show
  1. checksums.yaml +7 -0
  2. data/lib/stackone/accounts.rb +224 -0
  3. data/lib/stackone/ats.rb +1289 -0
  4. data/lib/stackone/connect_sessions.rb +100 -0
  5. data/lib/stackone/connectors.rb +98 -0
  6. data/lib/stackone/crm.rb +323 -0
  7. data/lib/stackone/hris.rb +682 -0
  8. data/lib/stackone/marketing.rb +584 -0
  9. data/lib/stackone/models/operations/ats_create_application.rb +53 -0
  10. data/lib/stackone/models/operations/ats_create_candidate.rb +53 -0
  11. data/lib/stackone/models/operations/ats_create_candidate_note.rb +56 -0
  12. data/lib/stackone/models/operations/ats_create_offer.rb +53 -0
  13. data/lib/stackone/models/operations/ats_get_application.rb +88 -0
  14. data/lib/stackone/models/operations/ats_get_application_offer.rb +91 -0
  15. data/lib/stackone/models/operations/ats_get_application_scorecard.rb +91 -0
  16. data/lib/stackone/models/operations/ats_get_candidate.rb +88 -0
  17. data/lib/stackone/models/operations/ats_get_candidate_note.rb +91 -0
  18. data/lib/stackone/models/operations/ats_get_department.rb +88 -0
  19. data/lib/stackone/models/operations/ats_get_interview.rb +88 -0
  20. data/lib/stackone/models/operations/ats_get_interview_stage.rb +88 -0
  21. data/lib/stackone/models/operations/ats_get_job.rb +88 -0
  22. data/lib/stackone/models/operations/ats_get_job_posting.rb +91 -0
  23. data/lib/stackone/models/operations/ats_get_location.rb +88 -0
  24. data/lib/stackone/models/operations/ats_get_offer.rb +88 -0
  25. data/lib/stackone/models/operations/ats_get_rejected_reason.rb +88 -0
  26. data/lib/stackone/models/operations/ats_get_user.rb +88 -0
  27. data/lib/stackone/models/operations/ats_list_application_scorecards.rb +88 -0
  28. data/lib/stackone/models/operations/ats_list_applications.rb +85 -0
  29. data/lib/stackone/models/operations/ats_list_applications_offers.rb +88 -0
  30. data/lib/stackone/models/operations/ats_list_candidate_notes.rb +88 -0
  31. data/lib/stackone/models/operations/ats_list_candidates.rb +85 -0
  32. data/lib/stackone/models/operations/ats_list_departments.rb +85 -0
  33. data/lib/stackone/models/operations/ats_list_interview_stages.rb +85 -0
  34. data/lib/stackone/models/operations/ats_list_interviews.rb +85 -0
  35. data/lib/stackone/models/operations/ats_list_job_postings.rb +88 -0
  36. data/lib/stackone/models/operations/ats_list_jobs.rb +85 -0
  37. data/lib/stackone/models/operations/ats_list_locations.rb +85 -0
  38. data/lib/stackone/models/operations/ats_list_offers.rb +85 -0
  39. data/lib/stackone/models/operations/ats_list_rejected_reasons.rb +85 -0
  40. data/lib/stackone/models/operations/ats_list_users.rb +85 -0
  41. data/lib/stackone/models/operations/ats_update_application.rb +56 -0
  42. data/lib/stackone/models/operations/ats_update_candidate.rb +56 -0
  43. data/lib/stackone/models/operations/crm_create_contact.rb +53 -0
  44. data/lib/stackone/models/operations/crm_get_account.rb +88 -0
  45. data/lib/stackone/models/operations/crm_get_contact.rb +88 -0
  46. data/lib/stackone/models/operations/crm_get_list.rb +88 -0
  47. data/lib/stackone/models/operations/crm_list_accounts.rb +85 -0
  48. data/lib/stackone/models/operations/crm_list_contacts.rb +85 -0
  49. data/lib/stackone/models/operations/crm_list_lists.rb +85 -0
  50. data/lib/stackone/models/operations/crm_update_contact.rb +56 -0
  51. data/lib/stackone/models/operations/hris_create_employee.rb +53 -0
  52. data/lib/stackone/models/operations/hris_create_employee_time_off_request.rb +56 -0
  53. data/lib/stackone/models/operations/hris_create_time_off_request.rb +53 -0
  54. data/lib/stackone/models/operations/hris_get_company.rb +88 -0
  55. data/lib/stackone/models/operations/hris_get_employee.rb +94 -0
  56. data/lib/stackone/models/operations/hris_get_employees_time_off_request.rb +91 -0
  57. data/lib/stackone/models/operations/hris_get_employment.rb +88 -0
  58. data/lib/stackone/models/operations/hris_get_location.rb +88 -0
  59. data/lib/stackone/models/operations/hris_get_time_off_request.rb +88 -0
  60. data/lib/stackone/models/operations/hris_list_companies.rb +85 -0
  61. data/lib/stackone/models/operations/hris_list_employee_time_off_requests.rb +88 -0
  62. data/lib/stackone/models/operations/hris_list_employees.rb +91 -0
  63. data/lib/stackone/models/operations/hris_list_employments.rb +85 -0
  64. data/lib/stackone/models/operations/hris_list_locations.rb +85 -0
  65. data/lib/stackone/models/operations/hris_list_time_off_requests.rb +85 -0
  66. data/lib/stackone/models/operations/hris_update_employee.rb +56 -0
  67. data/lib/stackone/models/operations/hris_update_time_off_request.rb +56 -0
  68. data/lib/stackone/models/operations/marketing_create_email_template.rb +53 -0
  69. data/lib/stackone/models/operations/marketing_create_omni_channel_template.rb +53 -0
  70. data/lib/stackone/models/operations/marketing_create_push_template.rb +53 -0
  71. data/lib/stackone/models/operations/marketing_get_campaign.rb +88 -0
  72. data/lib/stackone/models/operations/marketing_get_email_template.rb +88 -0
  73. data/lib/stackone/models/operations/marketing_get_omni_channel_template.rb +88 -0
  74. data/lib/stackone/models/operations/marketing_get_push_template.rb +88 -0
  75. data/lib/stackone/models/operations/marketing_list_campaigns.rb +85 -0
  76. data/lib/stackone/models/operations/marketing_list_email_templates.rb +85 -0
  77. data/lib/stackone/models/operations/marketing_list_omni_channel_templates.rb +85 -0
  78. data/lib/stackone/models/operations/marketing_list_push_templates.rb +85 -0
  79. data/lib/stackone/models/operations/marketing_update_email_template.rb +56 -0
  80. data/lib/stackone/models/operations/marketing_update_omni_channel_template.rb +56 -0
  81. data/lib/stackone/models/operations/marketing_update_push_template.rb +56 -0
  82. data/lib/stackone/models/operations/stackone_authenticate_connect_session.rb +35 -0
  83. data/lib/stackone/models/operations/stackone_create_connect_session.rb +35 -0
  84. data/lib/stackone/models/operations/stackone_delete_account.rb +49 -0
  85. data/lib/stackone/models/operations/stackone_get_account.rb +49 -0
  86. data/lib/stackone/models/operations/stackone_get_account_meta_info.rb +49 -0
  87. data/lib/stackone/models/operations/stackone_get_connector_meta.rb +52 -0
  88. data/lib/stackone/models/operations/stackone_list_connectors_meta.rb +48 -0
  89. data/lib/stackone/models/operations/stackone_list_linked_accounts.rb +51 -0
  90. data/lib/stackone/models/operations/stackone_proxy_request.rb +49 -0
  91. data/lib/stackone/models/operations/stackone_update_account.rb +53 -0
  92. data/lib/stackone/models/shared/account.rb +55 -0
  93. data/lib/stackone/models/shared/accountaddress.rb +342 -0
  94. data/lib/stackone/models/shared/accountresult.rb +29 -0
  95. data/lib/stackone/models/shared/accountspaginated.rb +34 -0
  96. data/lib/stackone/models/shared/answer.rb +64 -0
  97. data/lib/stackone/models/shared/application.rb +75 -0
  98. data/lib/stackone/models/shared/applicationattachment.rb +63 -0
  99. data/lib/stackone/models/shared/applicationcandidate.rb +31 -0
  100. data/lib/stackone/models/shared/applicationresult.rb +29 -0
  101. data/lib/stackone/models/shared/applicationspaginated.rb +34 -0
  102. data/lib/stackone/models/shared/applicationstatusenumapimodel.rb +50 -0
  103. data/lib/stackone/models/shared/atscreateapplicationrequestdto.rb +45 -0
  104. data/lib/stackone/models/shared/atscreatecandidaterequestdto.rb +46 -0
  105. data/lib/stackone/models/shared/atscreatenotesrequestdto.rb +57 -0
  106. data/lib/stackone/models/shared/atscreateofferrequestdto.rb +41 -0
  107. data/lib/stackone/models/shared/atslocation.rb +28 -0
  108. data/lib/stackone/models/shared/atslocationresult.rb +29 -0
  109. data/lib/stackone/models/shared/atslocationspaginated.rb +34 -0
  110. data/lib/stackone/models/shared/atsupdateapplicationrequestdto.rb +48 -0
  111. data/lib/stackone/models/shared/atsupdatecandidatesrequestdto.rb +49 -0
  112. data/lib/stackone/models/shared/attachmenttype.rb +40 -0
  113. data/lib/stackone/models/shared/campaign.rb +120 -0
  114. data/lib/stackone/models/shared/campaignresult.rb +29 -0
  115. data/lib/stackone/models/shared/campaignspaginated.rb +34 -0
  116. data/lib/stackone/models/shared/candidate.rb +64 -0
  117. data/lib/stackone/models/shared/candidateemail.rb +28 -0
  118. data/lib/stackone/models/shared/candidateresult.rb +29 -0
  119. data/lib/stackone/models/shared/candidatespaginated.rb +34 -0
  120. data/lib/stackone/models/shared/channelsenum.rb +42 -0
  121. data/lib/stackone/models/shared/companiespaginated.rb +34 -0
  122. data/lib/stackone/models/shared/company.rb +37 -0
  123. data/lib/stackone/models/shared/companyresult.rb +29 -0
  124. data/lib/stackone/models/shared/compensation.rb +149 -0
  125. data/lib/stackone/models/shared/connectorsmeta.rb +73 -0
  126. data/lib/stackone/models/shared/connectsession.rb +68 -0
  127. data/lib/stackone/models/shared/connectsessionauthenticate.rb +25 -0
  128. data/lib/stackone/models/shared/connectsessioncreate.rb +72 -0
  129. data/lib/stackone/models/shared/connectsessiontoken.rb +71 -0
  130. data/lib/stackone/models/shared/contact.rb +52 -0
  131. data/lib/stackone/models/shared/contactresult.rb +29 -0
  132. data/lib/stackone/models/shared/contactspaginated.rb +34 -0
  133. data/lib/stackone/models/shared/countrycodeenum.rb +284 -0
  134. data/lib/stackone/models/shared/createcandidatenoteresult.rb +31 -0
  135. data/lib/stackone/models/shared/createemployeeresult.rb +31 -0
  136. data/lib/stackone/models/shared/createofferresult.rb +31 -0
  137. data/lib/stackone/models/shared/createresult.rb +31 -0
  138. data/lib/stackone/models/shared/createtemplateresult.rb +31 -0
  139. data/lib/stackone/models/shared/createtimeoffresult.rb +31 -0
  140. data/lib/stackone/models/shared/crmcreatecontactrequestdto.rb +43 -0
  141. data/lib/stackone/models/shared/department.rb +28 -0
  142. data/lib/stackone/models/shared/departmentresult.rb +29 -0
  143. data/lib/stackone/models/shared/departmentspaginated.rb +34 -0
  144. data/lib/stackone/models/shared/emailmessages.rb +93 -0
  145. data/lib/stackone/models/shared/employee.rb +1035 -0
  146. data/lib/stackone/models/shared/employeecustomfields.rb +83 -0
  147. data/lib/stackone/models/shared/employeeresult.rb +29 -0
  148. data/lib/stackone/models/shared/employeespaginated.rb +34 -0
  149. data/lib/stackone/models/shared/employment.rb +191 -0
  150. data/lib/stackone/models/shared/employmentresult.rb +29 -0
  151. data/lib/stackone/models/shared/employmentspaginated.rb +34 -0
  152. data/lib/stackone/models/shared/field.rb +56 -0
  153. data/lib/stackone/models/shared/hiringteam.rb +37 -0
  154. data/lib/stackone/models/shared/hriscreateemployeerequestdto.rb +8638 -0
  155. data/lib/stackone/models/shared/hriscreatetimeoffrequestdto.rb +93 -0
  156. data/lib/stackone/models/shared/hrislocation.rb +361 -0
  157. data/lib/stackone/models/shared/hrislocationresult.rb +29 -0
  158. data/lib/stackone/models/shared/hrislocationspaginated.rb +34 -0
  159. data/lib/stackone/models/shared/interview.rb +91 -0
  160. data/lib/stackone/models/shared/interviewer.rb +37 -0
  161. data/lib/stackone/models/shared/interviewpart.rb +40 -0
  162. data/lib/stackone/models/shared/interviewspaginated.rb +34 -0
  163. data/lib/stackone/models/shared/interviewsresult.rb +29 -0
  164. data/lib/stackone/models/shared/interviewstage.rb +37 -0
  165. data/lib/stackone/models/shared/interviewstageresult.rb +29 -0
  166. data/lib/stackone/models/shared/interviewstagespaginated.rb +34 -0
  167. data/lib/stackone/models/shared/job.rb +65 -0
  168. data/lib/stackone/models/shared/jobposting.rb +182 -0
  169. data/lib/stackone/models/shared/jobpostingresult.rb +29 -0
  170. data/lib/stackone/models/shared/jobpostingspaginated.rb +34 -0
  171. data/lib/stackone/models/shared/jobresult.rb +29 -0
  172. data/lib/stackone/models/shared/jobspaginated.rb +34 -0
  173. data/lib/stackone/models/shared/jobstatusenum.rb +43 -0
  174. data/lib/stackone/models/shared/linkedaccount.rb +75 -0
  175. data/lib/stackone/models/shared/linkedaccountmeta.rb +54 -0
  176. data/lib/stackone/models/shared/list.rb +67 -0
  177. data/lib/stackone/models/shared/listresult.rb +29 -0
  178. data/lib/stackone/models/shared/listspaginated.rb +34 -0
  179. data/lib/stackone/models/shared/location.rb +28 -0
  180. data/lib/stackone/models/shared/marketingcreateemailtemplaterequestdto.rb +34 -0
  181. data/lib/stackone/models/shared/marketingcreatepushtemplaterequestdto.rb +34 -0
  182. data/lib/stackone/models/shared/marketingcreatetemplaterequestdto.rb +34 -0
  183. data/lib/stackone/models/shared/message.rb +50 -0
  184. data/lib/stackone/models/shared/note.rb +69 -0
  185. data/lib/stackone/models/shared/notecontentapimodel.rb +25 -0
  186. data/lib/stackone/models/shared/noteresult.rb +29 -0
  187. data/lib/stackone/models/shared/notespaginated.rb +34 -0
  188. data/lib/stackone/models/shared/offer.rb +50 -0
  189. data/lib/stackone/models/shared/offerhistory.rb +37 -0
  190. data/lib/stackone/models/shared/offerspaginated.rb +34 -0
  191. data/lib/stackone/models/shared/offersresult.rb +29 -0
  192. data/lib/stackone/models/shared/offerstatusenum.rb +43 -0
  193. data/lib/stackone/models/shared/patchaccountdto.rb +21 -0
  194. data/lib/stackone/models/shared/proxyrequestbody.rb +69 -0
  195. data/lib/stackone/models/shared/pushmessages.rb +81 -0
  196. data/lib/stackone/models/shared/questionnaire.rb +28 -0
  197. data/lib/stackone/models/shared/rawresponse.rb +44 -0
  198. data/lib/stackone/models/shared/rejectedreason.rb +32 -0
  199. data/lib/stackone/models/shared/rejectedreasonresult.rb +29 -0
  200. data/lib/stackone/models/shared/rejectedreasonspaginated.rb +34 -0
  201. data/lib/stackone/models/shared/rejectedreasontypeenum.rb +40 -0
  202. data/lib/stackone/models/shared/resultlink.rb +28 -0
  203. data/lib/stackone/models/shared/scorecard.rb +65 -0
  204. data/lib/stackone/models/shared/scorecardsection.rb +31 -0
  205. data/lib/stackone/models/shared/scorecardspaginated.rb +34 -0
  206. data/lib/stackone/models/shared/security.rb +28 -0
  207. data/lib/stackone/models/shared/sociallink.rb +28 -0
  208. data/lib/stackone/models/shared/template.rb +37 -0
  209. data/lib/stackone/models/shared/templateresult.rb +29 -0
  210. data/lib/stackone/models/shared/templatespaginated.rb +34 -0
  211. data/lib/stackone/models/shared/timeoff.rb +102 -0
  212. data/lib/stackone/models/shared/timeoffpaginated.rb +34 -0
  213. data/lib/stackone/models/shared/timeoffresult.rb +29 -0
  214. data/lib/stackone/models/shared/updateresult.rb +31 -0
  215. data/lib/stackone/models/shared/user.rb +40 -0
  216. data/lib/stackone/models/shared/userresult.rb +29 -0
  217. data/lib/stackone/models/shared/userspaginated.rb +34 -0
  218. data/lib/stackone/proxy.rb +59 -0
  219. data/lib/stackone/sdk.rb +87 -0
  220. data/lib/stackone/sdkconfiguration.rb +53 -0
  221. data/lib/stackone/utils/metadata_fields.rb +154 -0
  222. data/lib/stackone/utils/utils.rb +774 -0
  223. data/lib/stackone_client.rb +229 -0
  224. metadata +393 -0
@@ -0,0 +1,34 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+
12
+ class ApplicationsPaginated < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :data, T::Array[Shared::Application], { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('data') } }
17
+
18
+ field :next_, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('next') } }
19
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
20
+ field :next_page, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('next_page') } }
21
+
22
+ field :raw, T.nilable(T::Array[Shared::RawResponse]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('raw') } }
23
+
24
+
25
+ sig { params(data: T::Array[Shared::Application], next_: T.nilable(String), next_page: T.nilable(String), raw: T.nilable(T::Array[Shared::RawResponse])).void }
26
+ def initialize(data: nil, next_: nil, next_page: nil, raw: nil)
27
+ @data = data
28
+ @next_ = next_
29
+ @next_page = next_page
30
+ @raw = raw
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,50 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+ # Value - The status of the application.
12
+ class Value < T::Enum
13
+ enums do
14
+ ACTIVE = new('active')
15
+ ASSESSMENT = new('assessment')
16
+ BACKGROUND_CHECK = new('background_check')
17
+ CONVERTED = new('converted')
18
+ DECLINED_BY_CANDIDATE = new('declined_by_candidate')
19
+ HIRED = new('hired')
20
+ INTERVIEW = new('interview')
21
+ LEAD = new('lead')
22
+ OFFER = new('offer')
23
+ REFERENCE_CHECK = new('reference_check')
24
+ REJECTED = new('rejected')
25
+ REVIEW = new('review')
26
+ SCREEN = new('screen')
27
+ NEW = new('new')
28
+ UNMAPPED_VALUE = new('unmapped_value')
29
+ end
30
+ end
31
+
32
+
33
+
34
+ class ApplicationStatusEnumApiModel < StackOne::Utils::FieldAugmented
35
+ extend T::Sig
36
+
37
+ # The source value of the application status.
38
+ field :source_value, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
39
+ # The status of the application.
40
+ field :value, Shared::Value, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::Value, false) } }
41
+
42
+
43
+ sig { params(source_value: String, value: Shared::Value).void }
44
+ def initialize(source_value: nil, value: nil)
45
+ @source_value = source_value
46
+ @value = value
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,45 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+ require_relative '../shared/applicationstatusenumapimodel'
9
+ require_relative '../shared/applicationcandidate'
10
+
11
+ module StackOne
12
+ module Shared
13
+
14
+ class AtsCreateApplicationRequestDto < StackOne::Utils::FieldAugmented
15
+ extend T::Sig
16
+
17
+
18
+ field :application_status, Shared::ApplicationStatusEnumApiModel, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('application_status') } }
19
+
20
+ field :candidate, Shared::ApplicationCandidate, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('candidate') } }
21
+
22
+ field :attachments, T.nilable(T::Array[Shared::ApplicationAttachment]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('attachments') } }
23
+ # Unique identifier of the candidate
24
+ field :candidate_id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('candidate_id') } }
25
+ # Unique identifier of the job
26
+ field :job_id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('job_id') } }
27
+ # Unique identifiers of the locations
28
+ field :location_ids, T.nilable(T::Array[String]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('location_ids') } }
29
+ # Questionnaires associated with the application
30
+ field :questionnaires, T.nilable(T::Array[Shared::Questionnaire]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('questionnaires') } }
31
+
32
+
33
+ sig { params(application_status: Shared::ApplicationStatusEnumApiModel, candidate: Shared::ApplicationCandidate, attachments: T.nilable(T::Array[Shared::ApplicationAttachment]), candidate_id: T.nilable(String), job_id: T.nilable(String), location_ids: T.nilable(T::Array[String]), questionnaires: T.nilable(T::Array[Shared::Questionnaire])).void }
34
+ def initialize(application_status: nil, candidate: nil, attachments: nil, candidate_id: nil, job_id: nil, location_ids: nil, questionnaires: nil)
35
+ @application_status = application_status
36
+ @candidate = candidate
37
+ @attachments = attachments
38
+ @candidate_id = candidate_id
39
+ @job_id = job_id
40
+ @location_ids = location_ids
41
+ @questionnaires = questionnaires
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,46 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+
12
+ class AtsCreateCandidateRequestDto < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+ # List of candidate emails
16
+ field :emails, T::Array[Shared::CandidateEmail], { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('emails') } }
17
+ # Candidate first name
18
+ field :first_name, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('first_name') } }
19
+ # Candidate last name
20
+ field :last_name, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('last_name') } }
21
+ # Candidate name
22
+ field :name, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('name') } }
23
+ # Candidate title
24
+ field :title, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('title') } }
25
+ # List of candidate application IDs
26
+ field :application_ids, T.nilable(T::Array[String]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('application_ids') } }
27
+ # Candidate company
28
+ field :company, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('company') } }
29
+ # Candidate phone number
30
+ field :phone, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('phone') } }
31
+
32
+
33
+ sig { params(emails: T::Array[Shared::CandidateEmail], first_name: String, last_name: String, name: String, title: String, application_ids: T.nilable(T::Array[String]), company: T.nilable(String), phone: T.nilable(String)).void }
34
+ def initialize(emails: nil, first_name: nil, last_name: nil, name: nil, title: nil, application_ids: nil, company: nil, phone: nil)
35
+ @emails = emails
36
+ @first_name = first_name
37
+ @last_name = last_name
38
+ @name = name
39
+ @title = title
40
+ @application_ids = application_ids
41
+ @company = company
42
+ @phone = phone
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,57 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+ # AtsCreateNotesRequestDtoValue - The visibility of the notes.
12
+ class AtsCreateNotesRequestDtoValue < T::Enum
13
+ enums do
14
+ PRIVATE = new('private')
15
+ PUBLIC = new('public')
16
+ end
17
+ end
18
+
19
+
20
+ # Visibility of the note
21
+ class Visibility < StackOne::Utils::FieldAugmented
22
+ extend T::Sig
23
+
24
+ # The source value of the notes visibility.
25
+ field :source_value, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
26
+ # The visibility of the notes.
27
+ field :value, T.nilable(Shared::AtsCreateNotesRequestDtoValue), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::AtsCreateNotesRequestDtoValue, true) } }
28
+
29
+
30
+ sig { params(source_value: T.nilable(String), value: T.nilable(Shared::AtsCreateNotesRequestDtoValue)).void }
31
+ def initialize(source_value: nil, value: nil)
32
+ @source_value = source_value
33
+ @value = value
34
+ end
35
+ end
36
+
37
+
38
+ class AtsCreateNotesRequestDto < StackOne::Utils::FieldAugmented
39
+ extend T::Sig
40
+
41
+
42
+ field :content, T::Array[Shared::NoteContentApiModel], { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('content') } }
43
+ # Unique identifier of the author
44
+ field :author_id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('author_id') } }
45
+ # Visibility of the note
46
+ field :visibility, T.nilable(Shared::Visibility), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('visibility') } }
47
+
48
+
49
+ sig { params(content: T::Array[Shared::NoteContentApiModel], author_id: T.nilable(String), visibility: T.nilable(Shared::Visibility)).void }
50
+ def initialize(content: nil, author_id: nil, visibility: nil)
51
+ @content = content
52
+ @author_id = author_id
53
+ @visibility = visibility
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,41 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+ require_relative '../shared/offerstatusenum'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class AtsCreateOfferRequestDto < StackOne::Utils::FieldAugmented
14
+ extend T::Sig
15
+
16
+
17
+ field :application_id, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('application_id') } }
18
+
19
+ field :offer_status, Shared::OfferStatusEnum, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('offer_status') } }
20
+ # Date of creation
21
+ field :start_date, DateTime, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('start_date'), 'decoder': Utils.datetime_from_iso_format(false) } }
22
+
23
+ field :currency, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('currency') } }
24
+
25
+ field :offer_history, T.nilable(T::Array[Shared::OfferHistory]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('offer_history') } }
26
+
27
+ field :salary, T.nilable(Float), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('salary') } }
28
+
29
+
30
+ sig { params(application_id: String, offer_status: Shared::OfferStatusEnum, start_date: DateTime, currency: T.nilable(String), offer_history: T.nilable(T::Array[Shared::OfferHistory]), salary: T.nilable(Float)).void }
31
+ def initialize(application_id: nil, offer_status: nil, start_date: nil, currency: nil, offer_history: nil, salary: nil)
32
+ @application_id = application_id
33
+ @offer_status = offer_status
34
+ @start_date = start_date
35
+ @currency = currency
36
+ @offer_history = offer_history
37
+ @salary = salary
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+
12
+ class ATSLocation < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :id, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('id') } }
17
+
18
+ field :name, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('name') } }
19
+
20
+
21
+ sig { params(id: String, name: String).void }
22
+ def initialize(id: nil, name: nil)
23
+ @id = id
24
+ @name = name
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,29 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+ require_relative '../shared/atslocation'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class ATSLocationResult < StackOne::Utils::FieldAugmented
14
+ extend T::Sig
15
+
16
+
17
+ field :data, Shared::ATSLocation, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('data') } }
18
+
19
+ field :raw, T.nilable(T::Array[Shared::RawResponse]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('raw') } }
20
+
21
+
22
+ sig { params(data: Shared::ATSLocation, raw: T.nilable(T::Array[Shared::RawResponse])).void }
23
+ def initialize(data: nil, raw: nil)
24
+ @data = data
25
+ @raw = raw
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,34 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+
12
+ class ATSLocationsPaginated < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :data, T::Array[Shared::ATSLocation], { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('data') } }
17
+
18
+ field :next_, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('next') } }
19
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
20
+ field :next_page, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('next_page') } }
21
+
22
+ field :raw, T.nilable(T::Array[Shared::RawResponse]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('raw') } }
23
+
24
+
25
+ sig { params(data: T::Array[Shared::ATSLocation], next_: T.nilable(String), next_page: T.nilable(String), raw: T.nilable(T::Array[Shared::RawResponse])).void }
26
+ def initialize(data: nil, next_: nil, next_page: nil, raw: nil)
27
+ @data = data
28
+ @next_ = next_
29
+ @next_page = next_page
30
+ @raw = raw
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,48 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+ require_relative '../shared/applicationstatusenumapimodel'
9
+ require_relative '../shared/applicationcandidate'
10
+
11
+ module StackOne
12
+ module Shared
13
+
14
+ class AtsUpdateApplicationRequestDto < StackOne::Utils::FieldAugmented
15
+ extend T::Sig
16
+
17
+
18
+ field :application_status, T.nilable(Shared::ApplicationStatusEnumApiModel), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('application_status') } }
19
+
20
+ field :attachments, T.nilable(T::Array[Shared::ApplicationAttachment]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('attachments') } }
21
+
22
+ field :candidate, T.nilable(Shared::ApplicationCandidate), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('candidate') } }
23
+ # Unique identifier of the candidate
24
+ field :candidate_id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('candidate_id') } }
25
+ # The ID of the application to update.
26
+ field :id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('id') } }
27
+ # Unique identifier of the job
28
+ field :job_id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('job_id') } }
29
+ # Unique identifiers of the locations
30
+ field :location_ids, T.nilable(T::Array[String]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('location_ids') } }
31
+ # Questionnaires associated with the application
32
+ field :questionnaires, T.nilable(T::Array[Shared::Questionnaire]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('questionnaires') } }
33
+
34
+
35
+ sig { params(application_status: T.nilable(Shared::ApplicationStatusEnumApiModel), attachments: T.nilable(T::Array[Shared::ApplicationAttachment]), candidate: T.nilable(Shared::ApplicationCandidate), candidate_id: T.nilable(String), id: T.nilable(String), job_id: T.nilable(String), location_ids: T.nilable(T::Array[String]), questionnaires: T.nilable(T::Array[Shared::Questionnaire])).void }
36
+ def initialize(application_status: nil, attachments: nil, candidate: nil, candidate_id: nil, id: nil, job_id: nil, location_ids: nil, questionnaires: nil)
37
+ @application_status = application_status
38
+ @attachments = attachments
39
+ @candidate = candidate
40
+ @candidate_id = candidate_id
41
+ @id = id
42
+ @job_id = job_id
43
+ @location_ids = location_ids
44
+ @questionnaires = questionnaires
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,49 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+
12
+ class AtsUpdateCandidatesRequestDto < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+ # List of candidate application IDs
16
+ field :application_ids, T.nilable(T::Array[String]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('application_ids') } }
17
+ # Candidate company
18
+ field :company, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('company') } }
19
+ # List of candidate emails
20
+ field :emails, T.nilable(T::Array[Shared::CandidateEmail]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('emails') } }
21
+ # Candidate first name
22
+ field :first_name, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('first_name') } }
23
+ # The ID of the candidate to update.
24
+ field :id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('id') } }
25
+ # Candidate last name
26
+ field :last_name, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('last_name') } }
27
+ # Candidate name
28
+ field :name, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('name') } }
29
+ # Candidate phone number
30
+ field :phone, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('phone') } }
31
+ # Candidate title
32
+ field :title, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('title') } }
33
+
34
+
35
+ sig { params(application_ids: T.nilable(T::Array[String]), company: T.nilable(String), emails: T.nilable(T::Array[Shared::CandidateEmail]), first_name: T.nilable(String), id: T.nilable(String), last_name: T.nilable(String), name: T.nilable(String), phone: T.nilable(String), title: T.nilable(String)).void }
36
+ def initialize(application_ids: nil, company: nil, emails: nil, first_name: nil, id: nil, last_name: nil, name: nil, phone: nil, title: nil)
37
+ @application_ids = application_ids
38
+ @company = company
39
+ @emails = emails
40
+ @first_name = first_name
41
+ @id = id
42
+ @last_name = last_name
43
+ @name = name
44
+ @phone = phone
45
+ @title = title
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,40 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+ # AttachmentTypeValue - The type of the attachment.
12
+ class AttachmentTypeValue < T::Enum
13
+ enums do
14
+ RESUME = new('resume')
15
+ GENERIC_FILE = new('generic_file')
16
+ COVER_LETTER = new('cover_letter')
17
+ AVATAR = new('avatar')
18
+ UNMAPPED_VALUE = new('unmapped_value')
19
+ end
20
+ end
21
+
22
+
23
+
24
+ class AttachmentType < StackOne::Utils::FieldAugmented
25
+ extend T::Sig
26
+
27
+ # The source value of the attachment type.
28
+ field :source_value, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
29
+ # The type of the attachment.
30
+ field :value, T.nilable(Shared::AttachmentTypeValue), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::AttachmentTypeValue, true) } }
31
+
32
+
33
+ sig { params(source_value: T.nilable(String), value: T.nilable(Shared::AttachmentTypeValue)).void }
34
+ def initialize(source_value: nil, value: nil)
35
+ @source_value = source_value
36
+ @value = value
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,120 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+
9
+ module StackOne
10
+ module Shared
11
+ # CampaignValue - The schedule type of the campaign.
12
+ class CampaignValue < T::Enum
13
+ enums do
14
+ IMMEDIATE = new('immediate')
15
+ SCHEDULED = new('scheduled')
16
+ RECURRING = new('recurring')
17
+ CUSTOM = new('custom')
18
+ TRIGGERED = new('triggered')
19
+ end
20
+ end
21
+
22
+
23
+ # The schedule type
24
+ class ScheduleType < StackOne::Utils::FieldAugmented
25
+ extend T::Sig
26
+
27
+ # The source value of the schedule type.
28
+ field :source_value, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
29
+ # The schedule type of the campaign.
30
+ field :value, Shared::CampaignValue, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::CampaignValue, false) } }
31
+
32
+
33
+ sig { params(source_value: String, value: Shared::CampaignValue).void }
34
+ def initialize(source_value: nil, value: nil)
35
+ @source_value = source_value
36
+ @value = value
37
+ end
38
+ end
39
+
40
+ # CampaignSchemasValue - The Status of the campaign.
41
+ class CampaignSchemasValue < T::Enum
42
+ enums do
43
+ DRAFT = new('draft')
44
+ ARCHIVED = new('archived')
45
+ LIVE = new('live')
46
+ end
47
+ end
48
+
49
+
50
+ # Status of the Campaign
51
+ class Status < StackOne::Utils::FieldAugmented
52
+ extend T::Sig
53
+
54
+ # The source value of the Status.
55
+ field :source_value, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
56
+ # The Status of the campaign.
57
+ field :value, Shared::CampaignSchemasValue, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::CampaignSchemasValue, false) } }
58
+
59
+
60
+ sig { params(source_value: String, value: Shared::CampaignSchemasValue).void }
61
+ def initialize(source_value: nil, value: nil)
62
+ @source_value = source_value
63
+ @value = value
64
+ end
65
+ end
66
+
67
+
68
+ class Campaign < StackOne::Utils::FieldAugmented
69
+ extend T::Sig
70
+
71
+
72
+ field :name, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('name') } }
73
+
74
+ field :archived, T.nilable(T::Boolean), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('archived') } }
75
+ # channels of the Campaign
76
+ field :channels, T.nilable(T::Array[Shared::ChannelsEnum]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('channels') } }
77
+ # The created_at date
78
+ field :created_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
79
+
80
+ field :description, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('description') } }
81
+
82
+ field :draft, T.nilable(T::Boolean), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('draft') } }
83
+ # The first_sent_at date
84
+ field :first_sent_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('first_sent_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
85
+
86
+ field :id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('id') } }
87
+ # The last_sent_at date
88
+ field :last_sent_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('last_sent_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
89
+
90
+ field :messages, T.nilable(T::Array[Shared::Message]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('messages') } }
91
+ # The schedule type
92
+ field :schedule_type, T.nilable(Shared::ScheduleType), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('schedule_type') } }
93
+ # Status of the Campaign
94
+ field :status, T.nilable(Shared::Status), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('status') } }
95
+
96
+ field :tags, T.nilable(T::Array[String]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('tags') } }
97
+ # The updated_at date
98
+ field :updated_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
99
+
100
+
101
+ sig { params(name: String, archived: T.nilable(T::Boolean), channels: T.nilable(T::Array[Shared::ChannelsEnum]), created_at: T.nilable(DateTime), description: T.nilable(String), draft: T.nilable(T::Boolean), first_sent_at: T.nilable(DateTime), id: T.nilable(String), last_sent_at: T.nilable(DateTime), messages: T.nilable(T::Array[Shared::Message]), schedule_type: T.nilable(Shared::ScheduleType), status: T.nilable(Shared::Status), tags: T.nilable(T::Array[String]), updated_at: T.nilable(DateTime)).void }
102
+ def initialize(name: nil, archived: nil, channels: nil, created_at: nil, description: nil, draft: nil, first_sent_at: nil, id: nil, last_sent_at: nil, messages: nil, schedule_type: nil, status: nil, tags: nil, updated_at: nil)
103
+ @name = name
104
+ @archived = archived
105
+ @channels = channels
106
+ @created_at = created_at
107
+ @description = description
108
+ @draft = draft
109
+ @first_sent_at = first_sent_at
110
+ @id = id
111
+ @last_sent_at = last_sent_at
112
+ @messages = messages
113
+ @schedule_type = schedule_type
114
+ @status = status
115
+ @tags = tags
116
+ @updated_at = updated_at
117
+ end
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,29 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'sorbet-runtime'
7
+ require 'faraday'
8
+ require_relative '../shared/campaign'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class CampaignResult < StackOne::Utils::FieldAugmented
14
+ extend T::Sig
15
+
16
+
17
+ field :data, Shared::Campaign, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('data') } }
18
+
19
+ field :raw, T.nilable(T::Array[Shared::RawResponse]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('raw') } }
20
+
21
+
22
+ sig { params(data: Shared::Campaign, raw: T.nilable(T::Array[Shared::RawResponse])).void }
23
+ def initialize(data: nil, raw: nil)
24
+ @data = data
25
+ @raw = raw
26
+ end
27
+ end
28
+ end
29
+ end