diff --git a/pkg/api/oas_json_gen.go b/pkg/api/oas_json_gen.go
index 756801d..1fec134 100644
--- a/pkg/api/oas_json_gen.go
+++ b/pkg/api/oas_json_gen.go
@@ -562,17 +562,22 @@ func (s *Script) encodeFields(e *jx.Encoder) {
 		e.Str(s.Source)
 	}
 	{
-		e.FieldStart("SubmissionID")
-		e.Int64(s.SubmissionID)
+		e.FieldStart("ResourceType")
+		e.Int32(s.ResourceType)
+	}
+	{
+		e.FieldStart("ResourceID")
+		e.Int64(s.ResourceID)
 	}
 }
 
-var jsonFieldsNameOfScript = [5]string{
+var jsonFieldsNameOfScript = [6]string{
 	0: "ID",
 	1: "Name",
 	2: "Hash",
 	3: "Source",
-	4: "SubmissionID",
+	4: "ResourceType",
+	5: "ResourceID",
 }
 
 // Decode decodes Script from json.
@@ -632,17 +637,29 @@ func (s *Script) Decode(d *jx.Decoder) error {
 			}(); err != nil {
 				return errors.Wrap(err, "decode field \"Source\"")
 			}
-		case "SubmissionID":
+		case "ResourceType":
 			requiredBitSet[0] |= 1 << 4
 			if err := func() error {
-				v, err := d.Int64()
-				s.SubmissionID = int64(v)
+				v, err := d.Int32()
+				s.ResourceType = int32(v)
 				if err != nil {
 					return err
 				}
 				return nil
 			}(); err != nil {
-				return errors.Wrap(err, "decode field \"SubmissionID\"")
+				return errors.Wrap(err, "decode field \"ResourceType\"")
+			}
+		case "ResourceID":
+			requiredBitSet[0] |= 1 << 5
+			if err := func() error {
+				v, err := d.Int64()
+				s.ResourceID = int64(v)
+				if err != nil {
+					return err
+				}
+				return nil
+			}(); err != nil {
+				return errors.Wrap(err, "decode field \"ResourceID\"")
 			}
 		default:
 			return d.Skip()
@@ -654,7 +671,7 @@ func (s *Script) Decode(d *jx.Decoder) error {
 	// Validate required fields.
 	var failures []validate.FieldError
 	for i, mask := range [1]uint8{
-		0b00011111,
+		0b00111111,
 	} {
 		if result := (requiredBitSet[i] & mask) ^ mask; result != 0 {
 			// Mask only required fields and check equality to mask using XOR.
@@ -718,17 +735,22 @@ func (s *ScriptCreate) encodeFields(e *jx.Encoder) {
 		e.Str(s.Source)
 	}
 	{
-		if s.SubmissionID.Set {
-			e.FieldStart("SubmissionID")
-			s.SubmissionID.Encode(e)
+		e.FieldStart("ResourceType")
+		e.Int32(s.ResourceType)
+	}
+	{
+		if s.ResourceID.Set {
+			e.FieldStart("ResourceID")
+			s.ResourceID.Encode(e)
 		}
 	}
 }
 
-var jsonFieldsNameOfScriptCreate = [3]string{
+var jsonFieldsNameOfScriptCreate = [4]string{
 	0: "Name",
 	1: "Source",
-	2: "SubmissionID",
+	2: "ResourceType",
+	3: "ResourceID",
 }
 
 // Decode decodes ScriptCreate from json.
@@ -764,15 +786,27 @@ func (s *ScriptCreate) Decode(d *jx.Decoder) error {
 			}(); err != nil {
 				return errors.Wrap(err, "decode field \"Source\"")
 			}
-		case "SubmissionID":
+		case "ResourceType":
+			requiredBitSet[0] |= 1 << 2
 			if err := func() error {
-				s.SubmissionID.Reset()
-				if err := s.SubmissionID.Decode(d); err != nil {
+				v, err := d.Int32()
+				s.ResourceType = int32(v)
+				if err != nil {
 					return err
 				}
 				return nil
 			}(); err != nil {
-				return errors.Wrap(err, "decode field \"SubmissionID\"")
+				return errors.Wrap(err, "decode field \"ResourceType\"")
+			}
+		case "ResourceID":
+			if err := func() error {
+				s.ResourceID.Reset()
+				if err := s.ResourceID.Decode(d); err != nil {
+					return err
+				}
+				return nil
+			}(); err != nil {
+				return errors.Wrap(err, "decode field \"ResourceID\"")
 			}
 		default:
 			return d.Skip()
@@ -784,7 +818,7 @@ func (s *ScriptCreate) Decode(d *jx.Decoder) error {
 	// Validate required fields.
 	var failures []validate.FieldError
 	for i, mask := range [1]uint8{
-		0b00000011,
+		0b00000111,
 	} {
 		if result := (requiredBitSet[i] & mask) ^ mask; result != 0 {
 			// Mask only required fields and check equality to mask using XOR.
@@ -1280,18 +1314,25 @@ func (s *ScriptUpdate) encodeFields(e *jx.Encoder) {
 		}
 	}
 	{
-		if s.SubmissionID.Set {
-			e.FieldStart("SubmissionID")
-			s.SubmissionID.Encode(e)
+		if s.ResourceType.Set {
+			e.FieldStart("ResourceType")
+			s.ResourceType.Encode(e)
+		}
+	}
+	{
+		if s.ResourceID.Set {
+			e.FieldStart("ResourceID")
+			s.ResourceID.Encode(e)
 		}
 	}
 }
 
-var jsonFieldsNameOfScriptUpdate = [4]string{
+var jsonFieldsNameOfScriptUpdate = [5]string{
 	0: "ID",
 	1: "Name",
 	2: "Source",
-	3: "SubmissionID",
+	3: "ResourceType",
+	4: "ResourceID",
 }
 
 // Decode decodes ScriptUpdate from json.
@@ -1335,15 +1376,25 @@ func (s *ScriptUpdate) Decode(d *jx.Decoder) error {
 			}(); err != nil {
 				return errors.Wrap(err, "decode field \"Source\"")
 			}
-		case "SubmissionID":
+		case "ResourceType":
 			if err := func() error {
-				s.SubmissionID.Reset()
-				if err := s.SubmissionID.Decode(d); err != nil {
+				s.ResourceType.Reset()
+				if err := s.ResourceType.Decode(d); err != nil {
 					return err
 				}
 				return nil
 			}(); err != nil {
-				return errors.Wrap(err, "decode field \"SubmissionID\"")
+				return errors.Wrap(err, "decode field \"ResourceType\"")
+			}
+		case "ResourceID":
+			if err := func() error {
+				s.ResourceID.Reset()
+				if err := s.ResourceID.Decode(d); err != nil {
+					return err
+				}
+				return nil
+			}(); err != nil {
+				return errors.Wrap(err, "decode field \"ResourceID\"")
 			}
 		default:
 			return d.Skip()
diff --git a/pkg/api/oas_schemas_gen.go b/pkg/api/oas_schemas_gen.go
index b779939..ce8774f 100644
--- a/pkg/api/oas_schemas_gen.go
+++ b/pkg/api/oas_schemas_gen.go
@@ -314,7 +314,8 @@ type Script struct {
 	Name         string `json:"Name"`
 	Hash         string `json:"Hash"`
 	Source       string `json:"Source"`
-	SubmissionID int64  `json:"SubmissionID"`
+	ResourceType int32  `json:"ResourceType"`
+	ResourceID   int64  `json:"ResourceID"`
 }
 
 // GetID returns the value of ID.
@@ -337,9 +338,14 @@ func (s *Script) GetSource() string {
 	return s.Source
 }
 
-// GetSubmissionID returns the value of SubmissionID.
-func (s *Script) GetSubmissionID() int64 {
-	return s.SubmissionID
+// GetResourceType returns the value of ResourceType.
+func (s *Script) GetResourceType() int32 {
+	return s.ResourceType
+}
+
+// GetResourceID returns the value of ResourceID.
+func (s *Script) GetResourceID() int64 {
+	return s.ResourceID
 }
 
 // SetID sets the value of ID.
@@ -362,16 +368,22 @@ func (s *Script) SetSource(val string) {
 	s.Source = val
 }
 
-// SetSubmissionID sets the value of SubmissionID.
-func (s *Script) SetSubmissionID(val int64) {
-	s.SubmissionID = val
+// SetResourceType sets the value of ResourceType.
+func (s *Script) SetResourceType(val int32) {
+	s.ResourceType = val
+}
+
+// SetResourceID sets the value of ResourceID.
+func (s *Script) SetResourceID(val int64) {
+	s.ResourceID = val
 }
 
 // Ref: #/components/schemas/ScriptCreate
 type ScriptCreate struct {
 	Name         string   `json:"Name"`
 	Source       string   `json:"Source"`
-	SubmissionID OptInt64 `json:"SubmissionID"`
+	ResourceType int32    `json:"ResourceType"`
+	ResourceID   OptInt64 `json:"ResourceID"`
 }
 
 // GetName returns the value of Name.
@@ -384,9 +396,14 @@ func (s *ScriptCreate) GetSource() string {
 	return s.Source
 }
 
-// GetSubmissionID returns the value of SubmissionID.
-func (s *ScriptCreate) GetSubmissionID() OptInt64 {
-	return s.SubmissionID
+// GetResourceType returns the value of ResourceType.
+func (s *ScriptCreate) GetResourceType() int32 {
+	return s.ResourceType
+}
+
+// GetResourceID returns the value of ResourceID.
+func (s *ScriptCreate) GetResourceID() OptInt64 {
+	return s.ResourceID
 }
 
 // SetName sets the value of Name.
@@ -399,9 +416,14 @@ func (s *ScriptCreate) SetSource(val string) {
 	s.Source = val
 }
 
-// SetSubmissionID sets the value of SubmissionID.
-func (s *ScriptCreate) SetSubmissionID(val OptInt64) {
-	s.SubmissionID = val
+// SetResourceType sets the value of ResourceType.
+func (s *ScriptCreate) SetResourceType(val int32) {
+	s.ResourceType = val
+}
+
+// SetResourceID sets the value of ResourceID.
+func (s *ScriptCreate) SetResourceID(val OptInt64) {
+	s.ResourceID = val
 }
 
 // Ref: #/components/schemas/ScriptPolicy
@@ -542,7 +564,8 @@ type ScriptUpdate struct {
 	ID           int64     `json:"ID"`
 	Name         OptString `json:"Name"`
 	Source       OptString `json:"Source"`
-	SubmissionID OptInt64  `json:"SubmissionID"`
+	ResourceType OptInt32  `json:"ResourceType"`
+	ResourceID   OptInt64  `json:"ResourceID"`
 }
 
 // GetID returns the value of ID.
@@ -560,9 +583,14 @@ func (s *ScriptUpdate) GetSource() OptString {
 	return s.Source
 }
 
-// GetSubmissionID returns the value of SubmissionID.
-func (s *ScriptUpdate) GetSubmissionID() OptInt64 {
-	return s.SubmissionID
+// GetResourceType returns the value of ResourceType.
+func (s *ScriptUpdate) GetResourceType() OptInt32 {
+	return s.ResourceType
+}
+
+// GetResourceID returns the value of ResourceID.
+func (s *ScriptUpdate) GetResourceID() OptInt64 {
+	return s.ResourceID
 }
 
 // SetID sets the value of ID.
@@ -580,9 +608,14 @@ func (s *ScriptUpdate) SetSource(val OptString) {
 	s.Source = val
 }
 
-// SetSubmissionID sets the value of SubmissionID.
-func (s *ScriptUpdate) SetSubmissionID(val OptInt64) {
-	s.SubmissionID = val
+// SetResourceType sets the value of ResourceType.
+func (s *ScriptUpdate) SetResourceType(val OptInt32) {
+	s.ResourceType = val
+}
+
+// SetResourceID sets the value of ResourceID.
+func (s *ScriptUpdate) SetResourceID(val OptInt64) {
+	s.ResourceID = val
 }
 
 // SetSubmissionCompletedNoContent is response for SetSubmissionCompleted operation.
diff --git a/pkg/internal/oas_json_gen.go b/pkg/internal/oas_json_gen.go
index 47793c8..7b03e7b 100644
--- a/pkg/internal/oas_json_gen.go
+++ b/pkg/internal/oas_json_gen.go
@@ -282,17 +282,22 @@ func (s *Script) encodeFields(e *jx.Encoder) {
 		e.Str(s.Source)
 	}
 	{
-		e.FieldStart("SubmissionID")
-		e.Int64(s.SubmissionID)
+		e.FieldStart("ResourceType")
+		e.Int32(s.ResourceType)
+	}
+	{
+		e.FieldStart("ResourceID")
+		e.Int64(s.ResourceID)
 	}
 }
 
-var jsonFieldsNameOfScript = [5]string{
+var jsonFieldsNameOfScript = [6]string{
 	0: "ID",
 	1: "Name",
 	2: "Hash",
 	3: "Source",
-	4: "SubmissionID",
+	4: "ResourceType",
+	5: "ResourceID",
 }
 
 // Decode decodes Script from json.
@@ -352,17 +357,29 @@ func (s *Script) Decode(d *jx.Decoder) error {
 			}(); err != nil {
 				return errors.Wrap(err, "decode field \"Source\"")
 			}
-		case "SubmissionID":
+		case "ResourceType":
 			requiredBitSet[0] |= 1 << 4
 			if err := func() error {
-				v, err := d.Int64()
-				s.SubmissionID = int64(v)
+				v, err := d.Int32()
+				s.ResourceType = int32(v)
 				if err != nil {
 					return err
 				}
 				return nil
 			}(); err != nil {
-				return errors.Wrap(err, "decode field \"SubmissionID\"")
+				return errors.Wrap(err, "decode field \"ResourceType\"")
+			}
+		case "ResourceID":
+			requiredBitSet[0] |= 1 << 5
+			if err := func() error {
+				v, err := d.Int64()
+				s.ResourceID = int64(v)
+				if err != nil {
+					return err
+				}
+				return nil
+			}(); err != nil {
+				return errors.Wrap(err, "decode field \"ResourceID\"")
 			}
 		default:
 			return d.Skip()
@@ -374,7 +391,7 @@ func (s *Script) Decode(d *jx.Decoder) error {
 	// Validate required fields.
 	var failures []validate.FieldError
 	for i, mask := range [1]uint8{
-		0b00011111,
+		0b00111111,
 	} {
 		if result := (requiredBitSet[i] & mask) ^ mask; result != 0 {
 			// Mask only required fields and check equality to mask using XOR.
@@ -438,17 +455,22 @@ func (s *ScriptCreate) encodeFields(e *jx.Encoder) {
 		e.Str(s.Source)
 	}
 	{
-		if s.SubmissionID.Set {
-			e.FieldStart("SubmissionID")
-			s.SubmissionID.Encode(e)
+		e.FieldStart("ResourceType")
+		e.Int32(s.ResourceType)
+	}
+	{
+		if s.ResourceID.Set {
+			e.FieldStart("ResourceID")
+			s.ResourceID.Encode(e)
 		}
 	}
 }
 
-var jsonFieldsNameOfScriptCreate = [3]string{
+var jsonFieldsNameOfScriptCreate = [4]string{
 	0: "Name",
 	1: "Source",
-	2: "SubmissionID",
+	2: "ResourceType",
+	3: "ResourceID",
 }
 
 // Decode decodes ScriptCreate from json.
@@ -484,15 +506,27 @@ func (s *ScriptCreate) Decode(d *jx.Decoder) error {
 			}(); err != nil {
 				return errors.Wrap(err, "decode field \"Source\"")
 			}
-		case "SubmissionID":
+		case "ResourceType":
+			requiredBitSet[0] |= 1 << 2
 			if err := func() error {
-				s.SubmissionID.Reset()
-				if err := s.SubmissionID.Decode(d); err != nil {
+				v, err := d.Int32()
+				s.ResourceType = int32(v)
+				if err != nil {
 					return err
 				}
 				return nil
 			}(); err != nil {
-				return errors.Wrap(err, "decode field \"SubmissionID\"")
+				return errors.Wrap(err, "decode field \"ResourceType\"")
+			}
+		case "ResourceID":
+			if err := func() error {
+				s.ResourceID.Reset()
+				if err := s.ResourceID.Decode(d); err != nil {
+					return err
+				}
+				return nil
+			}(); err != nil {
+				return errors.Wrap(err, "decode field \"ResourceID\"")
 			}
 		default:
 			return d.Skip()
@@ -504,7 +538,7 @@ func (s *ScriptCreate) Decode(d *jx.Decoder) error {
 	// Validate required fields.
 	var failures []validate.FieldError
 	for i, mask := range [1]uint8{
-		0b00000011,
+		0b00000111,
 	} {
 		if result := (requiredBitSet[i] & mask) ^ mask; result != 0 {
 			// Mask only required fields and check equality to mask using XOR.
diff --git a/pkg/internal/oas_schemas_gen.go b/pkg/internal/oas_schemas_gen.go
index c2bcdad..4805a04 100644
--- a/pkg/internal/oas_schemas_gen.go
+++ b/pkg/internal/oas_schemas_gen.go
@@ -231,7 +231,8 @@ type Script struct {
 	Name         string `json:"Name"`
 	Hash         string `json:"Hash"`
 	Source       string `json:"Source"`
-	SubmissionID int64  `json:"SubmissionID"`
+	ResourceType int32  `json:"ResourceType"`
+	ResourceID   int64  `json:"ResourceID"`
 }
 
 // GetID returns the value of ID.
@@ -254,9 +255,14 @@ func (s *Script) GetSource() string {
 	return s.Source
 }
 
-// GetSubmissionID returns the value of SubmissionID.
-func (s *Script) GetSubmissionID() int64 {
-	return s.SubmissionID
+// GetResourceType returns the value of ResourceType.
+func (s *Script) GetResourceType() int32 {
+	return s.ResourceType
+}
+
+// GetResourceID returns the value of ResourceID.
+func (s *Script) GetResourceID() int64 {
+	return s.ResourceID
 }
 
 // SetID sets the value of ID.
@@ -279,16 +285,22 @@ func (s *Script) SetSource(val string) {
 	s.Source = val
 }
 
-// SetSubmissionID sets the value of SubmissionID.
-func (s *Script) SetSubmissionID(val int64) {
-	s.SubmissionID = val
+// SetResourceType sets the value of ResourceType.
+func (s *Script) SetResourceType(val int32) {
+	s.ResourceType = val
+}
+
+// SetResourceID sets the value of ResourceID.
+func (s *Script) SetResourceID(val int64) {
+	s.ResourceID = val
 }
 
 // Ref: #/components/schemas/ScriptCreate
 type ScriptCreate struct {
 	Name         string   `json:"Name"`
 	Source       string   `json:"Source"`
-	SubmissionID OptInt64 `json:"SubmissionID"`
+	ResourceType int32    `json:"ResourceType"`
+	ResourceID   OptInt64 `json:"ResourceID"`
 }
 
 // GetName returns the value of Name.
@@ -301,9 +313,14 @@ func (s *ScriptCreate) GetSource() string {
 	return s.Source
 }
 
-// GetSubmissionID returns the value of SubmissionID.
-func (s *ScriptCreate) GetSubmissionID() OptInt64 {
-	return s.SubmissionID
+// GetResourceType returns the value of ResourceType.
+func (s *ScriptCreate) GetResourceType() int32 {
+	return s.ResourceType
+}
+
+// GetResourceID returns the value of ResourceID.
+func (s *ScriptCreate) GetResourceID() OptInt64 {
+	return s.ResourceID
 }
 
 // SetName sets the value of Name.
@@ -316,9 +333,14 @@ func (s *ScriptCreate) SetSource(val string) {
 	s.Source = val
 }
 
-// SetSubmissionID sets the value of SubmissionID.
-func (s *ScriptCreate) SetSubmissionID(val OptInt64) {
-	s.SubmissionID = val
+// SetResourceType sets the value of ResourceType.
+func (s *ScriptCreate) SetResourceType(val int32) {
+	s.ResourceType = val
+}
+
+// SetResourceID sets the value of ResourceID.
+func (s *ScriptCreate) SetResourceID(val OptInt64) {
+	s.ResourceID = val
 }
 
 // Ref: #/components/schemas/ScriptPolicy