+ * + * + */ +@Generated("jsonschema2pojo") +public class APIKeyScopeRead { + + /** + * Organization Id + *
+ * Unique id of the organization that the api_key belongs to. + * (Required) + * + */ + @SerializedName("organization_id") + @Expose + public String organizationId; + /** + * Project Id + *
+ * Unique id of the project that the api_key belongs to. + * + */ + @SerializedName("project_id") + @Expose + public String projectId; + /** + * Environment Id + *
+ * Unique id of the environment that the api_key belongs to. + * + */ + @SerializedName("environment_id") + @Expose + public String environmentId; + + /** + * No args constructor for use in serialization + * + */ + public APIKeyScopeRead() { + } + + /** + * + * @param organizationId + */ + public APIKeyScopeRead(String organizationId) { + super(); + this.organizationId = organizationId; + } + + public APIKeyScopeRead withOrganizationId(String organizationId) { + this.organizationId = organizationId; + return this; + } + + public APIKeyScopeRead withProjectId(String projectId) { + this.projectId = projectId; + return this; + } + + public APIKeyScopeRead withEnvironmentId(String environmentId) { + this.environmentId = environmentId; + return this; + } + +} diff --git a/src/main/java/io/permit/sdk/openapi/models/ActionBlockEditable.java b/src/main/java/io/permit/sdk/openapi/models/ActionBlockEditable.java new file mode 100644 index 0000000..a1dc6bb --- /dev/null +++ b/src/main/java/io/permit/sdk/openapi/models/ActionBlockEditable.java @@ -0,0 +1,47 @@ + +package io.permit.sdk.openapi.models; + +import javax.annotation.processing.Generated; +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + + +/** + * ActionBlockEditable + *
+ * + * + */ +@Generated("jsonschema2pojo") +public class ActionBlockEditable { + + /** + * Name + *
+ * a more descriptive name for the action + * + */ + @SerializedName("name") + @Expose + public String name; + /** + * Description + *
+ * optional description string explaining what this action represents in your system + * + */ + @SerializedName("description") + @Expose + public String description; + + public ActionBlockEditable withName(String name) { + this.name = name; + return this; + } + + public ActionBlockEditable withDescription(String description) { + this.description = description; + return this; + } + +} diff --git a/src/main/java/io/permit/sdk/openapi/models/ActionBlockRead.java b/src/main/java/io/permit/sdk/openapi/models/ActionBlockRead.java new file mode 100644 index 0000000..7431e74 --- /dev/null +++ b/src/main/java/io/permit/sdk/openapi/models/ActionBlockRead.java @@ -0,0 +1,92 @@ + +package io.permit.sdk.openapi.models; + +import javax.annotation.processing.Generated; +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + + +/** + * ActionBlockRead + *
+ * + * + */ +@Generated("jsonschema2pojo") +public class ActionBlockRead { + + /** + * Name + *
+ * a more descriptive name for the action + * + */ + @SerializedName("name") + @Expose + public String name; + /** + * Description + *
+ * optional description string explaining what this action represents in your system + * + */ + @SerializedName("description") + @Expose + public String description; + /** + * Id + *
+ * Unique id of the action + * (Required) + * + */ + @SerializedName("id") + @Expose + public String id; + /** + * Key + *
+ * action key + * + */ + @SerializedName("key") + @Expose + public String key; + + /** + * No args constructor for use in serialization + * + */ + public ActionBlockRead() { + } + + /** + * + * @param id + */ + public ActionBlockRead(String id) { + super(); + this.id = id; + } + + public ActionBlockRead withName(String name) { + this.name = name; + return this; + } + + public ActionBlockRead withDescription(String description) { + this.description = description; + return this; + } + + public ActionBlockRead withId(String id) { + this.id = id; + return this; + } + + public ActionBlockRead withKey(String key) { + this.key = key; + return this; + } + +} diff --git a/src/main/java/io/permit/sdk/openapi/models/AddRolePermissions.java b/src/main/java/io/permit/sdk/openapi/models/AddRolePermissions.java new file mode 100644 index 0000000..8c93cf0 --- /dev/null +++ b/src/main/java/io/permit/sdk/openapi/models/AddRolePermissions.java @@ -0,0 +1,51 @@ + +package io.permit.sdk.openapi.models; + +import java.util.List; +import javax.annotation.processing.Generated; +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + + +/** + * AddRolePermissions + *
+ * + * + */ +@Generated("jsonschema2pojo") +public class AddRolePermissions { + + /** + * Permissions + *
+ * List of permissions to assign to the role. If a permission is already granted to the role it is skipped. Each permission can be either a resource action id, or `{resource_key}:{action_key}`, i.e: the "permission name".
+ * (Required)
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class AttributeBlockEditable {
+
+ /**
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("type")
+ @Expose
+ public AttributeType type;
+ /**
+ * Description
+ *
+ * optional description string explaining what data this attribute will store
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public AttributeBlockEditable() {
+ }
+
+ /**
+ *
+ * @param type
+ */
+ public AttributeBlockEditable(AttributeType type) {
+ super();
+ this.type = type;
+ }
+
+ public AttributeBlockEditable withType(AttributeType type) {
+ this.type = type;
+ return this;
+ }
+
+ public AttributeBlockEditable withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/AttributeBlockRead.java b/src/main/java/io/permit/sdk/openapi/models/AttributeBlockRead.java
new file mode 100644
index 0000000..6707ee0
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/AttributeBlockRead.java
@@ -0,0 +1,93 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * AttributeBlockRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class AttributeBlockRead {
+
+ /**
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("type")
+ @Expose
+ public AttributeType type;
+ /**
+ * Description
+ *
+ * optional description string explaining what data this attribute will store
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Id
+ *
+ * Unique id of the attribute
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Key
+ *
+ * action key
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public AttributeBlockRead() {
+ }
+
+ /**
+ *
+ * @param id
+ * @param type
+ */
+ public AttributeBlockRead(AttributeType type, String id) {
+ super();
+ this.type = type;
+ this.id = id;
+ }
+
+ public AttributeBlockRead withType(AttributeType type) {
+ this.type = type;
+ return this;
+ }
+
+ public AttributeBlockRead withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public AttributeBlockRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public AttributeBlockRead withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/AttributeType.java b/src/main/java/io/permit/sdk/openapi/models/AttributeType.java
new file mode 100644
index 0000000..d30137a
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/AttributeType.java
@@ -0,0 +1,62 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.HashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * AttributeType
+ *
+ * The type of the attribute, we currently support: `bool`, `number` (ints, floats), `time` (a timestamp), `string`, and `json`.
+ *
+ */
+@Generated("jsonschema2pojo")
+public enum AttributeType {
+
+ @SerializedName("bool")
+ BOOL("bool"),
+ @SerializedName("number")
+ NUMBER("number"),
+ @SerializedName("string")
+ STRING("string"),
+ @SerializedName("time")
+ TIME("time"),
+ @SerializedName("array")
+ ARRAY("array"),
+ @SerializedName("json")
+ JSON("json");
+ private final String value;
+ private final static Map
+ * Arbitraty resource attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Attributes {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ConditionSetCreate.java b/src/main/java/io/permit/sdk/openapi/models/ConditionSetCreate.java
new file mode 100644
index 0000000..4b29f13
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ConditionSetCreate.java
@@ -0,0 +1,136 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.HashMap;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ConditionSetCreate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ConditionSetCreate {
+
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify the condition set. The key will be used as the generated rego rule name.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * the type of the set: UserSet or ResourceSet
+ *
+ */
+ @SerializedName("type")
+ @Expose
+ public ConditionSetType type;
+ /**
+ * Autogenerated
+ *
+ * whether the set was autogenerated by the system.
+ *
+ */
+ @SerializedName("autogenerated")
+ @Expose
+ public Boolean autogenerated = false;
+ /**
+ * Resource Id
+ *
+ * For ResourceSets, the id of the base resource.
+ *
+ */
+ @SerializedName("resource_id")
+ @Expose
+ public java.lang.String resourceId;
+ /**
+ * Name
+ *
+ * A descriptive name for the set, i.e: 'US based employees' or 'Users behind VPN'
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the set
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Conditions
+ *
+ * a boolean expression that consists of multiple conditions, with and/or logic.
+ *
+ */
+ @SerializedName("conditions")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ConditionSetRead {
+
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify the condition set. The key will be used as the generated rego rule name.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * the type of the set: UserSet or ResourceSet
+ *
+ */
+ @SerializedName("type")
+ @Expose
+ public ConditionSetType type;
+ /**
+ * Autogenerated
+ *
+ * whether the set was autogenerated by the system.
+ *
+ */
+ @SerializedName("autogenerated")
+ @Expose
+ public Boolean autogenerated = false;
+ /**
+ * Resource Id
+ *
+ * For ResourceSets, the id of the base resource.
+ *
+ */
+ @SerializedName("resource_id")
+ @Expose
+ public java.lang.String resourceId;
+ /**
+ * Id
+ *
+ * Unique id of the condition set
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public java.lang.String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the condition set belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public java.lang.String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the condition set belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public java.lang.String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the condition set belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public java.lang.String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the condition set was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the condition set was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * ResourceRead
+ *
+ *
+ *
+ */
+ @SerializedName("resource")
+ @Expose
+ public ResourceRead resource;
+ /**
+ * Name
+ *
+ * A descriptive name for the set, i.e: 'US based employees' or 'Users behind VPN'
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the set
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Conditions
+ *
+ * a boolean expression that consists of multiple conditions, with and/or logic.
+ *
+ */
+ @SerializedName("conditions")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ConditionSetRuleCreate {
+
+ /**
+ * User Set
+ *
+ * The userset that will be given permission, i.e: all the users matching this rule will be given the specified permission
+ * (Required)
+ *
+ */
+ @SerializedName("user_set")
+ @Expose
+ public String userSet;
+ /**
+ * Permission
+ *
+ * The permission that will be granted to the userset *on* the resourceset. The permission can be either a resource action id, or `{resource_key}:{action_key}`, i.e: the "permission name".
+ * (Required)
+ *
+ */
+ @SerializedName("permission")
+ @Expose
+ public String permission;
+ /**
+ * Resource Set
+ *
+ * The resourceset that represents the resources that are granted for access, i.e: all the resources matching this rule can be accessed by the userset to perform the granted *permission*
+ * (Required)
+ *
+ */
+ @SerializedName("resource_set")
+ @Expose
+ public String resourceSet;
+ /**
+ * Is Role
+ *
+ * if True, will set the condition set rule to the role's autogen user-set.
+ *
+ */
+ @SerializedName("is_role")
+ @Expose
+ public Boolean isRole = false;
+ /**
+ * Is Resource
+ *
+ * if True, will set the condition set rule to the resource's autogen resource-set.
+ *
+ */
+ @SerializedName("is_resource")
+ @Expose
+ public Boolean isResource = false;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ConditionSetRuleCreate() {
+ }
+
+ /**
+ *
+ * @param resourceSet
+ * @param permission
+ * @param userSet
+ */
+ public ConditionSetRuleCreate(String userSet, String permission, String resourceSet) {
+ super();
+ this.userSet = userSet;
+ this.permission = permission;
+ this.resourceSet = resourceSet;
+ }
+
+ public ConditionSetRuleCreate withUserSet(String userSet) {
+ this.userSet = userSet;
+ return this;
+ }
+
+ public ConditionSetRuleCreate withPermission(String permission) {
+ this.permission = permission;
+ return this;
+ }
+
+ public ConditionSetRuleCreate withResourceSet(String resourceSet) {
+ this.resourceSet = resourceSet;
+ return this;
+ }
+
+ public ConditionSetRuleCreate withIsRole(Boolean isRole) {
+ this.isRole = isRole;
+ return this;
+ }
+
+ public ConditionSetRuleCreate withIsResource(Boolean isResource) {
+ this.isResource = isResource;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ConditionSetRuleRead.java b/src/main/java/io/permit/sdk/openapi/models/ConditionSetRuleRead.java
new file mode 100644
index 0000000..657bd97
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ConditionSetRuleRead.java
@@ -0,0 +1,204 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ConditionSetRuleRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ConditionSetRuleRead {
+
+ /**
+ * Id
+ *
+ * Unique id of the condition set rule
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify this condition set rule.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * User Set
+ *
+ * the userset that is currently granted permissions, i.e: all the users matching this rule are granted the permission on the resourceset
+ * (Required)
+ *
+ */
+ @SerializedName("user_set")
+ @Expose
+ public String userSet;
+ /**
+ * Permission
+ *
+ * a permission that is currently granted to the userset *on* the resourceset.
+ * (Required)
+ *
+ */
+ @SerializedName("permission")
+ @Expose
+ public String permission;
+ /**
+ * Resource Set
+ *
+ * the resourceset that represents the resources that are currently granted for access, i.e: all the resources matching this rule can be accessed by the userset to perform the granted *permission*
+ * (Required)
+ *
+ */
+ @SerializedName("resource_set")
+ @Expose
+ public String resourceSet;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the condition set rule belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the condition set rule belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the condition set rule belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the condition set rule was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the condition set rule was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ConditionSetRuleRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param resourceSet
+ * @param createdAt
+ * @param environmentId
+ * @param permission
+ * @param id
+ * @param userSet
+ * @param projectId
+ * @param key
+ * @param updatedAt
+ */
+ public ConditionSetRuleRead(String id, String key, String userSet, String permission, String resourceSet, String organizationId, String projectId, String environmentId, Date createdAt, Date updatedAt) {
+ super();
+ this.id = id;
+ this.key = key;
+ this.userSet = userSet;
+ this.permission = permission;
+ this.resourceSet = resourceSet;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ }
+
+ public ConditionSetRuleRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public ConditionSetRuleRead withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public ConditionSetRuleRead withUserSet(String userSet) {
+ this.userSet = userSet;
+ return this;
+ }
+
+ public ConditionSetRuleRead withPermission(String permission) {
+ this.permission = permission;
+ return this;
+ }
+
+ public ConditionSetRuleRead withResourceSet(String resourceSet) {
+ this.resourceSet = resourceSet;
+ return this;
+ }
+
+ public ConditionSetRuleRead withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public ConditionSetRuleRead withProjectId(String projectId) {
+ this.projectId = projectId;
+ return this;
+ }
+
+ public ConditionSetRuleRead withEnvironmentId(String environmentId) {
+ this.environmentId = environmentId;
+ return this;
+ }
+
+ public ConditionSetRuleRead withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+ public ConditionSetRuleRead withUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ConditionSetRuleRemove.java b/src/main/java/io/permit/sdk/openapi/models/ConditionSetRuleRemove.java
new file mode 100644
index 0000000..c37e9f4
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ConditionSetRuleRemove.java
@@ -0,0 +1,112 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ConditionSetRuleRemove
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ConditionSetRuleRemove {
+
+ /**
+ * User Set
+ *
+ * The userset that will be unassigned these permission, i.e: all the users matching this rule will lose the specified permission
+ * (Required)
+ *
+ */
+ @SerializedName("user_set")
+ @Expose
+ public String userSet;
+ /**
+ * Permission
+ *
+ * The permission that will be removed from the userset *on* the resourceset. The permission can be either a resource action id, or `{resource_key}:{action_key}`, i.e: the "permission name".
+ * (Required)
+ *
+ */
+ @SerializedName("permission")
+ @Expose
+ public String permission;
+ /**
+ * Resource Set
+ *
+ * The resourceset that represents the resources that are no longer granted for access, i.e: all the resources matching this rule can no longer be accessed by the userset, and will be revoked the specified *permission*
+ * (Required)
+ *
+ */
+ @SerializedName("resource_set")
+ @Expose
+ public String resourceSet;
+ /**
+ * Is Role
+ *
+ * if True, will set the condition set rule to the role's autogen user-set.
+ *
+ */
+ @SerializedName("is_role")
+ @Expose
+ public Boolean isRole = false;
+ /**
+ * Is Resource
+ *
+ * if True, will set the condition set rule to the resource's autogen resource-set.
+ *
+ */
+ @SerializedName("is_resource")
+ @Expose
+ public Boolean isResource = false;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ConditionSetRuleRemove() {
+ }
+
+ /**
+ *
+ * @param resourceSet
+ * @param permission
+ * @param userSet
+ */
+ public ConditionSetRuleRemove(String userSet, String permission, String resourceSet) {
+ super();
+ this.userSet = userSet;
+ this.permission = permission;
+ this.resourceSet = resourceSet;
+ }
+
+ public ConditionSetRuleRemove withUserSet(String userSet) {
+ this.userSet = userSet;
+ return this;
+ }
+
+ public ConditionSetRuleRemove withPermission(String permission) {
+ this.permission = permission;
+ return this;
+ }
+
+ public ConditionSetRuleRemove withResourceSet(String resourceSet) {
+ this.resourceSet = resourceSet;
+ return this;
+ }
+
+ public ConditionSetRuleRemove withIsRole(Boolean isRole) {
+ this.isRole = isRole;
+ return this;
+ }
+
+ public ConditionSetRuleRemove withIsResource(Boolean isResource) {
+ this.isResource = isResource;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ConditionSetType.java b/src/main/java/io/permit/sdk/openapi/models/ConditionSetType.java
new file mode 100644
index 0000000..f2f3dbd
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ConditionSetType.java
@@ -0,0 +1,54 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.HashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ConditionSetType
+ *
+ * the type of the set: UserSet or ResourceSet
+ *
+ */
+@Generated("jsonschema2pojo")
+public enum ConditionSetType {
+
+ @SerializedName("userset")
+ USERSET("userset"),
+ @SerializedName("resourceset")
+ RESOURCESET("resourceset");
+ private final String value;
+ private final static Map
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ConditionSetUpdate {
+
+ /**
+ * Name
+ *
+ * A descriptive name for the set, i.e: 'US based employees' or 'Users behind VPN'
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the set
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Conditions
+ *
+ * a boolean expression that consists of multiple conditions, with and/or logic.
+ *
+ */
+ @SerializedName("conditions")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class EmbeddedLoginRequestOutput {
+
+ /**
+ * Error
+ *
+ * If the login request failed, this field will contain the error message
+ *
+ */
+ @SerializedName("error")
+ @Expose
+ public String error;
+ /**
+ * Error Code
+ *
+ * If the login request failed, this field will contain the error code
+ *
+ */
+ @SerializedName("error_code")
+ @Expose
+ public Integer errorCode;
+ /**
+ * Token
+ *
+ * The auth token that lets your users login into permit elements
+ *
+ */
+ @SerializedName("token")
+ @Expose
+ public String token;
+ /**
+ * Extra
+ *
+ * Extra data that you can pass to the login request
+ *
+ */
+ @SerializedName("extra")
+ @Expose
+ public String extra;
+ /**
+ * Redirect Url
+ *
+ * The full URL to which the user should be redirected in order to complete the login process
+ * (Required)
+ *
+ */
+ @SerializedName("redirect_url")
+ @Expose
+ public String redirectUrl;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public EmbeddedLoginRequestOutput() {
+ }
+
+ /**
+ *
+ * @param redirectUrl
+ */
+ public EmbeddedLoginRequestOutput(String redirectUrl) {
+ super();
+ this.redirectUrl = redirectUrl;
+ }
+
+ public EmbeddedLoginRequestOutput withError(String error) {
+ this.error = error;
+ return this;
+ }
+
+ public EmbeddedLoginRequestOutput withErrorCode(Integer errorCode) {
+ this.errorCode = errorCode;
+ return this;
+ }
+
+ public EmbeddedLoginRequestOutput withToken(String token) {
+ this.token = token;
+ return this;
+ }
+
+ public EmbeddedLoginRequestOutput withExtra(String extra) {
+ this.extra = extra;
+ return this;
+ }
+
+ public EmbeddedLoginRequestOutput withRedirectUrl(String redirectUrl) {
+ this.redirectUrl = redirectUrl;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/EnvironmentCreate.java b/src/main/java/io/permit/sdk/openapi/models/EnvironmentCreate.java
new file mode 100644
index 0000000..e44ad7c
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/EnvironmentCreate.java
@@ -0,0 +1,95 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * EnvironmentCreate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class EnvironmentCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the environment (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the environment.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Name
+ *
+ * The name of the environment
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the environment
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Custom Branch Name
+ *
+ * when using gitops feature, an optional branch name for the environment
+ *
+ */
+ @SerializedName("custom_branch_name")
+ @Expose
+ public String customBranchName;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public EnvironmentCreate() {
+ }
+
+ /**
+ *
+ * @param name
+ * @param key
+ */
+ public EnvironmentCreate(String key, String name) {
+ super();
+ this.key = key;
+ this.name = name;
+ }
+
+ public EnvironmentCreate withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public EnvironmentCreate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public EnvironmentCreate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public EnvironmentCreate withCustomBranchName(String customBranchName) {
+ this.customBranchName = customBranchName;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/EnvironmentRead.java b/src/main/java/io/permit/sdk/openapi/models/EnvironmentRead.java
new file mode 100644
index 0000000..7a0342a
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/EnvironmentRead.java
@@ -0,0 +1,181 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * EnvironmentRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class EnvironmentRead {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the environment (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the environment.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the environment
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the environment belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the environment belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Created At
+ *
+ * Date and time when the environment was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the environment was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Name
+ *
+ * The name of the environment
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the environment
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Custom Branch Name
+ *
+ * when using gitops feature, an optional branch name for the environment
+ *
+ */
+ @SerializedName("custom_branch_name")
+ @Expose
+ public String customBranchName;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public EnvironmentRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param name
+ * @param id
+ * @param projectId
+ * @param key
+ * @param updatedAt
+ */
+ public EnvironmentRead(String key, String id, String organizationId, String projectId, Date createdAt, Date updatedAt, String name) {
+ super();
+ this.key = key;
+ this.id = id;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ this.name = name;
+ }
+
+ public EnvironmentRead withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public EnvironmentRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public EnvironmentRead withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public EnvironmentRead withProjectId(String projectId) {
+ this.projectId = projectId;
+ return this;
+ }
+
+ public EnvironmentRead withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+ public EnvironmentRead withUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+ public EnvironmentRead withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public EnvironmentRead withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public EnvironmentRead withCustomBranchName(String customBranchName) {
+ this.customBranchName = customBranchName;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/EnvironmentStats.java b/src/main/java/io/permit/sdk/openapi/models/EnvironmentStats.java
new file mode 100644
index 0000000..66740a6
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/EnvironmentStats.java
@@ -0,0 +1,216 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import java.util.List;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * EnvironmentStats
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class EnvironmentStats {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the environment (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the environment.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the environment
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the environment belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the environment belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Created At
+ *
+ * Date and time when the environment was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the environment was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Name
+ *
+ * The name of the environment
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the environment
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Custom Branch Name
+ *
+ * when using gitops feature, an optional branch name for the environment
+ *
+ */
+ @SerializedName("custom_branch_name")
+ @Expose
+ public String customBranchName;
+ /**
+ * Pdp Configs
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("pdp_configs")
+ @Expose
+ public List
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("stats")
+ @Expose
+ public Statistics stats;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public EnvironmentStats() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param stats
+ * @param name
+ * @param id
+ * @param pdpConfigs
+ * @param projectId
+ * @param key
+ * @param updatedAt
+ */
+ public EnvironmentStats(String key, String id, String organizationId, String projectId, Date createdAt, Date updatedAt, String name, List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class EnvironmentUpdate {
+
+ /**
+ * Name
+ *
+ * The name of the environment
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the environment
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Custom Branch Name
+ *
+ * when using gitops feature, an optional branch name for the environment
+ *
+ */
+ @SerializedName("custom_branch_name")
+ @Expose
+ public String customBranchName;
+
+ public EnvironmentUpdate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public EnvironmentUpdate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public EnvironmentUpdate withCustomBranchName(String customBranchName) {
+ this.customBranchName = customBranchName;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/HTTPValidationError.java b/src/main/java/io/permit/sdk/openapi/models/HTTPValidationError.java
new file mode 100644
index 0000000..8c510cd
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/HTTPValidationError.java
@@ -0,0 +1,34 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.List;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * HTTPValidationError
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class HTTPValidationError {
+
+ /**
+ * Detail
+ *
+ *
+ *
+ */
+ @SerializedName("detail")
+ @Expose
+ public List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class OrganizationCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the organization (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the organization.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Name
+ *
+ * The name of the organization, usually it's your company's name.
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+ @SerializedName("settings")
+ @Expose
+ public Settings settings;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public OrganizationCreate() {
+ }
+
+ /**
+ *
+ * @param name
+ * @param key
+ */
+ public OrganizationCreate(String key, String name) {
+ super();
+ this.key = key;
+ this.name = name;
+ }
+
+ public OrganizationCreate withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public OrganizationCreate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public OrganizationCreate withSettings(Settings settings) {
+ this.settings = settings;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/OrganizationRead.java b/src/main/java/io/permit/sdk/openapi/models/OrganizationRead.java
new file mode 100644
index 0000000..62b532e
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/OrganizationRead.java
@@ -0,0 +1,133 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * OrganizationRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class OrganizationRead {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the organization (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the organization.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the organization
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Created At
+ *
+ * Date and time when the organization was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the organization was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Name
+ *
+ * The name of the organization, usually it's your company's name.
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+ @SerializedName("settings")
+ @Expose
+ public Settings__1 settings;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public OrganizationRead() {
+ }
+
+ /**
+ *
+ * @param createdAt
+ * @param name
+ * @param id
+ * @param key
+ * @param updatedAt
+ */
+ public OrganizationRead(String key, String id, Date createdAt, Date updatedAt, String name) {
+ super();
+ this.key = key;
+ this.id = id;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ this.name = name;
+ }
+
+ public OrganizationRead withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public OrganizationRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public OrganizationRead withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+ public OrganizationRead withUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+ public OrganizationRead withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public OrganizationRead withSettings(Settings__1 settings) {
+ this.settings = settings;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/OrganizationReadWithAPIKey.java b/src/main/java/io/permit/sdk/openapi/models/OrganizationReadWithAPIKey.java
new file mode 100644
index 0000000..095cf8b
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/OrganizationReadWithAPIKey.java
@@ -0,0 +1,161 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * OrganizationReadWithAPIKey
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class OrganizationReadWithAPIKey {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the organization (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the organization.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the organization
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Created At
+ *
+ * Date and time when the organization was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the organization was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Name
+ *
+ * The name of the organization, usually it's your company's name.
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+ @SerializedName("settings")
+ @Expose
+ public Settings__2 settings;
+ /**
+ * Api Key Id
+ *
+ *
+ *
+ */
+ @SerializedName("api_key_id")
+ @Expose
+ public String apiKeyId;
+ /**
+ * Api Key Secret
+ *
+ *
+ *
+ */
+ @SerializedName("api_key_secret")
+ @Expose
+ public String apiKeySecret;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public OrganizationReadWithAPIKey() {
+ }
+
+ /**
+ *
+ * @param createdAt
+ * @param name
+ * @param id
+ * @param key
+ * @param updatedAt
+ */
+ public OrganizationReadWithAPIKey(String key, String id, Date createdAt, Date updatedAt, String name) {
+ super();
+ this.key = key;
+ this.id = id;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ this.name = name;
+ }
+
+ public OrganizationReadWithAPIKey withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public OrganizationReadWithAPIKey withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public OrganizationReadWithAPIKey withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+ public OrganizationReadWithAPIKey withUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+ public OrganizationReadWithAPIKey withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public OrganizationReadWithAPIKey withSettings(Settings__2 settings) {
+ this.settings = settings;
+ return this;
+ }
+
+ public OrganizationReadWithAPIKey withApiKeyId(String apiKeyId) {
+ this.apiKeyId = apiKeyId;
+ return this;
+ }
+
+ public OrganizationReadWithAPIKey withApiKeySecret(String apiKeySecret) {
+ this.apiKeySecret = apiKeySecret;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/OrganizationUpdate.java b/src/main/java/io/permit/sdk/openapi/models/OrganizationUpdate.java
new file mode 100644
index 0000000..082c4b0
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/OrganizationUpdate.java
@@ -0,0 +1,47 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * OrganizationUpdate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class OrganizationUpdate {
+
+ /**
+ * Name
+ *
+ * The name of the organization, usually it's your company's name.
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+ @SerializedName("settings")
+ @Expose
+ public Settings__3 settings;
+
+ public OrganizationUpdate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public OrganizationUpdate withSettings(Settings__3 settings) {
+ this.settings = settings;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/PDPConfigRead.java b/src/main/java/io/permit/sdk/openapi/models/PDPConfigRead.java
new file mode 100644
index 0000000..9442c10
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/PDPConfigRead.java
@@ -0,0 +1,132 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * PDPConfigRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class PDPConfigRead {
+
+ /**
+ * Id
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Name
+ *
+ *
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the pdp_config belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the pdp_config belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the pdp_config belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Client Secret
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("client_secret")
+ @Expose
+ public String clientSecret;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public PDPConfigRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param environmentId
+ * @param clientSecret
+ * @param id
+ * @param projectId
+ */
+ public PDPConfigRead(String id, String organizationId, String projectId, String environmentId, String clientSecret) {
+ super();
+ this.id = id;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.clientSecret = clientSecret;
+ }
+
+ public PDPConfigRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public PDPConfigRead withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public PDPConfigRead withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public PDPConfigRead withProjectId(String projectId) {
+ this.projectId = projectId;
+ return this;
+ }
+
+ public PDPConfigRead withEnvironmentId(String environmentId) {
+ this.environmentId = environmentId;
+ return this;
+ }
+
+ public PDPConfigRead withClientSecret(String clientSecret) {
+ this.clientSecret = clientSecret;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/PDPConfigRead__1.java b/src/main/java/io/permit/sdk/openapi/models/PDPConfigRead__1.java
new file mode 100644
index 0000000..8f99e80
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/PDPConfigRead__1.java
@@ -0,0 +1,132 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * PDPConfigRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class PDPConfigRead__1 {
+
+ /**
+ * Id
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Name
+ *
+ *
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the pdp_config belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the pdp_config belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the pdp_config belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Client Secret
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("client_secret")
+ @Expose
+ public String clientSecret;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public PDPConfigRead__1() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param environmentId
+ * @param clientSecret
+ * @param id
+ * @param projectId
+ */
+ public PDPConfigRead__1(String id, String organizationId, String projectId, String environmentId, String clientSecret) {
+ super();
+ this.id = id;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.clientSecret = clientSecret;
+ }
+
+ public PDPConfigRead__1 withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public PDPConfigRead__1 withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public PDPConfigRead__1 withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public PDPConfigRead__1 withProjectId(String projectId) {
+ this.projectId = projectId;
+ return this;
+ }
+
+ public PDPConfigRead__1 withEnvironmentId(String environmentId) {
+ this.environmentId = environmentId;
+ return this;
+ }
+
+ public PDPConfigRead__1 withClientSecret(String clientSecret) {
+ this.clientSecret = clientSecret;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/PaginatedResultUserRead.java b/src/main/java/io/permit/sdk/openapi/models/PaginatedResultUserRead.java
new file mode 100644
index 0000000..6d33fe9
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/PaginatedResultUserRead.java
@@ -0,0 +1,82 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.List;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * PaginatedResult[UserRead]
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class PaginatedResultUserRead {
+
+ /**
+ * Data
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("data")
+ @Expose
+ public List
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("total_count")
+ @Expose
+ public Integer totalCount;
+ /**
+ * Page Count
+ *
+ *
+ *
+ */
+ @SerializedName("page_count")
+ @Expose
+ public Integer pageCount = 0;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public PaginatedResultUserRead() {
+ }
+
+ /**
+ *
+ * @param data
+ * @param totalCount
+ */
+ public PaginatedResultUserRead(List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ProjectCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the project (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the project.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Urn Namespace
+ *
+ * Optional namespace for URNs. If empty, URNs will be generated from project key.
+ *
+ */
+ @SerializedName("urn_namespace")
+ @Expose
+ public String urnNamespace;
+ /**
+ * Name
+ *
+ * The name of the project
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * a longer description outlining the project objectives
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+ @SerializedName("settings")
+ @Expose
+ public Settings__4 settings;
+ /**
+ * Active Policy Repo Id
+ *
+ * the id of the policy repo to use for this project
+ *
+ */
+ @SerializedName("active_policy_repo_id")
+ @Expose
+ public String activePolicyRepoId;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ProjectCreate() {
+ }
+
+ /**
+ *
+ * @param name
+ * @param key
+ */
+ public ProjectCreate(String key, String name) {
+ super();
+ this.key = key;
+ this.name = name;
+ }
+
+ public ProjectCreate withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public ProjectCreate withUrnNamespace(String urnNamespace) {
+ this.urnNamespace = urnNamespace;
+ return this;
+ }
+
+ public ProjectCreate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public ProjectCreate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public ProjectCreate withSettings(Settings__4 settings) {
+ this.settings = settings;
+ return this;
+ }
+
+ public ProjectCreate withActivePolicyRepoId(String activePolicyRepoId) {
+ this.activePolicyRepoId = activePolicyRepoId;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ProjectRead.java b/src/main/java/io/permit/sdk/openapi/models/ProjectRead.java
new file mode 100644
index 0000000..06865cf
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ProjectRead.java
@@ -0,0 +1,192 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ProjectRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ProjectRead {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the project (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the project.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Urn Namespace
+ *
+ * Optional namespace for URNs. If empty, URNs will be generated from project key.
+ *
+ */
+ @SerializedName("urn_namespace")
+ @Expose
+ public String urnNamespace;
+ /**
+ * Id
+ *
+ * Unique id of the project
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the project belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Created At
+ *
+ * Date and time when the project was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the project was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Name
+ *
+ * The name of the project
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * a longer description outlining the project objectives
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+ @SerializedName("settings")
+ @Expose
+ public Settings__5 settings;
+ /**
+ * Active Policy Repo Id
+ *
+ * the id of the policy repo to use for this project
+ *
+ */
+ @SerializedName("active_policy_repo_id")
+ @Expose
+ public String activePolicyRepoId;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ProjectRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param name
+ * @param id
+ * @param key
+ * @param updatedAt
+ */
+ public ProjectRead(String key, String id, String organizationId, Date createdAt, Date updatedAt, String name) {
+ super();
+ this.key = key;
+ this.id = id;
+ this.organizationId = organizationId;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ this.name = name;
+ }
+
+ public ProjectRead withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public ProjectRead withUrnNamespace(String urnNamespace) {
+ this.urnNamespace = urnNamespace;
+ return this;
+ }
+
+ public ProjectRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public ProjectRead withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public ProjectRead withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+ public ProjectRead withUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+ public ProjectRead withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public ProjectRead withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public ProjectRead withSettings(Settings__5 settings) {
+ this.settings = settings;
+ return this;
+ }
+
+ public ProjectRead withActivePolicyRepoId(String activePolicyRepoId) {
+ this.activePolicyRepoId = activePolicyRepoId;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ProjectUpdate.java b/src/main/java/io/permit/sdk/openapi/models/ProjectUpdate.java
new file mode 100644
index 0000000..4c8c1aa
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ProjectUpdate.java
@@ -0,0 +1,75 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ProjectUpdate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ProjectUpdate {
+
+ /**
+ * Name
+ *
+ * The name of the project
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * a longer description outlining the project objectives
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+ @SerializedName("settings")
+ @Expose
+ public Settings__6 settings;
+ /**
+ * Active Policy Repo Id
+ *
+ * the id of the policy repo to use for this project
+ *
+ */
+ @SerializedName("active_policy_repo_id")
+ @Expose
+ public String activePolicyRepoId;
+
+ public ProjectUpdate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public ProjectUpdate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public ProjectUpdate withSettings(Settings__6 settings) {
+ this.settings = settings;
+ return this;
+ }
+
+ public ProjectUpdate withActivePolicyRepoId(String activePolicyRepoId) {
+ this.activePolicyRepoId = activePolicyRepoId;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/RelationsBlock.java b/src/main/java/io/permit/sdk/openapi/models/RelationsBlock.java
new file mode 100644
index 0000000..f1ab7ad
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/RelationsBlock.java
@@ -0,0 +1,18 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * RelationsBlock
+ *
+ * A actions definition block, typically contained within a resource type definition block.
+ * The actions represents the ways you can interact with a protected resource.
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RelationsBlock {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/RemoveRolePermissions.java b/src/main/java/io/permit/sdk/openapi/models/RemoveRolePermissions.java
new file mode 100644
index 0000000..f9d6f53
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/RemoveRolePermissions.java
@@ -0,0 +1,51 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.List;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * RemoveRolePermissions
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RemoveRolePermissions {
+
+ /**
+ * Permissions
+ *
+ * List of permissions to remove from the role. If a permission is not found it is skipped. Each permission can be either a resource action id, or `{resource_key}:{action_key}`,i.e: the "permission name".
+ * (Required)
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceActionCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the action (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the action.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Name
+ *
+ * The name of the action
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * An optional longer description of what this action respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ResourceActionCreate() {
+ }
+
+ /**
+ *
+ * @param name
+ * @param key
+ */
+ public ResourceActionCreate(String key, String name) {
+ super();
+ this.key = key;
+ this.name = name;
+ }
+
+ public ResourceActionCreate withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public ResourceActionCreate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public ResourceActionCreate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ResourceActionRead.java b/src/main/java/io/permit/sdk/openapi/models/ResourceActionRead.java
new file mode 100644
index 0000000..edaf686
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ResourceActionRead.java
@@ -0,0 +1,218 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ResourceActionRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceActionRead {
+
+ /**
+ * Name
+ *
+ * The name of the action
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * An optional longer description of what this action respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Key
+ *
+ * A URL-friendly name of the action (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the action.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the action
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Permission Name
+ *
+ * The name of the action, prefixed by the resource the action is acting upon.
+ * (Required)
+ *
+ */
+ @SerializedName("permission_name")
+ @Expose
+ public String permissionName;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the action belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the action belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the action belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Resource Id
+ *
+ * Unique id of the resource that the action belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("resource_id")
+ @Expose
+ public String resourceId;
+ /**
+ * Created At
+ *
+ * Date and time when the action was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the action was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ResourceActionRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param resourceId
+ * @param environmentId
+ * @param name
+ * @param id
+ * @param projectId
+ * @param key
+ * @param permissionName
+ * @param updatedAt
+ */
+ public ResourceActionRead(String name, String key, String id, String permissionName, String organizationId, String projectId, String environmentId, String resourceId, Date createdAt, Date updatedAt) {
+ super();
+ this.name = name;
+ this.key = key;
+ this.id = id;
+ this.permissionName = permissionName;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.resourceId = resourceId;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ }
+
+ public ResourceActionRead withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public ResourceActionRead withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public ResourceActionRead withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public ResourceActionRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public ResourceActionRead withPermissionName(String permissionName) {
+ this.permissionName = permissionName;
+ return this;
+ }
+
+ public ResourceActionRead withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public ResourceActionRead withProjectId(String projectId) {
+ this.projectId = projectId;
+ return this;
+ }
+
+ public ResourceActionRead withEnvironmentId(String environmentId) {
+ this.environmentId = environmentId;
+ return this;
+ }
+
+ public ResourceActionRead withResourceId(String resourceId) {
+ this.resourceId = resourceId;
+ return this;
+ }
+
+ public ResourceActionRead withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+ public ResourceActionRead withUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ResourceActionUpdate.java b/src/main/java/io/permit/sdk/openapi/models/ResourceActionUpdate.java
new file mode 100644
index 0000000..0e32342
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ResourceActionUpdate.java
@@ -0,0 +1,47 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ResourceActionUpdate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceActionUpdate {
+
+ /**
+ * Name
+ *
+ * The name of the action
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * An optional longer description of what this action respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+
+ public ResourceActionUpdate withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public ResourceActionUpdate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeCreate.java b/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeCreate.java
new file mode 100644
index 0000000..17c5a8d
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeCreate.java
@@ -0,0 +1,79 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ResourceAttributeCreate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceAttributeCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the attribute (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the attribute.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("type")
+ @Expose
+ public AttributeType type;
+ /**
+ * Description
+ *
+ * An optional longer description of what this attribute respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ResourceAttributeCreate() {
+ }
+
+ /**
+ *
+ * @param type
+ * @param key
+ */
+ public ResourceAttributeCreate(String key, AttributeType type) {
+ super();
+ this.key = key;
+ this.type = type;
+ }
+
+ public ResourceAttributeCreate withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public ResourceAttributeCreate withType(AttributeType type) {
+ this.type = type;
+ return this;
+ }
+
+ public ResourceAttributeCreate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeRead.java b/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeRead.java
new file mode 100644
index 0000000..285a13d
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeRead.java
@@ -0,0 +1,216 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ResourceAttributeRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceAttributeRead {
+
+ /**
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("type")
+ @Expose
+ public AttributeType type;
+ /**
+ * Description
+ *
+ * An optional longer description of what this attribute respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Key
+ *
+ * A URL-friendly name of the attribute (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the attribute.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the attribute
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Resource Id
+ *
+ * Unique id of the resource that the attribute belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("resource_id")
+ @Expose
+ public String resourceId;
+ /**
+ * Resource Key
+ *
+ * A URL-friendly name of the resource (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the resource.
+ * (Required)
+ *
+ */
+ @SerializedName("resource_key")
+ @Expose
+ public String resourceKey;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the attribute belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the attribute belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the attribute belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the attribute was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the attribute was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ResourceAttributeRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param resourceId
+ * @param environmentId
+ * @param resourceKey
+ * @param id
+ * @param type
+ * @param projectId
+ * @param key
+ * @param updatedAt
+ */
+ public ResourceAttributeRead(AttributeType type, String key, String id, String resourceId, String resourceKey, String organizationId, String projectId, String environmentId, Date createdAt, Date updatedAt) {
+ super();
+ this.type = type;
+ this.key = key;
+ this.id = id;
+ this.resourceId = resourceId;
+ this.resourceKey = resourceKey;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ }
+
+ public ResourceAttributeRead withType(AttributeType type) {
+ this.type = type;
+ return this;
+ }
+
+ public ResourceAttributeRead withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public ResourceAttributeRead withKey(String key) {
+ this.key = key;
+ return this;
+ }
+
+ public ResourceAttributeRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public ResourceAttributeRead withResourceId(String resourceId) {
+ this.resourceId = resourceId;
+ return this;
+ }
+
+ public ResourceAttributeRead withResourceKey(String resourceKey) {
+ this.resourceKey = resourceKey;
+ return this;
+ }
+
+ public ResourceAttributeRead withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public ResourceAttributeRead withProjectId(String projectId) {
+ this.projectId = projectId;
+ return this;
+ }
+
+ public ResourceAttributeRead withEnvironmentId(String environmentId) {
+ this.environmentId = environmentId;
+ return this;
+ }
+
+ public ResourceAttributeRead withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+ public ResourceAttributeRead withUpdatedAt(Date updatedAt) {
+ this.updatedAt = updatedAt;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeUpdate.java b/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeUpdate.java
new file mode 100644
index 0000000..748cf9c
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ResourceAttributeUpdate.java
@@ -0,0 +1,41 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ResourceAttributeUpdate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceAttributeUpdate {
+
+ @SerializedName("type")
+ @Expose
+ public AttributeType type;
+ /**
+ * Description
+ *
+ * An optional longer description of what this attribute respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+
+ public ResourceAttributeUpdate withType(AttributeType type) {
+ this.type = type;
+ return this;
+ }
+
+ public ResourceAttributeUpdate withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ResourceCreate.java b/src/main/java/io/permit/sdk/openapi/models/ResourceCreate.java
new file mode 100644
index 0000000..0183fe6
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ResourceCreate.java
@@ -0,0 +1,130 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.HashMap;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ResourceCreate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the resource (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the resource.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Name
+ *
+ * The name of the resource
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Urn
+ *
+ * The [URN](https://en.wikipedia.org/wiki/Uniform_Resource_Name) (Uniform Resource Name) of the resource
+ *
+ */
+ @SerializedName("urn")
+ @Expose
+ public java.lang.String urn;
+ /**
+ * Description
+ *
+ * An optional longer description of what this resource respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Actions
+ *
+ *
+ * A actions definition block, typically contained within a resource type definition block.
+ * The actions represents the ways you can interact with a protected resource.
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("actions")
+ @Expose
+ public HashMap
+ * Attributes that each resource of this type defines, and can be used in your ABAC policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceInstanceCreate {
+
+ /**
+ * Key
+ *
+ * A unique identifier by which Permit will identify the resource instance for permission checks. You will later pass this identifier to the `permit.check()` API. A key can be anything: for example the resource db id, a url slug, a UUID or anything else as long as it's unique on your end. The resource instance key must be url-friendly.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Tenant
+ *
+ * the *key* of the tenant that this resource belongs to, used to enforce tenant boundaries in multi-tenant apps.
+ *
+ */
+ @SerializedName("tenant")
+ @Expose
+ public java.lang.String tenant;
+ /**
+ * Resource
+ *
+ * the *key* of the resource (type) of this resource instance. For example: if this resource instance is the annual budget document, the key of the resource might be `document`.
+ * (Required)
+ *
+ */
+ @SerializedName("resource")
+ @Expose
+ public java.lang.String resource;
+ /**
+ * Attributes
+ *
+ * Arbitraty resource attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceInstanceRead {
+
+ /**
+ * Key
+ *
+ * A unique identifier by which Permit will identify the resource instance for permission checks. You will later pass this identifier to the `permit.check()` API. A key can be anything: for example the resource db id, a url slug, a UUID or anything else as long as it's unique on your end. The resource instance key must be url-friendly.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Tenant
+ *
+ * the *key* of the tenant that this resource belongs to, used to enforce tenant boundaries in multi-tenant apps.
+ *
+ */
+ @SerializedName("tenant")
+ @Expose
+ public java.lang.String tenant;
+ /**
+ * Resource
+ *
+ * the *key* of the resource (type) of this resource instance. For example: if this resource instance is the annual budget document, the key of the resource might be `document`.
+ * (Required)
+ *
+ */
+ @SerializedName("resource")
+ @Expose
+ public java.lang.String resource;
+ /**
+ * Id
+ *
+ * Unique id of the resource instance
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public java.lang.String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the resource instance belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public java.lang.String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the resource instance belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public java.lang.String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the resource instance belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public java.lang.String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the resource instance was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the resource instance was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Resource Id
+ *
+ * the id of the resource (type) of this resource instance.
+ * (Required)
+ *
+ */
+ @SerializedName("resource_id")
+ @Expose
+ public java.lang.String resourceId;
+ /**
+ * Tenant Id
+ *
+ * the id of the tenant of this resource instance.
+ *
+ */
+ @SerializedName("tenant_id")
+ @Expose
+ public java.lang.String tenantId;
+ /**
+ * Attributes
+ *
+ * Arbitraty resource attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceInstanceUpdate {
+
+ /**
+ * Attributes
+ *
+ * Arbitraty resource attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public Attributes attributes;
+
+ public ResourceInstanceUpdate withAttributes(Attributes attributes) {
+ this.attributes = attributes;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/ResourceRead.java b/src/main/java/io/permit/sdk/openapi/models/ResourceRead.java
new file mode 100644
index 0000000..896250d
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/ResourceRead.java
@@ -0,0 +1,230 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import java.util.HashMap;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * ResourceRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceRead {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the resource (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the resource.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Id
+ *
+ * Unique id of the resource
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public java.lang.String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the resource belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public java.lang.String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the resource belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public java.lang.String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the resource belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public java.lang.String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the resource was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the resource was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Name
+ *
+ * The name of the resource
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Urn
+ *
+ * The [URN](https://en.wikipedia.org/wiki/Uniform_Resource_Name) (Uniform Resource Name) of the resource
+ *
+ */
+ @SerializedName("urn")
+ @Expose
+ public java.lang.String urn;
+ /**
+ * Description
+ *
+ * An optional longer description of what this resource respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Actions
+ *
+ *
+ * A actions definition block, typically contained within a resource type definition block.
+ * The actions represents the ways you can interact with a protected resource.
+ *
+ *
+ */
+ @SerializedName("actions")
+ @Expose
+ public HashMap
+ * Attributes that each resource of this type defines, and can be used in your ABAC policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceRead__1 {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the resource (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the resource.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Id
+ *
+ * Unique id of the resource
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public java.lang.String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the resource belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public java.lang.String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the resource belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public java.lang.String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the resource belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public java.lang.String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the resource was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the resource was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Name
+ *
+ * The name of the resource
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Urn
+ *
+ * The [URN](https://en.wikipedia.org/wiki/Uniform_Resource_Name) (Uniform Resource Name) of the resource
+ *
+ */
+ @SerializedName("urn")
+ @Expose
+ public java.lang.String urn;
+ /**
+ * Description
+ *
+ * An optional longer description of what this resource respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Actions
+ *
+ *
+ * A actions definition block, typically contained within a resource type definition block.
+ * The actions represents the ways you can interact with a protected resource.
+ *
+ *
+ */
+ @SerializedName("actions")
+ @Expose
+ public HashMap
+ * Attributes that each resource of this type defines, and can be used in your ABAC policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceReplace {
+
+ /**
+ * Name
+ *
+ * The name of the resource
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Urn
+ *
+ * The [URN](https://en.wikipedia.org/wiki/Uniform_Resource_Name) (Uniform Resource Name) of the resource
+ *
+ */
+ @SerializedName("urn")
+ @Expose
+ public java.lang.String urn;
+ /**
+ * Description
+ *
+ * An optional longer description of what this resource respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Actions
+ *
+ *
+ * A actions definition block, typically contained within a resource type definition block.
+ * The actions represents the ways you can interact with a protected resource.
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("actions")
+ @Expose
+ public HashMap
+ * Attributes that each resource of this type defines, and can be used in your ABAC policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceRoleCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the role (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the role.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Name
+ *
+ * The name of the role
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * optional description string explaining what this role represents, or what permissions are granted to it.
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Permissions
+ *
+ * list of action keys that define what actions this resource role is permitted to do
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ * list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
+ *
+ */
+ @SerializedName("extends")
+ @Expose
+ public List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceRoleRead {
+
+ /**
+ * Name
+ *
+ * The name of the role
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * optional description string explaining what this role represents, or what permissions are granted to it.
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Permissions
+ *
+ * list of action keys that define what actions this resource role is permitted to do
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ * list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
+ *
+ */
+ @SerializedName("extends")
+ @Expose
+ public List
+ * A URL-friendly name of the role (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the role.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the role
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the role belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the role belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the role belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Resource Id
+ *
+ * Unique id of the resource that the role belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("resource_id")
+ @Expose
+ public String resourceId;
+ /**
+ * Created At
+ *
+ * Date and time when the role was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the role was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ResourceRoleRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param resourceId
+ * @param environmentId
+ * @param name
+ * @param id
+ * @param projectId
+ * @param key
+ * @param updatedAt
+ */
+ public ResourceRoleRead(String name, String key, String id, String organizationId, String projectId, String environmentId, String resourceId, Date createdAt, Date updatedAt) {
+ super();
+ this.name = name;
+ this.key = key;
+ this.id = id;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.resourceId = resourceId;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ }
+
+ public ResourceRoleRead withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public ResourceRoleRead withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public ResourceRoleRead withPermissions(List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceRoleUpdate {
+
+ /**
+ * Name
+ *
+ * The name of the role
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * optional description string explaining what this role represents, or what permissions are granted to it.
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Permissions
+ *
+ * list of action keys that define what actions this resource role is permitted to do
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ * list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
+ *
+ */
+ @SerializedName("extends")
+ @Expose
+ public List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class ResourceUpdate {
+
+ /**
+ * Name
+ *
+ * The name of the resource
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Urn
+ *
+ * The [URN](https://en.wikipedia.org/wiki/Uniform_Resource_Name) (Uniform Resource Name) of the resource
+ *
+ */
+ @SerializedName("urn")
+ @Expose
+ public java.lang.String urn;
+ /**
+ * Description
+ *
+ * An optional longer description of what this resource respresents in your system
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Actions
+ *
+ *
+ * A actions definition block, typically contained within a resource type definition block.
+ * The actions represents the ways you can interact with a protected resource.
+ *
+ *
+ */
+ @SerializedName("actions")
+ @Expose
+ public HashMap
+ * Attributes that each resource of this type defines, and can be used in your ABAC policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RoleAssignmentCreate {
+
+ /**
+ * Role
+ *
+ * the role that will be assigned (accepts either the role id or the role key)
+ * (Required)
+ *
+ */
+ @SerializedName("role")
+ @Expose
+ public String role;
+ /**
+ * Tenant
+ *
+ * the tenant the role is associated with (accepts either the tenant id or the tenant key)
+ * (Required)
+ *
+ */
+ @SerializedName("tenant")
+ @Expose
+ public String tenant;
+ /**
+ * User
+ *
+ * the user the role will be assigned to (accepts either the user id or the user key)
+ * (Required)
+ *
+ */
+ @SerializedName("user")
+ @Expose
+ public String user;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public RoleAssignmentCreate() {
+ }
+
+ /**
+ *
+ * @param role
+ * @param user
+ * @param tenant
+ */
+ public RoleAssignmentCreate(String role, String tenant, String user) {
+ super();
+ this.role = role;
+ this.tenant = tenant;
+ this.user = user;
+ }
+
+ public RoleAssignmentCreate withRole(String role) {
+ this.role = role;
+ return this;
+ }
+
+ public RoleAssignmentCreate withTenant(String tenant) {
+ this.tenant = tenant;
+ return this;
+ }
+
+ public RoleAssignmentCreate withUser(String user) {
+ this.user = user;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/RoleAssignmentRead.java b/src/main/java/io/permit/sdk/openapi/models/RoleAssignmentRead.java
new file mode 100644
index 0000000..f31f2fe
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/RoleAssignmentRead.java
@@ -0,0 +1,221 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.Date;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * RoleAssignmentRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RoleAssignmentRead {
+
+ /**
+ * Id
+ *
+ * Unique id of the role assignment
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * User
+ *
+ * the user the role is assigned to
+ * (Required)
+ *
+ */
+ @SerializedName("user")
+ @Expose
+ public String user;
+ /**
+ * Role
+ *
+ * the role that is assigned
+ * (Required)
+ *
+ */
+ @SerializedName("role")
+ @Expose
+ public String role;
+ /**
+ * Tenant
+ *
+ * the tenant the role is associated with
+ * (Required)
+ *
+ */
+ @SerializedName("tenant")
+ @Expose
+ public String tenant;
+ /**
+ * User Id
+ *
+ * Unique id of the user
+ * (Required)
+ *
+ */
+ @SerializedName("user_id")
+ @Expose
+ public String userId;
+ /**
+ * Role Id
+ *
+ * Unique id of the role
+ * (Required)
+ *
+ */
+ @SerializedName("role_id")
+ @Expose
+ public String roleId;
+ /**
+ * Tenant Id
+ *
+ * Unique id of the tenant
+ * (Required)
+ *
+ */
+ @SerializedName("tenant_id")
+ @Expose
+ public String tenantId;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the role assignment belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the role assignment belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the role assignment belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the role assignment was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public RoleAssignmentRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param role
+ * @param environmentId
+ * @param roleId
+ * @param tenantId
+ * @param id
+ * @param user
+ * @param userId
+ * @param projectId
+ * @param tenant
+ */
+ public RoleAssignmentRead(String id, String user, String role, String tenant, String userId, String roleId, String tenantId, String organizationId, String projectId, String environmentId, Date createdAt) {
+ super();
+ this.id = id;
+ this.user = user;
+ this.role = role;
+ this.tenant = tenant;
+ this.userId = userId;
+ this.roleId = roleId;
+ this.tenantId = tenantId;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.createdAt = createdAt;
+ }
+
+ public RoleAssignmentRead withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ public RoleAssignmentRead withUser(String user) {
+ this.user = user;
+ return this;
+ }
+
+ public RoleAssignmentRead withRole(String role) {
+ this.role = role;
+ return this;
+ }
+
+ public RoleAssignmentRead withTenant(String tenant) {
+ this.tenant = tenant;
+ return this;
+ }
+
+ public RoleAssignmentRead withUserId(String userId) {
+ this.userId = userId;
+ return this;
+ }
+
+ public RoleAssignmentRead withRoleId(String roleId) {
+ this.roleId = roleId;
+ return this;
+ }
+
+ public RoleAssignmentRead withTenantId(String tenantId) {
+ this.tenantId = tenantId;
+ return this;
+ }
+
+ public RoleAssignmentRead withOrganizationId(String organizationId) {
+ this.organizationId = organizationId;
+ return this;
+ }
+
+ public RoleAssignmentRead withProjectId(String projectId) {
+ this.projectId = projectId;
+ return this;
+ }
+
+ public RoleAssignmentRead withEnvironmentId(String environmentId) {
+ this.environmentId = environmentId;
+ return this;
+ }
+
+ public RoleAssignmentRead withCreatedAt(Date createdAt) {
+ this.createdAt = createdAt;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/RoleAssignmentRemove.java b/src/main/java/io/permit/sdk/openapi/models/RoleAssignmentRemove.java
new file mode 100644
index 0000000..5391069
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/RoleAssignmentRemove.java
@@ -0,0 +1,84 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * RoleAssignmentRemove
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RoleAssignmentRemove {
+
+ /**
+ * Role
+ *
+ * the role that will be unassigned (accepts either the role id or the role key)
+ * (Required)
+ *
+ */
+ @SerializedName("role")
+ @Expose
+ public String role;
+ /**
+ * Tenant
+ *
+ * the tenant the role is associated with (accepts either the tenant id or the tenant key)
+ * (Required)
+ *
+ */
+ @SerializedName("tenant")
+ @Expose
+ public String tenant;
+ /**
+ * User
+ *
+ * the user the role will be unassigned from (accepts either the user id or the user key)
+ * (Required)
+ *
+ */
+ @SerializedName("user")
+ @Expose
+ public String user;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public RoleAssignmentRemove() {
+ }
+
+ /**
+ *
+ * @param role
+ * @param user
+ * @param tenant
+ */
+ public RoleAssignmentRemove(String role, String tenant, String user) {
+ super();
+ this.role = role;
+ this.tenant = tenant;
+ this.user = user;
+ }
+
+ public RoleAssignmentRemove withRole(String role) {
+ this.role = role;
+ return this;
+ }
+
+ public RoleAssignmentRemove withTenant(String tenant) {
+ this.tenant = tenant;
+ return this;
+ }
+
+ public RoleAssignmentRemove withUser(String user) {
+ this.user = user;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/RoleBlock.java b/src/main/java/io/permit/sdk/openapi/models/RoleBlock.java
new file mode 100644
index 0000000..4874668
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/RoleBlock.java
@@ -0,0 +1,62 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.List;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * RoleBlock
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RoleBlock {
+
+ /**
+ * Description
+ *
+ * optional description string explaining what this role represents, or what permissions are granted to it.
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Permissions
+ *
+ * list of action keys that define what actions this resource role is permitted to do
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ * list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
+ *
+ */
+ @SerializedName("extends")
+ @Expose
+ public List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RoleCreate {
+
+ /**
+ * Key
+ *
+ * A URL-friendly name of the role (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the role.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Name
+ *
+ * The name of the role
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * optional description string explaining what this role represents, or what permissions are granted to it.
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Permissions
+ *
+ * list of action keys that define what actions this resource role is permitted to do
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ * list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
+ *
+ */
+ @SerializedName("extends")
+ @Expose
+ public List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RoleRead {
+
+ /**
+ * Name
+ *
+ * The name of the role
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * optional description string explaining what this role represents, or what permissions are granted to it.
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Permissions
+ *
+ * list of action keys that define what actions this resource role is permitted to do
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ * list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
+ *
+ */
+ @SerializedName("extends")
+ @Expose
+ public List
+ * A URL-friendly name of the role (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the role.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public String key;
+ /**
+ * Id
+ *
+ * Unique id of the role
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the role belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the role belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the role belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the role was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the role was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public RoleRead() {
+ }
+
+ /**
+ *
+ * @param organizationId
+ * @param createdAt
+ * @param environmentId
+ * @param name
+ * @param id
+ * @param projectId
+ * @param key
+ * @param updatedAt
+ */
+ public RoleRead(String name, String key, String id, String organizationId, String projectId, String environmentId, Date createdAt, Date updatedAt) {
+ super();
+ this.name = name;
+ this.key = key;
+ this.id = id;
+ this.organizationId = organizationId;
+ this.projectId = projectId;
+ this.environmentId = environmentId;
+ this.createdAt = createdAt;
+ this.updatedAt = updatedAt;
+ }
+
+ public RoleRead withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public RoleRead withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ public RoleRead withPermissions(List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RoleUpdate {
+
+ /**
+ * Name
+ *
+ * The name of the role
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public String name;
+ /**
+ * Description
+ *
+ * optional description string explaining what this role represents, or what permissions are granted to it.
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public String description;
+ /**
+ * Permissions
+ *
+ * list of action keys that define what actions this resource role is permitted to do
+ *
+ */
+ @SerializedName("permissions")
+ @Expose
+ public List
+ * list of role keys that define what roles this role extends. In other words: this role will automatically inherit all the permissions of the given roles in this list.
+ *
+ */
+ @SerializedName("extends")
+ @Expose
+ public List
+ * Resource roles definition block, defines all the roles on the resource.
+ *
+ */
+@Generated("jsonschema2pojo")
+public class RolesBlock {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Settings.java b/src/main/java/io/permit/sdk/openapi/models/Settings.java
new file mode 100644
index 0000000..9c50d9a
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Settings.java
@@ -0,0 +1,17 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Settings {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Settings__1.java b/src/main/java/io/permit/sdk/openapi/models/Settings__1.java
new file mode 100644
index 0000000..f83a3cd
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Settings__1.java
@@ -0,0 +1,17 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Settings__1 {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Settings__2.java b/src/main/java/io/permit/sdk/openapi/models/Settings__2.java
new file mode 100644
index 0000000..d5586cf
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Settings__2.java
@@ -0,0 +1,17 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Settings__2 {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Settings__3.java b/src/main/java/io/permit/sdk/openapi/models/Settings__3.java
new file mode 100644
index 0000000..00ce996
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Settings__3.java
@@ -0,0 +1,17 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Settings__3 {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Settings__4.java b/src/main/java/io/permit/sdk/openapi/models/Settings__4.java
new file mode 100644
index 0000000..d06d611
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Settings__4.java
@@ -0,0 +1,17 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Settings__4 {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Settings__5.java b/src/main/java/io/permit/sdk/openapi/models/Settings__5.java
new file mode 100644
index 0000000..7da16b3
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Settings__5.java
@@ -0,0 +1,17 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Settings__5 {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Settings__6.java b/src/main/java/io/permit/sdk/openapi/models/Settings__6.java
new file mode 100644
index 0000000..6ba2e1d
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Settings__6.java
@@ -0,0 +1,17 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+
+
+/**
+ * Settings
+ *
+ * the settings for this project
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Settings__6 {
+
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Statistics.java b/src/main/java/io/permit/sdk/openapi/models/Statistics.java
new file mode 100644
index 0000000..c35903e
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Statistics.java
@@ -0,0 +1,135 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * Statistics
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Statistics {
+
+ /**
+ * Roles
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("roles")
+ @Expose
+ public Integer roles;
+ /**
+ * Users
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("users")
+ @Expose
+ public Integer users;
+ /**
+ * Policies
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("policies")
+ @Expose
+ public Integer policies;
+ /**
+ * Resources
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("resources")
+ @Expose
+ public Integer resources;
+ /**
+ * Tenants
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("tenants")
+ @Expose
+ public Integer tenants;
+ /**
+ * Has Decision Logs
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("has_decision_logs")
+ @Expose
+ public Boolean hasDecisionLogs;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Statistics() {
+ }
+
+ /**
+ *
+ * @param tenants
+ * @param roles
+ * @param policies
+ * @param resources
+ * @param hasDecisionLogs
+ * @param users
+ */
+ public Statistics(Integer roles, Integer users, Integer policies, Integer resources, Integer tenants, Boolean hasDecisionLogs) {
+ super();
+ this.roles = roles;
+ this.users = users;
+ this.policies = policies;
+ this.resources = resources;
+ this.tenants = tenants;
+ this.hasDecisionLogs = hasDecisionLogs;
+ }
+
+ public Statistics withRoles(Integer roles) {
+ this.roles = roles;
+ return this;
+ }
+
+ public Statistics withUsers(Integer users) {
+ this.users = users;
+ return this;
+ }
+
+ public Statistics withPolicies(Integer policies) {
+ this.policies = policies;
+ return this;
+ }
+
+ public Statistics withResources(Integer resources) {
+ this.resources = resources;
+ return this;
+ }
+
+ public Statistics withTenants(Integer tenants) {
+ this.tenants = tenants;
+ return this;
+ }
+
+ public Statistics withHasDecisionLogs(Boolean hasDecisionLogs) {
+ this.hasDecisionLogs = hasDecisionLogs;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/Statistics__1.java b/src/main/java/io/permit/sdk/openapi/models/Statistics__1.java
new file mode 100644
index 0000000..1e9af13
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/Statistics__1.java
@@ -0,0 +1,135 @@
+
+package io.permit.sdk.openapi.models;
+
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * Statistics
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class Statistics__1 {
+
+ /**
+ * Roles
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("roles")
+ @Expose
+ public Integer roles;
+ /**
+ * Users
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("users")
+ @Expose
+ public Integer users;
+ /**
+ * Policies
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("policies")
+ @Expose
+ public Integer policies;
+ /**
+ * Resources
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("resources")
+ @Expose
+ public Integer resources;
+ /**
+ * Tenants
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("tenants")
+ @Expose
+ public Integer tenants;
+ /**
+ * Has Decision Logs
+ *
+ *
+ * (Required)
+ *
+ */
+ @SerializedName("has_decision_logs")
+ @Expose
+ public Boolean hasDecisionLogs;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Statistics__1() {
+ }
+
+ /**
+ *
+ * @param tenants
+ * @param roles
+ * @param policies
+ * @param resources
+ * @param hasDecisionLogs
+ * @param users
+ */
+ public Statistics__1(Integer roles, Integer users, Integer policies, Integer resources, Integer tenants, Boolean hasDecisionLogs) {
+ super();
+ this.roles = roles;
+ this.users = users;
+ this.policies = policies;
+ this.resources = resources;
+ this.tenants = tenants;
+ this.hasDecisionLogs = hasDecisionLogs;
+ }
+
+ public Statistics__1 withRoles(Integer roles) {
+ this.roles = roles;
+ return this;
+ }
+
+ public Statistics__1 withUsers(Integer users) {
+ this.users = users;
+ return this;
+ }
+
+ public Statistics__1 withPolicies(Integer policies) {
+ this.policies = policies;
+ return this;
+ }
+
+ public Statistics__1 withResources(Integer resources) {
+ this.resources = resources;
+ return this;
+ }
+
+ public Statistics__1 withTenants(Integer tenants) {
+ this.tenants = tenants;
+ return this;
+ }
+
+ public Statistics__1 withHasDecisionLogs(Boolean hasDecisionLogs) {
+ this.hasDecisionLogs = hasDecisionLogs;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/TenantCreate.java b/src/main/java/io/permit/sdk/openapi/models/TenantCreate.java
new file mode 100644
index 0000000..f8667fe
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/TenantCreate.java
@@ -0,0 +1,96 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.HashMap;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * TenantCreate
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class TenantCreate {
+
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify the tenant. The tenant key must be url-friendly (slugified).
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Name
+ *
+ * A descriptive name for the tenant
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the tenant
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Attributes
+ *
+ * Arbitraty tenant attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class TenantRead {
+
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify the tenant. The tenant key must be url-friendly (slugified).
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Id
+ *
+ * Unique id of the tenant
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public java.lang.String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the tenant belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public java.lang.String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the tenant belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public java.lang.String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the tenant belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public java.lang.String environmentId;
+ /**
+ * Created At
+ *
+ * Date and time when the tenant was created (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("created_at")
+ @Expose
+ public Date createdAt;
+ /**
+ * Updated At
+ *
+ * Date and time when the tenant was last updated/modified (ISO_8601 format).
+ * (Required)
+ *
+ */
+ @SerializedName("updated_at")
+ @Expose
+ public Date updatedAt;
+ /**
+ * Last Action At
+ *
+ * Date and time when the tenant was last active (ISO_8601 format). In other words, this is the last time a permission check was done on a resource belonging to this tenant.
+ * (Required)
+ *
+ */
+ @SerializedName("last_action_at")
+ @Expose
+ public Date lastActionAt;
+ /**
+ * Name
+ *
+ * A descriptive name for the tenant
+ * (Required)
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the tenant
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Attributes
+ *
+ * Arbitraty tenant attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class TenantUpdate {
+
+ /**
+ * Name
+ *
+ * A descriptive name for the tenant
+ *
+ */
+ @SerializedName("name")
+ @Expose
+ public java.lang.String name;
+ /**
+ * Description
+ *
+ * an optional longer description of the tenant
+ *
+ */
+ @SerializedName("description")
+ @Expose
+ public java.lang.String description;
+ /**
+ * Attributes
+ *
+ * Arbitraty tenant attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class UserCreate {
+
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify the user for permission checks.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Email
+ *
+ * The email of the user. If synced, will be unique inside the environment.
+ *
+ */
+ @SerializedName("email")
+ @Expose
+ public java.lang.String email;
+ /**
+ * First Name
+ *
+ * First name of the user.
+ *
+ */
+ @SerializedName("first_name")
+ @Expose
+ public java.lang.String firstName;
+ /**
+ * Last Name
+ *
+ * Last name of the user.
+ *
+ */
+ @SerializedName("last_name")
+ @Expose
+ public java.lang.String lastName;
+ /**
+ * Attributes
+ *
+ * Arbitrary user attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class UserInTenant {
+
+ /**
+ * Tenant
+ *
+ * The tenant key which the user is associated with
+ * (Required)
+ *
+ */
+ @SerializedName("tenant")
+ @Expose
+ public String tenant;
+ /**
+ * Roles
+ *
+ * List of roles assigned to the user in that tenant
+ * (Required)
+ *
+ */
+ @SerializedName("roles")
+ @Expose
+ public List
+ * Whether the user has signed in or not
+ * (Required)
+ *
+ */
+ @SerializedName("status")
+ @Expose
+ public UserInTenant.UserStatus status;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public UserInTenant() {
+ }
+
+ /**
+ *
+ * @param roles
+ * @param tenant
+ * @param status
+ */
+ public UserInTenant(String tenant, List
+ * Whether the user has signed in or not
+ *
+ */
+ @Generated("jsonschema2pojo")
+ public enum UserStatus {
+
+ @SerializedName("active")
+ ACTIVE("active"),
+ @SerializedName("pending")
+ PENDING("pending");
+ private final String value;
+ private final static Map
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class UserInTenant__1 {
+
+ /**
+ * Tenant
+ *
+ * The tenant key which the user is associated with
+ * (Required)
+ *
+ */
+ @SerializedName("tenant")
+ @Expose
+ public String tenant;
+ /**
+ * Roles
+ *
+ * List of roles assigned to the user in that tenant
+ * (Required)
+ *
+ */
+ @SerializedName("roles")
+ @Expose
+ public List
+ * Whether the user has signed in or not
+ * (Required)
+ *
+ */
+ @SerializedName("status")
+ @Expose
+ public io.permit.sdk.openapi.models.UserInTenant.UserStatus status;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public UserInTenant__1() {
+ }
+
+ /**
+ *
+ * @param roles
+ * @param tenant
+ * @param status
+ */
+ public UserInTenant__1(String tenant, List
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class UserLoginRequestInput {
+
+ /**
+ * User Id
+ *
+ * ID or key of the user for whom to generate a token
+ * (Required)
+ *
+ */
+ @SerializedName("user_id")
+ @Expose
+ public String userId;
+ /**
+ * Tenant Id
+ *
+ * ID or key of the tenant to which access is requested
+ * (Required)
+ *
+ */
+ @SerializedName("tenant_id")
+ @Expose
+ public String tenantId;
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public UserLoginRequestInput() {
+ }
+
+ /**
+ *
+ * @param tenantId
+ * @param userId
+ */
+ public UserLoginRequestInput(String userId, String tenantId) {
+ super();
+ this.userId = userId;
+ this.tenantId = tenantId;
+ }
+
+ public UserLoginRequestInput withUserId(String userId) {
+ this.userId = userId;
+ return this;
+ }
+
+ public UserLoginRequestInput withTenantId(String tenantId) {
+ this.tenantId = tenantId;
+ return this;
+ }
+
+}
diff --git a/src/main/java/io/permit/sdk/openapi/models/UserRead.java b/src/main/java/io/permit/sdk/openapi/models/UserRead.java
new file mode 100644
index 0000000..bbaba4c
--- /dev/null
+++ b/src/main/java/io/permit/sdk/openapi/models/UserRead.java
@@ -0,0 +1,204 @@
+
+package io.permit.sdk.openapi.models;
+
+import java.util.HashMap;
+import java.util.List;
+import javax.annotation.processing.Generated;
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+
+/**
+ * UserRead
+ *
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class UserRead {
+
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify the user for permission checks.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Id
+ *
+ * Unique id of the user
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public java.lang.String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the user belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public java.lang.String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the user belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public java.lang.String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the user belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public java.lang.String environmentId;
+ /**
+ * Associated Tenants
+ *
+ *
+ *
+ */
+ @SerializedName("associated_tenants")
+ @Expose
+ public List
+ *
+ *
+ */
+ @SerializedName("roles")
+ @Expose
+ public List
+ * The email of the user. If synced, will be unique inside the environment.
+ *
+ */
+ @SerializedName("email")
+ @Expose
+ public java.lang.String email;
+ /**
+ * First Name
+ *
+ * First name of the user.
+ *
+ */
+ @SerializedName("first_name")
+ @Expose
+ public java.lang.String firstName;
+ /**
+ * Last Name
+ *
+ * Last name of the user.
+ *
+ */
+ @SerializedName("last_name")
+ @Expose
+ public java.lang.String lastName;
+ /**
+ * Attributes
+ *
+ * Arbitrary user attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap
+ *
+ *
+ */
+@Generated("jsonschema2pojo")
+public class UserRead__1 {
+
+ /**
+ * Key
+ *
+ * A unique id by which Permit will identify the user for permission checks.
+ * (Required)
+ *
+ */
+ @SerializedName("key")
+ @Expose
+ public java.lang.String key;
+ /**
+ * Id
+ *
+ * Unique id of the user
+ * (Required)
+ *
+ */
+ @SerializedName("id")
+ @Expose
+ public java.lang.String id;
+ /**
+ * Organization Id
+ *
+ * Unique id of the organization that the user belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("organization_id")
+ @Expose
+ public java.lang.String organizationId;
+ /**
+ * Project Id
+ *
+ * Unique id of the project that the user belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("project_id")
+ @Expose
+ public java.lang.String projectId;
+ /**
+ * Environment Id
+ *
+ * Unique id of the environment that the user belongs to.
+ * (Required)
+ *
+ */
+ @SerializedName("environment_id")
+ @Expose
+ public java.lang.String environmentId;
+ /**
+ * Associated Tenants
+ *
+ *
+ *
+ */
+ @SerializedName("associated_tenants")
+ @Expose
+ public List
+ *
+ *
+ */
+ @SerializedName("roles")
+ @Expose
+ public List
+ * The email of the user. If synced, will be unique inside the environment.
+ *
+ */
+ @SerializedName("email")
+ @Expose
+ public java.lang.String email;
+ /**
+ * First Name
+ *
+ * First name of the user.
+ *
+ */
+ @SerializedName("first_name")
+ @Expose
+ public java.lang.String firstName;
+ /**
+ * Last Name
+ *
+ * Last name of the user.
+ *
+ */
+ @SerializedName("last_name")
+ @Expose
+ public java.lang.String lastName;
+ /**
+ * Attributes
+ *
+ * Arbitrary user attributes that will be used to enforce attribute-based access control policies.
+ *
+ */
+ @SerializedName("attributes")
+ @Expose
+ public HashMap