diff --git a/CHANGELOG.md b/CHANGELOG.md
index d902d71..849ca0e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,60 @@
# Changelog
+## v0.3.0
+
+### [0.3.0](https://github.com/openfga/dotnet-sdk/compare/v0.2.5...v0.3.0) (2023-12-20)
+- feat!: initial support for conditions
+- feat!: allow overriding storeId per request (#33)
+- feat: support specifying a port and path for the API (You can now set the `ApiUrl` to something like: `https://api.fga.exampleL8080/some_path`)
+- feat: validate that store id and auth model id in ulid format (#23)
+- fix: exception when using the same configuration with multiple clients (#26)
+- fix: `OpenFgaClient.ReadLatestAuthorizationModel` can now return a null if no model has ever been created in that store
+- fix: `OpenFgaClient.Read` and `OpenFgaClient.ReadChanges` now allow a null body
+- chore!: use latest API interfaces
+- chore: dependency updates
+
+BREAKING CHANGES:
+Note: This release comes with substantial breaking changes, especially to the interfaces due to the protobuf changes in the last release.
+
+While the http interfaces did not break (you can still use `v0.2.5` SDK with a `v1.3.8+` server),
+the grpc interface did and this caused a few changes in the interfaces of the SDK.
+
+If you are using `OpenFgaClient`, the changes required should be smaller, if you are using `OpenFgaApi` a bit more changes will be needed.
+
+You will have to modify some parts of your code, but we hope this will be to the better as a lot of the parameters are now correctly marked as required,
+and so the Pointer-to-String conversion is no longer needed.
+
+Some of the changes to expect:
+
+- When initializing a client, please use `ApiUrl`. The separate `ApiScheme` and `ApiHost` fields have been deprecated
+```csharp
+var configuration = new ClientConfiguration() {
+ ApiUrl = Environment.GetEnvironmentVariable("FGA_API_URL"), // required, e.g. https://api.fga.example
+ StoreId = Environment.GetEnvironmentVariable("FGA_STORE_ID"), // not needed when calling `CreateStore` or `ListStores`
+ AuthorizationModelId = Environment.GetEnvironmentVariable("FGA_AUTHORIZATION_MODEL_ID"), // Optional, can be overridden per request
+};
+var fgaClient = new OpenFgaClient(configuration);
+```
+- `OpenFgaApi` now requires `storeId` as first param when needed
+- `Configuration` no longer accepts `storeId` (`ClientConfiguration` is not affected)
+- The following request interfaces changed:
+ - `CheckRequest`: the `TupleKey` field is now of interface `CheckRequestTupleKey`, you can also now pass in `Context`
+ - `ExpandRequest`: the `TupleKey` field is now of interface `ExpandRequestTupleKey`
+ - `ReadRequest`: the `TupleKey` field is now of interface `ReadRequestTupleKey`
+ - `WriteRequest`: now takes `WriteRequestWrites` and `WriteRequestDeletes`, the latter of which accepts `TupleKeyWithoutCondition`
+ - And more
+- The following interfaces had fields that were pointers are are now the direct value:
+ - `CreateStoreResponse`
+ - `GetStoreResponse`
+ - `ListStoresResponse`
+ - `ListObjectsResponse`
+ - `ReadChangesResponse`
+ - `ReadResponse`
+ - `AuthorizationModel`
+ - And more
+
+Take a look at https://github.com/openfga/dotnet-sdk/commit/fa43463ded102df3f660bae6d741e1a8c1dea090 for more model changes.
+
## v0.2.5
### [0.2.5](https://github.com/openfga/dotnet-sdk/compare/v0.2.4...v0.2.5) (2023-12-01)
diff --git a/src/OpenFga.Sdk/Configuration/Configuration.cs b/src/OpenFga.Sdk/Configuration/Configuration.cs
index da9b40a..e01fc99 100644
--- a/src/OpenFga.Sdk/Configuration/Configuration.cs
+++ b/src/OpenFga.Sdk/Configuration/Configuration.cs
@@ -56,9 +56,9 @@ public void IsValid() {
/// Version of the package.
///
/// Version of the package.
- public const string Version = "0.2.5";
+ public const string Version = "0.3.0";
- private const string DefaultUserAgent = "openfga-sdk dotnet/0.2.5";
+ private const string DefaultUserAgent = "openfga-sdk dotnet/0.3.0";
#endregion Constants
diff --git a/src/OpenFga.Sdk/OpenFga.Sdk.csproj b/src/OpenFga.Sdk/OpenFga.Sdk.csproj
index b7053af..cdd282e 100644
--- a/src/OpenFga.Sdk/OpenFga.Sdk.csproj
+++ b/src/OpenFga.Sdk/OpenFga.Sdk.csproj
@@ -12,7 +12,7 @@
.NET SDK for OpenFGA
OpenFGA
OpenFga.Sdk
- 0.2.5
+ 0.3.0
bin\$(Configuration)\$(TargetFramework)\OpenFga.Sdk.xml
Apache-2.0
README.md