Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion src/Keycloak.Net.Core/Models/Groups/Group.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,14 @@ public class Group
public string Id { get; set; }
[JsonPropertyName("name")]
public string Name { get; set; }
[JsonPropertyName("description")]
public string Description { get; set; }
[JsonPropertyName("path")]
public string Path { get; set; }
[JsonPropertyName("parentId")]
public string ParentId { get; set; }
[JsonPropertyName("subGroupCount")]
public long? SubGroupCount { get; set; }
[JsonPropertyName("subGroups")]
public IEnumerable<Group> Subgroups { get; set; }
[JsonPropertyName("realmRoles")]
Expand All @@ -16,4 +22,6 @@ public class Group
public IDictionary<string, IEnumerable<string>> ClientRoles { get; set; }
[JsonPropertyName("attributes")]
public IDictionary<string, IEnumerable<string>> Attributes { get; set; }
}
[JsonPropertyName("access")]
public IDictionary<string, bool> Access { get; set; }
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ public class IdentityProvider
{
[JsonPropertyName("alias")]
public string Alias { get; set; }
[JsonPropertyName("displayName")]
public string? DisplayName { get; set; }
[JsonPropertyName("internalId")]
public string InternalId { get; set; }
[JsonPropertyName("providerId")]
Expand All @@ -22,8 +24,18 @@ public class IdentityProvider
public bool? AuthenticateByDefault { get; set; }
[JsonPropertyName("linkOnly")]
public bool? LinkOnly { get; set; }
[JsonPropertyName("hideOnLogin")]
public bool? HideOnLogin { get; set; }
[JsonPropertyName("firstBrokerLoginFlowAlias")]
public string FirstBrokerLoginFlowAlias { get; set; }
[JsonPropertyName("postBrokerLoginFlowAlias")]
public string? PostBrokerLoginFlowAlias { get; set; }
[JsonPropertyName("organizationId")]
public string? OrganizationId { get; set; }
[JsonPropertyName("config")]
public Config Config { get; set; }
}
[JsonPropertyName("types")]
public IEnumerable<string>? Types { get; set; }
[JsonPropertyName("updateProfileFirstLogin")]
public bool? UpdateProfileFirstLogin { get; set; }
}
6 changes: 5 additions & 1 deletion src/Keycloak.Net.Core/Models/Organizations/Organization.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using Keycloak.Net.Core.Models.Organizations;
using Keycloak.Net.Models.Groups;
using Keycloak.Net.Models.IdentityProviders;

namespace Keycloak.Net.Models.Organizations;
Expand Down Expand Up @@ -34,4 +35,7 @@ public class Organization

[JsonPropertyName("identityProviders")]
public IEnumerable<IdentityProvider>? IdentityProviders { get; set; }
}

[JsonPropertyName("groups")]
public IEnumerable<Group>? Groups { get; set; }
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
namespace Keycloak.Net.Models.Organizations;

public class OrganizationInvitation
{
[JsonPropertyName("id")]
public string? Id { get; set; }

[JsonPropertyName("organizationId")]
public string? OrganizationId { get; set; }

[JsonPropertyName("email")]
public string? Email { get; set; }

[JsonPropertyName("firstName")]
public string? FirstName { get; set; }

[JsonPropertyName("lastName")]
public string? LastName { get; set; }

[JsonPropertyName("sentDate")]
public int? SentDate { get; set; }

[JsonPropertyName("expiresAt")]
public int? ExpiresAt { get; set; }

[JsonPropertyName("status")]
public string? Status { get; set; }

[JsonPropertyName("inviteLink")]
public string? InviteLink { get; set; }
}
13 changes: 13 additions & 0 deletions src/Keycloak.Net.Core/Models/Users/SocialLink.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
namespace Keycloak.Net.Models.Users;

public class SocialLink
{
[JsonPropertyName("socialProvider")]
public string? SocialProvider { get; set; }

[JsonPropertyName("socialUserId")]
public string? SocialUserId { get; set; }

[JsonPropertyName("socialUsername")]
public string? SocialUsername { get; set; }
}
8 changes: 7 additions & 1 deletion src/Keycloak.Net.Core/Models/Users/User.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ public class User
public UserAccess Access { get; set; }
[JsonPropertyName("attributes")]
public Dictionary<string, IEnumerable<string>> Attributes { get; set; }
[JsonPropertyName("userProfileMetadata")]
public UserProfileMetadata? UserProfileMetadata { get; set; }
[JsonPropertyName("clientConsents")]
public IEnumerable<UserConsent> ClientConsents { get; set; }
[JsonPropertyName("clientRoles")]
Expand All @@ -42,6 +44,10 @@ public class User
public string FederationLink { get; set; }
[JsonPropertyName("groups")]
public IEnumerable<string> Groups { get; set; }
[JsonPropertyName("applicationRoles")]
public IDictionary<string, IEnumerable<string>>? ApplicationRoles { get; set; }
[JsonPropertyName("socialLinks")]
public IEnumerable<SocialLink>? SocialLinks { get; set; }
[JsonPropertyName("origin")]
public string Origin { get; set; }
[JsonPropertyName("realmRoles")]
Expand All @@ -50,4 +56,4 @@ public class User
public string Self { get; set; }
[JsonPropertyName("serviceAccountClientId")]
public string ServiceAccountClientId { get; set; }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
namespace Keycloak.Net.Models.Users;

public class UserProfileAttributeGroupMetadata
{
[JsonPropertyName("name")]
public string? Name { get; set; }

[JsonPropertyName("displayHeader")]
public string? DisplayHeader { get; set; }

[JsonPropertyName("displayDescription")]
public string? DisplayDescription { get; set; }

[JsonPropertyName("annotations")]
public IDictionary<string, object>? Annotations { get; set; }
}
31 changes: 31 additions & 0 deletions src/Keycloak.Net.Core/Models/Users/UserProfileAttributeMetadata.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
namespace Keycloak.Net.Models.Users;

public class UserProfileAttributeMetadata
{
[JsonPropertyName("name")]
public string? Name { get; set; }

[JsonPropertyName("displayName")]
public string? DisplayName { get; set; }

[JsonPropertyName("required")]
public bool? Required { get; set; }

[JsonPropertyName("readOnly")]
public bool? ReadOnly { get; set; }

[JsonPropertyName("annotations")]
public IDictionary<string, object>? Annotations { get; set; }

[JsonPropertyName("validators")]
public IDictionary<string, IDictionary<string, object>>? Validators { get; set; }

[JsonPropertyName("group")]
public string? Group { get; set; }

[JsonPropertyName("multivalued")]
public bool? Multivalued { get; set; }

[JsonPropertyName("defaultValue")]
public string? DefaultValue { get; set; }
}
10 changes: 10 additions & 0 deletions src/Keycloak.Net.Core/Models/Users/UserProfileMetadata.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
namespace Keycloak.Net.Models.Users;

public class UserProfileMetadata
{
[JsonPropertyName("attributes")]
public IEnumerable<UserProfileAttributeMetadata>? Attributes { get; set; }

[JsonPropertyName("groups")]
public IEnumerable<UserProfileAttributeGroupMetadata>? Groups { get; set; }
}
Loading