stackone_client 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
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 InterviewsPaginated < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :data, T::Array[Shared::Interview], { '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::Interview], 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,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/interview'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class InterviewsResult < StackOne::Utils::FieldAugmented
14
+ extend T::Sig
15
+
16
+
17
+ field :data, Shared::Interview, { '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::Interview, 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,37 @@
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 InterviewStage < 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
+ # Interview Stage created date
20
+ field :created_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
21
+
22
+ field :order, T.nilable(Float), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('order') } }
23
+ # Interview Stage updated date
24
+ field :updated_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
25
+
26
+
27
+ sig { params(id: String, name: String, created_at: T.nilable(DateTime), order: T.nilable(Float), updated_at: T.nilable(DateTime)).void }
28
+ def initialize(id: nil, name: nil, created_at: nil, order: nil, updated_at: nil)
29
+ @id = id
30
+ @name = name
31
+ @created_at = created_at
32
+ @order = order
33
+ @updated_at = updated_at
34
+ end
35
+ end
36
+ end
37
+ 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/interviewstage'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class InterviewStageResult < StackOne::Utils::FieldAugmented
14
+ extend T::Sig
15
+
16
+
17
+ field :data, Shared::InterviewStage, { '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::InterviewStage, 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 InterviewStagesPaginated < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :data, T::Array[Shared::InterviewStage], { '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::InterviewStage], 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,65 @@
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/jobstatusenum'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class Confidential < T::Enum
14
+ enums do
15
+ TRUE = new('true')
16
+ FALSE = new('false')
17
+ end
18
+ end
19
+
20
+
21
+
22
+ class Job < StackOne::Utils::FieldAugmented
23
+ extend T::Sig
24
+
25
+
26
+ field :code, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('code') } }
27
+
28
+ field :company_id, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('company_id') } }
29
+ # Date of creation
30
+ field :created_at, DateTime, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(false) } }
31
+
32
+ field :department_ids, T::Array[String], { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('department_ids') } }
33
+
34
+ field :id, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('id') } }
35
+
36
+ field :job_status, Shared::JobStatusEnum, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('job_status') } }
37
+
38
+ field :location_ids, T::Array[String], { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('location_ids') } }
39
+
40
+ field :title, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('title') } }
41
+ # Date of last update
42
+ field :updated_at, DateTime, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(false) } }
43
+
44
+ field :confidential, T.nilable(Shared::Confidential), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('confidential'), 'decoder': Utils.enum_from_string(Shared::Confidential, true) } }
45
+
46
+ field :hiring_team, T.nilable(T::Array[Shared::HiringTeam]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('hiring_team') } }
47
+
48
+
49
+ sig { params(code: String, company_id: String, created_at: DateTime, department_ids: T::Array[String], id: String, job_status: Shared::JobStatusEnum, location_ids: T::Array[String], title: String, updated_at: DateTime, confidential: T.nilable(Shared::Confidential), hiring_team: T.nilable(T::Array[Shared::HiringTeam])).void }
50
+ def initialize(code: nil, company_id: nil, created_at: nil, department_ids: nil, id: nil, job_status: nil, location_ids: nil, title: nil, updated_at: nil, confidential: nil, hiring_team: nil)
51
+ @code = code
52
+ @company_id = company_id
53
+ @created_at = created_at
54
+ @department_ids = department_ids
55
+ @id = id
56
+ @job_status = job_status
57
+ @location_ids = location_ids
58
+ @title = title
59
+ @updated_at = updated_at
60
+ @confidential = confidential
61
+ @hiring_team = hiring_team
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,182 @@
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 Content < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :html, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('html') } }
17
+
18
+ field :plain, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('plain') } }
19
+
20
+
21
+ sig { params(html: T.nilable(String), plain: T.nilable(String)).void }
22
+ def initialize(html: nil, plain: nil)
23
+ @html = html
24
+ @plain = plain
25
+ end
26
+ end
27
+
28
+ # JobPostingValue - The employment contract type.
29
+ class JobPostingValue < T::Enum
30
+ enums do
31
+ FULL_TIME = new('full_time')
32
+ SHIFTS = new('shifts')
33
+ PART_TIME = new('part_time')
34
+ UNMAPPED_VALUE = new('unmapped_value')
35
+ end
36
+ end
37
+
38
+
39
+
40
+ class JobPostingEmploymentContractType < StackOne::Utils::FieldAugmented
41
+ extend T::Sig
42
+
43
+ # The source value of the employment contract type.
44
+ field :source_value, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
45
+ # The employment contract type.
46
+ field :value, Shared::JobPostingValue, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::JobPostingValue, false) } }
47
+
48
+
49
+ sig { params(source_value: String, value: Shared::JobPostingValue).void }
50
+ def initialize(source_value: nil, value: nil)
51
+ @source_value = source_value
52
+ @value = value
53
+ end
54
+ end
55
+
56
+ # JobPostingSchemasValue - The type of the employment.
57
+ class JobPostingSchemasValue < T::Enum
58
+ enums do
59
+ PERMANENT = new('permanent')
60
+ CONTRACTOR = new('contractor')
61
+ INTERN = new('intern')
62
+ APPRENTICE = new('apprentice')
63
+ FREELANCE = new('freelance')
64
+ TEMPORARY = new('temporary')
65
+ SEASONAL = new('seasonal')
66
+ VOLUNTEER = new('volunteer')
67
+ UNMAPPED_VALUE = new('unmapped_value')
68
+ end
69
+ end
70
+
71
+
72
+
73
+ class JobPostingEmploymentType < StackOne::Utils::FieldAugmented
74
+ extend T::Sig
75
+
76
+ # The source value of the employment type.
77
+ field :source_value, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
78
+ # The type of the employment.
79
+ field :value, Shared::JobPostingSchemasValue, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::JobPostingSchemasValue, false) } }
80
+
81
+
82
+ sig { params(source_value: String, value: Shared::JobPostingSchemasValue).void }
83
+ def initialize(source_value: nil, value: nil)
84
+ @source_value = source_value
85
+ @value = value
86
+ end
87
+ end
88
+
89
+
90
+ class Internal < T::Enum
91
+ enums do
92
+ TRUE = new('true')
93
+ FALSE = new('false')
94
+ end
95
+ end
96
+
97
+
98
+ # JobPostingSchemasStatusValue - The status of the job postings.
99
+ class JobPostingSchemasStatusValue < T::Enum
100
+ enums do
101
+ LIVE = new('live')
102
+ DRAFT = new('draft')
103
+ CLOSED = new('closed')
104
+ UNMAPPED_VALUE = new('unmapped_value')
105
+ end
106
+ end
107
+
108
+
109
+
110
+ class JobPostingStatus < StackOne::Utils::FieldAugmented
111
+ extend T::Sig
112
+
113
+ # The source value of the job postings status.
114
+ field :source_value, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
115
+ # The status of the job postings.
116
+ field :value, Shared::JobPostingSchemasStatusValue, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::JobPostingSchemasStatusValue, false) } }
117
+
118
+
119
+ sig { params(source_value: String, value: Shared::JobPostingSchemasStatusValue).void }
120
+ def initialize(source_value: nil, value: nil)
121
+ @source_value = source_value
122
+ @value = value
123
+ end
124
+ end
125
+
126
+
127
+ class JobPosting < StackOne::Utils::FieldAugmented
128
+ extend T::Sig
129
+
130
+
131
+ field :id, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('id') } }
132
+
133
+ field :compensation, T.nilable(T::Array[Shared::Compensation]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('compensation') } }
134
+
135
+ field :content, T.nilable(Shared::Content), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('content') } }
136
+ # Date of creation
137
+ field :created_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
138
+
139
+ field :employment_contract_type, T.nilable(Shared::JobPostingEmploymentContractType), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('employment_contract_type') } }
140
+
141
+ field :employment_type, T.nilable(Shared::JobPostingEmploymentType), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('employment_type') } }
142
+
143
+ field :external_apply_url, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('external_apply_url') } }
144
+
145
+ field :external_url, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('external_url') } }
146
+
147
+ field :internal, T.nilable(Shared::Internal), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('internal'), 'decoder': Utils.enum_from_string(Shared::Internal, true) } }
148
+
149
+ field :job_id, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('job_id') } }
150
+
151
+ field :locations, T.nilable(T::Array[Shared::Location]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('locations') } }
152
+
153
+ field :questionnaires, T.nilable(T::Array[Shared::Questionnaire]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('questionnaires') } }
154
+
155
+ field :status, T.nilable(Shared::JobPostingStatus), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('status') } }
156
+
157
+ field :title, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('title') } }
158
+ # Date of last update
159
+ field :updated_at, T.nilable(DateTime), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
160
+
161
+
162
+ sig { params(id: String, compensation: T.nilable(T::Array[Shared::Compensation]), content: T.nilable(Shared::Content), created_at: T.nilable(DateTime), employment_contract_type: T.nilable(Shared::JobPostingEmploymentContractType), employment_type: T.nilable(Shared::JobPostingEmploymentType), external_apply_url: T.nilable(String), external_url: T.nilable(String), internal: T.nilable(Shared::Internal), job_id: T.nilable(String), locations: T.nilable(T::Array[Shared::Location]), questionnaires: T.nilable(T::Array[Shared::Questionnaire]), status: T.nilable(Shared::JobPostingStatus), title: T.nilable(String), updated_at: T.nilable(DateTime)).void }
163
+ def initialize(id: nil, compensation: nil, content: nil, created_at: nil, employment_contract_type: nil, employment_type: nil, external_apply_url: nil, external_url: nil, internal: nil, job_id: nil, locations: nil, questionnaires: nil, status: nil, title: nil, updated_at: nil)
164
+ @id = id
165
+ @compensation = compensation
166
+ @content = content
167
+ @created_at = created_at
168
+ @employment_contract_type = employment_contract_type
169
+ @employment_type = employment_type
170
+ @external_apply_url = external_apply_url
171
+ @external_url = external_url
172
+ @internal = internal
173
+ @job_id = job_id
174
+ @locations = locations
175
+ @questionnaires = questionnaires
176
+ @status = status
177
+ @title = title
178
+ @updated_at = updated_at
179
+ end
180
+ end
181
+ end
182
+ 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/jobposting'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class JobPostingResult < StackOne::Utils::FieldAugmented
14
+ extend T::Sig
15
+
16
+
17
+ field :data, Shared::JobPosting, { '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::JobPosting, 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 JobPostingsPaginated < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :data, T::Array[Shared::JobPosting], { '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::JobPosting], 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,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/job'
9
+
10
+ module StackOne
11
+ module Shared
12
+
13
+ class JobResult < StackOne::Utils::FieldAugmented
14
+ extend T::Sig
15
+
16
+
17
+ field :job, Shared::Job, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('job') } }
18
+
19
+ field :raw, T.nilable(T::Array[Shared::RawResponse]), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('raw') } }
20
+
21
+
22
+ sig { params(job: Shared::Job, raw: T.nilable(T::Array[Shared::RawResponse])).void }
23
+ def initialize(job: nil, raw: nil)
24
+ @job = job
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 JobsPaginated < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :data, T::Array[Shared::Job], { '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::Job], 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,43 @@
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
+ # JobStatusEnumValue - The status of the job.
12
+ class JobStatusEnumValue < T::Enum
13
+ enums do
14
+ PUBLISHED = new('published')
15
+ DRAFT = new('draft')
16
+ PENDING = new('pending')
17
+ INTERNAL = new('internal')
18
+ ARCHIVED = new('archived')
19
+ CLOSED = new('closed')
20
+ OPEN = new('open')
21
+ UNMAPPED_VALUE = new('unmapped_value')
22
+ end
23
+ end
24
+
25
+
26
+
27
+ class JobStatusEnum < StackOne::Utils::FieldAugmented
28
+ extend T::Sig
29
+
30
+ # The source value of the job status.
31
+ field :source_value, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('source_value') } }
32
+ # The status of the job.
33
+ field :value, Shared::JobStatusEnumValue, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::JobStatusEnumValue, false) } }
34
+
35
+
36
+ sig { params(source_value: String, value: Shared::JobStatusEnumValue).void }
37
+ def initialize(source_value: nil, value: nil)
38
+ @source_value = source_value
39
+ @value = value
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,75 @@
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 Credentials < StackOne::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+
17
+
18
+ def initialize; end
19
+ end
20
+
21
+
22
+ class SetupInformation < StackOne::Utils::FieldAugmented
23
+ extend T::Sig
24
+
25
+
26
+
27
+
28
+ def initialize; end
29
+ end
30
+
31
+
32
+ class LinkedAccount < StackOne::Utils::FieldAugmented
33
+ extend T::Sig
34
+
35
+
36
+ field :active, T::Boolean, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('active') } }
37
+
38
+ field :created_at, DateTime, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(false) } }
39
+
40
+ field :id, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('id') } }
41
+
42
+ field :origin_owner_id, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('origin_owner_id') } }
43
+
44
+ field :origin_owner_name, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('origin_owner_name') } }
45
+
46
+ field :provider, String, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('provider') } }
47
+
48
+ field :updated_at, DateTime, { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(false) } }
49
+
50
+ field :credentials, T.nilable(Shared::Credentials), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('credentials') } }
51
+
52
+ field :label, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('label') } }
53
+
54
+ field :origin_username, T.nilable(String), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('origin_username') } }
55
+
56
+ field :setup_information, T.nilable(Shared::SetupInformation), { 'format_json': { 'letter_case': OpenApiSDK::Utils.field_name('setup_information') } }
57
+
58
+
59
+ sig { params(active: T::Boolean, created_at: DateTime, id: String, origin_owner_id: String, origin_owner_name: String, provider: String, updated_at: DateTime, credentials: T.nilable(Shared::Credentials), label: T.nilable(String), origin_username: T.nilable(String), setup_information: T.nilable(Shared::SetupInformation)).void }
60
+ def initialize(active: nil, created_at: nil, id: nil, origin_owner_id: nil, origin_owner_name: nil, provider: nil, updated_at: nil, credentials: nil, label: nil, origin_username: nil, setup_information: nil)
61
+ @active = active
62
+ @created_at = created_at
63
+ @id = id
64
+ @origin_owner_id = origin_owner_id
65
+ @origin_owner_name = origin_owner_name
66
+ @provider = provider
67
+ @updated_at = updated_at
68
+ @credentials = credentials
69
+ @label = label
70
+ @origin_username = origin_username
71
+ @setup_information = setup_information
72
+ end
73
+ end
74
+ end
75
+ end