stackone_client 0.2.45 → 0.3.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.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/lms.rb +92 -0
  3. data/lib/stack_one/models/operations/ats_list_jobs_queryparam_filter.rb +6 -3
  4. data/lib/stack_one/models/operations/ats_list_jobs_request.rb +1 -1
  5. data/lib/stack_one/models/operations/lms_batch_upsert_course_request.rb +27 -0
  6. data/lib/stack_one/models/operations/lms_batch_upsert_course_response.rb +33 -0
  7. data/lib/stack_one/models/operations/lms_list_assignments_queryparam_filter.rb +5 -2
  8. data/lib/stack_one/models/operations/lms_list_assignments_request.rb +8 -2
  9. data/lib/stack_one/models/operations/lms_list_completions_queryparam_filter.rb +6 -3
  10. data/lib/stack_one/models/operations/lms_list_completions_request.rb +1 -1
  11. data/lib/stack_one/models/operations/lms_list_user_assignments_queryparam_filter.rb +5 -2
  12. data/lib/stack_one/models/operations/lms_list_user_assignments_request.rb +8 -2
  13. data/lib/stack_one/models/operations/lms_list_user_completions_queryparam_filter.rb +6 -3
  14. data/lib/stack_one/models/operations/lms_list_user_completions_request.rb +1 -1
  15. data/lib/stack_one/models/operations/lms_upsert_course_request.rb +27 -0
  16. data/lib/stack_one/models/operations/lms_upsert_course_response.rb +33 -0
  17. data/lib/stack_one/models/operations/stackone_list_linked_accounts_request.rb +5 -2
  18. data/lib/stack_one/models/operations/status.rb +18 -0
  19. data/lib/stack_one/models/operations.rb +5 -0
  20. data/lib/stack_one/models/shared/assignment.rb +2 -2
  21. data/lib/stack_one/models/shared/{learningobjecttypeenum_value.rb → assignment_value.rb} +2 -2
  22. data/lib/stack_one/models/shared/categories.rb +1 -0
  23. data/lib/stack_one/models/shared/completion.rb +14 -2
  24. data/lib/stack_one/models/shared/{active.rb → completion_learning_object_type.rb} +4 -4
  25. data/lib/stack_one/models/shared/completion_schemas_result.rb +2 -2
  26. data/lib/stack_one/models/shared/{createcategoriesapimodel_value.rb → completion_schemas_value.rb} +3 -3
  27. data/lib/stack_one/models/shared/completion_value.rb +3 -2
  28. data/lib/stack_one/models/shared/connectorsmeta_category.rb +1 -0
  29. data/lib/stack_one/models/shared/connectsessioncreate_categories.rb +1 -0
  30. data/lib/stack_one/models/shared/connectsessiontoken_categories.rb +1 -0
  31. data/lib/stack_one/models/shared/course.rb +3 -3
  32. data/lib/stack_one/models/shared/course_type.rb +2 -2
  33. data/lib/stack_one/models/shared/course_value.rb +3 -2
  34. data/lib/stack_one/models/shared/createcategoriesapimodel.rb +2 -8
  35. data/lib/stack_one/models/shared/createcontentapimodel.rb +33 -0
  36. data/lib/stack_one/models/shared/createskillsapimodel.rb +30 -0
  37. data/lib/stack_one/models/shared/employee_schemas_national_identity_number_type_value.rb +30 -0
  38. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_national_identity_number_type_value.rb +30 -0
  39. data/lib/stack_one/models/shared/{learningobjecttypeenum.rb → learning_object_type.rb} +4 -4
  40. data/lib/stack_one/models/shared/linkedaccountmeta_category.rb +1 -0
  41. data/lib/stack_one/models/shared/lmsbatchupsertcourserequestdto.rb +24 -0
  42. data/lib/stack_one/models/shared/lmscreatecontentrequestdto.rb +5 -2
  43. data/lib/stack_one/models/shared/lmsupsertcontentrequestdto.rb +5 -2
  44. data/lib/stack_one/models/shared/lmsupsertcourserequestdto.rb +69 -0
  45. data/lib/stack_one/models/shared/{createcategoriesapimodel_level.rb → lmsupsertcourserequestdto_course_type.rb} +4 -4
  46. data/lib/stack_one/models/shared/{course_schemas_value.rb → lmsupsertcourserequestdto_value.rb} +1 -1
  47. data/lib/stack_one/models/shared/marketingcreatecontentblocksrequestdto.rb +5 -2
  48. data/lib/stack_one/models/shared/marketingcreatecontentblocksrequestdto_type.rb +27 -0
  49. data/lib/stack_one/models/shared/marketingcreatecontentblocksrequestdto_value.rb +20 -0
  50. data/lib/stack_one/models/shared.rb +15 -9
  51. data/lib/stack_one/sdkconfiguration.rb +3 -3
  52. metadata +23 -12
@@ -7,17 +7,17 @@
7
7
  module StackOne
8
8
  module Shared
9
9
 
10
- # Whether the course is active and available for users.
11
- class Active < ::StackOne::Utils::FieldAugmented
10
+ # The learning object type of the assignment
11
+ class CompletionLearningObjectType < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
 
15
15
  field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
16
 
17
- field :value, T.nilable(::StackOne::Shared::CourseValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::CourseValue, true) } }
17
+ field :value, T.nilable(::StackOne::Shared::CompletionValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::CompletionValue, true) } }
18
18
 
19
19
 
20
- sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::CourseValue)).void }
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::CompletionValue)).void }
21
21
  def initialize(source_value: nil, value: nil)
22
22
  @source_value = source_value
23
23
  @value = value
@@ -14,10 +14,10 @@ module StackOne
14
14
 
15
15
  field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
16
 
17
- field :value, T.nilable(::StackOne::Shared::CompletionValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::CompletionValue, true) } }
17
+ field :value, T.nilable(::StackOne::Shared::CompletionSchemasValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::CompletionSchemasValue, true) } }
18
18
 
19
19
 
20
- sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::CompletionValue)).void }
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::CompletionSchemasValue)).void }
21
21
  def initialize(source_value: nil, value: nil)
22
22
  @source_value = source_value
23
23
  @value = value
@@ -8,10 +8,10 @@ module StackOne
8
8
  module Shared
9
9
 
10
10
 
11
- class CreateCategoriesApiModelValue < T::Enum
11
+ class CompletionSchemasValue < T::Enum
12
12
  enums do
13
- PRIMARY = new('primary')
14
- SECONDARY = new('secondary')
13
+ PASS = new('Pass')
14
+ FAIL = new('Fail')
15
15
  end
16
16
  end
17
17
  end
@@ -10,8 +10,9 @@ module StackOne
10
10
 
11
11
  class CompletionValue < T::Enum
12
12
  enums do
13
- PASS = new('Pass')
14
- FAIL = new('Fail')
13
+ CONTENT = new('content')
14
+ COURSE = new('course')
15
+ COLLECTION = new('collection')
15
16
  end
16
17
  end
17
18
  end
@@ -18,6 +18,7 @@ module StackOne
18
18
  MARKETING = new('marketing')
19
19
  LMS = new('lms')
20
20
  STACKONE = new('stackone')
21
+ FILE_STORAGE = new('file-storage')
21
22
  end
22
23
  end
23
24
  end
@@ -18,6 +18,7 @@ module StackOne
18
18
  MARKETING = new('marketing')
19
19
  LMS = new('lms')
20
20
  STACKONE = new('stackone')
21
+ FILE_STORAGE = new('file-storage')
21
22
  end
22
23
  end
23
24
  end
@@ -18,6 +18,7 @@ module StackOne
18
18
  MARKETING = new('marketing')
19
19
  LMS = new('lms')
20
20
  STACKONE = new('stackone')
21
+ FILE_STORAGE = new('file-storage')
21
22
  end
22
23
  end
23
24
  end
@@ -11,8 +11,8 @@ module StackOne
11
11
  class Course < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Whether the course is active and available for users.
15
- field :active, T.nilable(::StackOne::Shared::Active), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
14
+ # Whether the course is active and available for users. When using string type, only lowercase "true" or "false" values are accepted.
15
+ field :active, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
16
16
  # The categories associated with this course
17
17
  field :categories, T.nilable(T::Array[::StackOne::Shared::Category]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('categories') } }
18
18
  # The child ID/IDs associated with this course
@@ -49,7 +49,7 @@ module StackOne
49
49
  field :url, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('url') } }
50
50
 
51
51
 
52
- sig { params(active: T.nilable(::StackOne::Shared::Active), categories: T.nilable(T::Array[::StackOne::Shared::Category]), content_ids: T.nilable(T::Array[::String]), course_type: T.nilable(::StackOne::Shared::CourseType), cover_url: T.nilable(::String), created_at: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), id: T.nilable(::String), languages: T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), remote_content_ids: T.nilable(T::Array[::String]), remote_id: T.nilable(::String), skills: T.nilable(T::Array[::StackOne::Shared::Skills]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::String), url: T.nilable(::String)).void }
52
+ sig { params(active: T.nilable(::Object), categories: T.nilable(T::Array[::StackOne::Shared::Category]), content_ids: T.nilable(T::Array[::String]), course_type: T.nilable(::StackOne::Shared::CourseType), cover_url: T.nilable(::String), created_at: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), id: T.nilable(::String), languages: T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), remote_content_ids: T.nilable(T::Array[::String]), remote_id: T.nilable(::String), skills: T.nilable(T::Array[::StackOne::Shared::Skills]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::String), url: T.nilable(::String)).void }
53
53
  def initialize(active: nil, categories: nil, content_ids: nil, course_type: nil, cover_url: nil, created_at: nil, description: nil, duration: nil, external_reference: nil, id: nil, languages: nil, remote_content_ids: nil, remote_id: nil, skills: nil, title: nil, unified_custom_fields: nil, updated_at: nil, url: nil)
54
54
  @active = active
55
55
  @categories = categories
@@ -14,10 +14,10 @@ module StackOne
14
14
 
15
15
  field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
16
 
17
- field :value, T.nilable(::StackOne::Shared::CourseSchemasValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::CourseSchemasValue, true) } }
17
+ field :value, T.nilable(::StackOne::Shared::CourseValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::CourseValue, true) } }
18
18
 
19
19
 
20
- sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::CourseSchemasValue)).void }
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::CourseValue)).void }
21
21
  def initialize(source_value: nil, value: nil)
22
22
  @source_value = source_value
23
23
  @value = value
@@ -10,8 +10,9 @@ module StackOne
10
10
 
11
11
  class CourseValue < T::Enum
12
12
  enums do
13
- ACTIVE = new('ACTIVE')
14
- INACTIVE = new('INACTIVE')
13
+ VIDEO = new('video')
14
+ QUIZ = new('quiz')
15
+ DOCUMENT = new('document')
15
16
  end
16
17
  end
17
18
  end
@@ -11,20 +11,14 @@ module StackOne
11
11
  class CreateCategoriesApiModel < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Whether the category is active and therefore available for use
15
- field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
16
- # The hierarchal level of the category
17
- field :level, T.nilable(::StackOne::Shared::CreateCategoriesApiModelLevel), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('level') } }
18
14
  # The name associated with this category
19
15
  field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
20
16
  # Custom Unified Fields configured in your StackOne project
21
17
  field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
22
18
 
23
19
 
24
- sig { params(active: T.nilable(T::Boolean), level: T.nilable(::StackOne::Shared::CreateCategoriesApiModelLevel), name: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
25
- def initialize(active: nil, level: nil, name: nil, unified_custom_fields: nil)
26
- @active = active
27
- @level = level
20
+ sig { params(name: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
21
+ def initialize(name: nil, unified_custom_fields: nil)
28
22
  @name = name
29
23
  @unified_custom_fields = unified_custom_fields
30
24
  end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class CreateContentApiModel < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The external URL of the content
15
+ field :content_url, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('content_url') } }
16
+ # The description of the content
17
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
18
+ # The order of the individual content within a content grouping. This is not applicable for pushing individual content.
19
+ field :order, T.nilable(::Float), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('order') } }
20
+ # The title of the content
21
+ field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('title') } }
22
+
23
+
24
+ sig { params(content_url: T.nilable(::String), description: T.nilable(::String), order: T.nilable(::Float), title: T.nilable(::String)).void }
25
+ def initialize(content_url: nil, description: nil, order: nil, title: nil)
26
+ @content_url = content_url
27
+ @description = description
28
+ @order = order
29
+ @title = title
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,30 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class CreateSkillsApiModel < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The ID associated with this skill
15
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
16
+ # The name associated with this skill
17
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
18
+ # Provider's unique identifier
19
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
20
+
21
+
22
+ sig { params(id: T.nilable(::String), name: T.nilable(::String), remote_id: T.nilable(::String)).void }
23
+ def initialize(id: nil, name: nil, remote_id: nil)
24
+ @id = id
25
+ @name = name
26
+ @remote_id = remote_id
27
+ end
28
+ end
29
+ end
30
+ end
@@ -15,6 +15,7 @@ module StackOne
15
15
  SIN = new('sin')
16
16
  NID = new('nid')
17
17
  PIN = new('pin')
18
+ PN = new('pn')
18
19
  UMCN = new('umcn')
19
20
  PIC = new('pic')
20
21
  RIC = new('ric')
@@ -25,6 +26,7 @@ module StackOne
25
26
  AADHAAR = new('aadhaar')
26
27
  EPIC = new('epic')
27
28
  PTN = new('ptn')
29
+ ITIN = new('itin')
28
30
  TIN = new('tin')
29
31
  UPRC = new('uprc')
30
32
  PCODE = new('pcode')
@@ -120,6 +122,34 @@ module StackOne
120
122
  PEID = new('peid')
121
123
  ASMENS = new('asmens')
122
124
  PVM = new('pvm')
125
+ CTPS = new('ctps')
126
+ VRN = new('vrn')
127
+ VTK = new('vtk')
128
+ INT = new('int')
129
+ TK = new('tk')
130
+ PAS = new('pas')
131
+ RNE = new('rne')
132
+ RG = new('rg')
133
+ NCI = new('nci')
134
+ CRNM = new('crnm')
135
+ PIS = new('pis')
136
+ INSEE = new('insee')
137
+ TAX = new('tax')
138
+ MPF = new('mpf')
139
+ EPFO = new('epfo')
140
+ ESI = new('esi')
141
+ PRAN = new('pran')
142
+ UAN = new('uan')
143
+ IDK = new('idk')
144
+ BSN = new('bsn')
145
+ MID = new('mid')
146
+ SSS = new('sss')
147
+ NIE = new('nie')
148
+ NSS = new('nss')
149
+ ARC = new('arc')
150
+ CURP = new('curp')
151
+ IMSS = new('imss')
152
+ RFC = new('rfc')
123
153
  OTHER = new('other')
124
154
  UNKNOWN = new('unknown')
125
155
  end
@@ -15,6 +15,7 @@ module StackOne
15
15
  SIN = new('sin')
16
16
  NID = new('nid')
17
17
  PIN = new('pin')
18
+ PN = new('pn')
18
19
  UMCN = new('umcn')
19
20
  PIC = new('pic')
20
21
  RIC = new('ric')
@@ -25,6 +26,7 @@ module StackOne
25
26
  AADHAAR = new('aadhaar')
26
27
  EPIC = new('epic')
27
28
  PTN = new('ptn')
29
+ ITIN = new('itin')
28
30
  TIN = new('tin')
29
31
  UPRC = new('uprc')
30
32
  PCODE = new('pcode')
@@ -120,6 +122,34 @@ module StackOne
120
122
  PEID = new('peid')
121
123
  ASMENS = new('asmens')
122
124
  PVM = new('pvm')
125
+ CTPS = new('ctps')
126
+ VRN = new('vrn')
127
+ VTK = new('vtk')
128
+ INT = new('int')
129
+ TK = new('tk')
130
+ PAS = new('pas')
131
+ RNE = new('rne')
132
+ RG = new('rg')
133
+ NCI = new('nci')
134
+ CRNM = new('crnm')
135
+ PIS = new('pis')
136
+ INSEE = new('insee')
137
+ TAX = new('tax')
138
+ MPF = new('mpf')
139
+ EPFO = new('epfo')
140
+ ESI = new('esi')
141
+ PRAN = new('pran')
142
+ UAN = new('uan')
143
+ IDK = new('idk')
144
+ BSN = new('bsn')
145
+ MID = new('mid')
146
+ SSS = new('sss')
147
+ NIE = new('nie')
148
+ NSS = new('nss')
149
+ ARC = new('arc')
150
+ CURP = new('curp')
151
+ IMSS = new('imss')
152
+ RFC = new('rfc')
123
153
  OTHER = new('other')
124
154
  UNKNOWN = new('unknown')
125
155
  end
@@ -7,17 +7,17 @@
7
7
  module StackOne
8
8
  module Shared
9
9
 
10
-
11
- class LearningObjectTypeEnum < ::StackOne::Utils::FieldAugmented
10
+ # The learning object type of the assignment
11
+ class LearningObjectType < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
 
15
15
  field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
16
 
17
- field :value, T.nilable(::StackOne::Shared::LearningObjectTypeEnumValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::LearningObjectTypeEnumValue, true) } }
17
+ field :value, T.nilable(::StackOne::Shared::AssignmentValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::AssignmentValue, true) } }
18
18
 
19
19
 
20
- sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::LearningObjectTypeEnumValue)).void }
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::AssignmentValue)).void }
21
21
  def initialize(source_value: nil, value: nil)
22
22
  @source_value = source_value
23
23
  @value = value
@@ -18,6 +18,7 @@ module StackOne
18
18
  MARKETING = new('marketing')
19
19
  LMS = new('lms')
20
20
  STACKONE = new('stackone')
21
+ FILE_STORAGE = new('file-storage')
21
22
  end
22
23
  end
23
24
  end
@@ -0,0 +1,24 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class LmsBatchUpsertCourseRequestDto < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The batch of items to upsert
15
+ field :items, T::Array[::StackOne::Shared::LmsUpsertCourseRequestDto], { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('items') } }
16
+
17
+
18
+ sig { params(items: T::Array[::StackOne::Shared::LmsUpsertCourseRequestDto]).void }
19
+ def initialize(items: nil)
20
+ @items = items
21
+ end
22
+ end
23
+ end
24
+ end
@@ -35,14 +35,16 @@ module StackOne
35
35
  field :languages, T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('languages') } }
36
36
  # The order of the individual content within a content grouping. This is not applicable for pushing individual content.
37
37
  field :order, T.nilable(::Float), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('order') } }
38
+ # The skills associated with this course
39
+ field :skills, T.nilable(T::Array[::StackOne::Shared::Skills]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('skills') } }
38
40
  # The title of the content
39
41
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('title') } }
40
42
  # Custom Unified Fields configured in your StackOne project
41
43
  field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
42
44
 
43
45
 
44
- sig { params(active: T.nilable(::Object), categories: T.nilable(T::Array[::StackOne::Shared::CreateCategoriesApiModel]), content_launch_method: T.nilable(::StackOne::Shared::ContentLaunchMethod), content_type: T.nilable(::StackOne::Shared::LmsCreateContentRequestDtoContentType), content_url: T.nilable(::String), course_ids: T.nilable(T::Array[::String]), cover_url: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), languages: T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), order: T.nilable(::Float), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
45
- def initialize(active: nil, categories: nil, content_launch_method: nil, content_type: nil, content_url: nil, course_ids: nil, cover_url: nil, description: nil, duration: nil, external_reference: nil, languages: nil, order: nil, title: nil, unified_custom_fields: nil)
46
+ sig { params(active: T.nilable(::Object), categories: T.nilable(T::Array[::StackOne::Shared::CreateCategoriesApiModel]), content_launch_method: T.nilable(::StackOne::Shared::ContentLaunchMethod), content_type: T.nilable(::StackOne::Shared::LmsCreateContentRequestDtoContentType), content_url: T.nilable(::String), course_ids: T.nilable(T::Array[::String]), cover_url: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), languages: T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), order: T.nilable(::Float), skills: T.nilable(T::Array[::StackOne::Shared::Skills]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
47
+ def initialize(active: nil, categories: nil, content_launch_method: nil, content_type: nil, content_url: nil, course_ids: nil, cover_url: nil, description: nil, duration: nil, external_reference: nil, languages: nil, order: nil, skills: nil, title: nil, unified_custom_fields: nil)
46
48
  @active = active
47
49
  @categories = categories
48
50
  @content_launch_method = content_launch_method
@@ -55,6 +57,7 @@ module StackOne
55
57
  @external_reference = external_reference
56
58
  @languages = languages
57
59
  @order = order
60
+ @skills = skills
58
61
  @title = title
59
62
  @unified_custom_fields = unified_custom_fields
60
63
  end
@@ -35,14 +35,16 @@ module StackOne
35
35
  field :languages, T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('languages') } }
36
36
  # The order of the individual content within a content grouping. This is not applicable for pushing individual content.
37
37
  field :order, T.nilable(::Float), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('order') } }
38
+ # The skills associated with this content
39
+ field :skills, T.nilable(T::Array[::StackOne::Shared::CreateSkillsApiModel]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('skills') } }
38
40
  # The title of the content
39
41
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('title') } }
40
42
  # Custom Unified Fields configured in your StackOne project
41
43
  field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
42
44
 
43
45
 
44
- sig { params(active: T.nilable(::Object), categories: T.nilable(T::Array[::StackOne::Shared::CreateCategoriesApiModel]), content_launch_method: T.nilable(::StackOne::Shared::LmsUpsertContentRequestDtoContentLaunchMethod), content_type: T.nilable(::StackOne::Shared::LmsUpsertContentRequestDtoContentType), content_url: T.nilable(::String), course_ids: T.nilable(T::Array[::String]), cover_url: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), languages: T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), order: T.nilable(::Float), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
45
- def initialize(active: nil, categories: nil, content_launch_method: nil, content_type: nil, content_url: nil, course_ids: nil, cover_url: nil, description: nil, duration: nil, external_reference: nil, languages: nil, order: nil, title: nil, unified_custom_fields: nil)
46
+ sig { params(active: T.nilable(::Object), categories: T.nilable(T::Array[::StackOne::Shared::CreateCategoriesApiModel]), content_launch_method: T.nilable(::StackOne::Shared::LmsUpsertContentRequestDtoContentLaunchMethod), content_type: T.nilable(::StackOne::Shared::LmsUpsertContentRequestDtoContentType), content_url: T.nilable(::String), course_ids: T.nilable(T::Array[::String]), cover_url: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), languages: T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), order: T.nilable(::Float), skills: T.nilable(T::Array[::StackOne::Shared::CreateSkillsApiModel]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
47
+ def initialize(active: nil, categories: nil, content_launch_method: nil, content_type: nil, content_url: nil, course_ids: nil, cover_url: nil, description: nil, duration: nil, external_reference: nil, languages: nil, order: nil, skills: nil, title: nil, unified_custom_fields: nil)
46
48
  @active = active
47
49
  @categories = categories
48
50
  @content_launch_method = content_launch_method
@@ -55,6 +57,7 @@ module StackOne
55
57
  @external_reference = external_reference
56
58
  @languages = languages
57
59
  @order = order
60
+ @skills = skills
58
61
  @title = title
59
62
  @unified_custom_fields = unified_custom_fields
60
63
  end
@@ -0,0 +1,69 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class LmsUpsertCourseRequestDto < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # Whether the course is active and available for users. When using string type, only lowercase "true" or "false" values are accepted.
15
+ field :active, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
16
+ # The categories associated with this course
17
+ field :categories, T.nilable(T::Array[::StackOne::Shared::CreateCategoriesApiModel]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('categories') } }
18
+ # The content associated with this course
19
+ field :content, T.nilable(T::Array[::StackOne::Shared::CreateContentApiModel]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('content') } }
20
+ # The child IDs associated with this course
21
+ field :content_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('content_ids') } }
22
+ # The media type for the course
23
+ field :course_type, T.nilable(::StackOne::Shared::LmsUpsertCourseRequestDtoCourseType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('course_type') } }
24
+ # The URL of the thumbnail image associated with the course.
25
+ field :cover_url, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('cover_url') } }
26
+ # The date on which the course was created.
27
+ field :created_at, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('created_at') } }
28
+ # The description of the course
29
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
30
+ # The duration of the course following the ISO8601 standard. If duration_unit is applicable we will derive this from the smallest unit given in the duration string
31
+ field :duration, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('duration') } }
32
+ # The external ID associated with this course
33
+ field :external_reference, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('external_reference') } }
34
+ # The languages associated with this course
35
+ field :languages, T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('languages') } }
36
+ # The skills associated with this course
37
+ field :skills, T.nilable(T::Array[::StackOne::Shared::CreateSkillsApiModel]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('skills') } }
38
+ # The title of the course
39
+ field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('title') } }
40
+ # Custom Unified Fields configured in your StackOne project
41
+ field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
42
+ # The date on which the course was last updated.
43
+ field :updated_at, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at') } }
44
+ # The redirect URL of the course.
45
+ field :url, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('url') } }
46
+
47
+
48
+ sig { params(active: T.nilable(::Object), categories: T.nilable(T::Array[::StackOne::Shared::CreateCategoriesApiModel]), content: T.nilable(T::Array[::StackOne::Shared::CreateContentApiModel]), content_ids: T.nilable(T::Array[::String]), course_type: T.nilable(::StackOne::Shared::LmsUpsertCourseRequestDtoCourseType), cover_url: T.nilable(::String), created_at: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), languages: T.nilable(T::Array[::StackOne::Shared::ContentLanguageEnum]), skills: T.nilable(T::Array[::StackOne::Shared::CreateSkillsApiModel]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::String), url: T.nilable(::String)).void }
49
+ def initialize(active: nil, categories: nil, content: nil, content_ids: nil, course_type: nil, cover_url: nil, created_at: nil, description: nil, duration: nil, external_reference: nil, languages: nil, skills: nil, title: nil, unified_custom_fields: nil, updated_at: nil, url: nil)
50
+ @active = active
51
+ @categories = categories
52
+ @content = content
53
+ @content_ids = content_ids
54
+ @course_type = course_type
55
+ @cover_url = cover_url
56
+ @created_at = created_at
57
+ @description = description
58
+ @duration = duration
59
+ @external_reference = external_reference
60
+ @languages = languages
61
+ @skills = skills
62
+ @title = title
63
+ @unified_custom_fields = unified_custom_fields
64
+ @updated_at = updated_at
65
+ @url = url
66
+ end
67
+ end
68
+ end
69
+ end
@@ -7,17 +7,17 @@
7
7
  module StackOne
8
8
  module Shared
9
9
 
10
- # The hierarchal level of the category
11
- class CreateCategoriesApiModelLevel < ::StackOne::Utils::FieldAugmented
10
+ # The media type for the course
11
+ class LmsUpsertCourseRequestDtoCourseType < ::StackOne::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
 
15
15
  field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
16
 
17
- field :value, T.nilable(::StackOne::Shared::CreateCategoriesApiModelValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::CreateCategoriesApiModelValue, true) } }
17
+ field :value, T.nilable(::StackOne::Shared::LmsUpsertCourseRequestDtoValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::LmsUpsertCourseRequestDtoValue, true) } }
18
18
 
19
19
 
20
- sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::CreateCategoriesApiModelValue)).void }
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::LmsUpsertCourseRequestDtoValue)).void }
21
21
  def initialize(source_value: nil, value: nil)
22
22
  @source_value = source_value
23
23
  @value = value
@@ -8,7 +8,7 @@ module StackOne
8
8
  module Shared
9
9
 
10
10
 
11
- class CourseSchemasValue < T::Enum
11
+ class LmsUpsertCourseRequestDtoValue < T::Enum
12
12
  enums do
13
13
  VIDEO = new('video')
14
14
  QUIZ = new('quiz')
@@ -19,14 +19,17 @@ module StackOne
19
19
  field :passthrough, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('passthrough') } }
20
20
 
21
21
  field :tags, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('tags') } }
22
+ # Stackone enum identifying the type of content block.
23
+ field :type, T.nilable(::StackOne::Shared::MarketingCreateContentBlocksRequestDtoType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
22
24
 
23
25
 
24
- sig { params(content: T.nilable(::String), name: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), tags: T.nilable(T::Array[::String])).void }
25
- def initialize(content: nil, name: nil, passthrough: nil, tags: nil)
26
+ sig { params(content: T.nilable(::String), name: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), tags: T.nilable(T::Array[::String]), type: T.nilable(::StackOne::Shared::MarketingCreateContentBlocksRequestDtoType)).void }
27
+ def initialize(content: nil, name: nil, passthrough: nil, tags: nil, type: nil)
26
28
  @content = content
27
29
  @name = name
28
30
  @passthrough = passthrough
29
31
  @tags = tags
32
+ @type = type
30
33
  end
31
34
  end
32
35
  end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+ # Stackone enum identifying the type of content block.
11
+ class MarketingCreateContentBlocksRequestDtoType < ::StackOne::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The source value of the type.
15
+ field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
+ # The type of the content blocks.
17
+ field :value, T.nilable(::StackOne::Shared::MarketingCreateContentBlocksRequestDtoValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::MarketingCreateContentBlocksRequestDtoValue, true) } }
18
+
19
+
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::MarketingCreateContentBlocksRequestDtoValue)).void }
21
+ def initialize(source_value: nil, value: nil)
22
+ @source_value = source_value
23
+ @value = value
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+ # MarketingCreateContentBlocksRequestDtoValue - The type of the content blocks.
11
+ class MarketingCreateContentBlocksRequestDtoValue < T::Enum
12
+ enums do
13
+ TEXT = new('text')
14
+ HTML = new('html')
15
+ IMAGE = new('image')
16
+ CODE_SNIPPET = new('code-snippet')
17
+ end
18
+ end
19
+ end
20
+ end